Задача: при переходе на определенный экран в таске ставить курсов в поле "Страна".
По умолчанию, при отображении апплета Siebel не ставит курсор ни в одно поле пока пользователь не тыкнет мышью в область апплета.
Чтобы установить курсор ввода в конкретное поле, нам понадобиться написать небольшой браузерный скрипт.
По умолчанию, при отображении апплета Siebel не ставит курсор ни в одно поле пока пользователь не тыкнет мышью в область апплета.
Чтобы установить курсор ввода в конкретное поле, нам понадобиться написать небольшой браузерный скрипт.
var oApplet; //тут будет храниться инстанс текущего апплета
var bFocus; //признак того что фокус уже проставлен
//стандартное событие на апплете
function Applet_Load ()
{
oApplet=this; //не для этого скрипта, но все равно пусть будет
bFocus=false;//отмечаем, что фокус еще не установлен
//проверка, что данный апплет находится на интересующем нас экране:
if (theApplication().ActiveViewName()=="JET Contact Input 2 Task View Test 2")
{
setTimeout ("DoSetFocus()", 100); //запустить в фоновом режиме установку фокуса
}
}
function DoSetFocus()
{
//ищем наш апплет на странице:
var appFocus = theApplication().FindApplet("JET Contact Entry Task Form Applet");
//ищем контрол, в который будет проставлен фокус:
var objControl = appFocus.FindActiveXControl("Addr Country");
//простой или сложный контрол:
if (objControl.canHaveHTML == false) {
objControl.focus(); //установить фокус
}
else {
objFocus = objControl.getElementsByTagName("Input");//получить поля ввода
objFocus = objFocus[0];//получить первое поле ввода
objFocus.focus();//установить фокус
}
if (bFocus==false) //если фокус не проставлен, повторить процедуру
{
setTimeout ("DoSetFocus()", 100);//рекурсия
}
}
function Edit__0__Control__Addr_SCountry__onfocus (applet, id)
{//это стандартный эвент на контроле
bFocus=true;//отмечаем, что фокус был проставлен
}
Как вариант:
ОтветитьУдалитьApplet User Property DefaultFocus
http://siebel-essentials.blogspot.ru/2008/12/using-defaultfocus-applet-user-property.html
+ View User Property DefaultAppletFocus
В TASK UI (Applet User Property DefaultFocus + View User Property DefaultAppletFocus) не прокатывает, видимо потому, что на экране две вьюхи
ОтветитьУдалить