Предыдущая тема :: Следующая тема |
Автор |
Сообщение |
1q1 Участник
Вступление в Клуб: 23.12.2009
|
Ср Мар 31, 2010 11:44  Вызов клиент скрипт из тела |
|
Полезность: Нет оценки
|
В теле есть функция, от её выполнения зависет содержание формы.
В упрощённом варианте так:
Код: |
if a=b then
text3.visible = False --скрыть поле на форме
|
Подскажите, пожалуйста, как это реализовать? |
|
 |
ggrey Участник со стажем
Вступление в Клуб: 01.10.2007
|
Ср Мар 31, 2010 12:59   |
|
Полезность: 1
|
Посмотрите примеры использования пакета CSMD |
|
 |
zinovjeva_n Участник - экстремал
Вступление в Клуб: 15.10.2008
|
Ср Мар 31, 2010 12:59   |
|
Полезность: 1
|
csmd.command( V_VB, 'text3.visible = False'); _________________ Coding for food |
|
 |
1q1 Участник
Вступление в Клуб: 23.12.2009
|
Ср Мар 31, 2010 13:28   |
|
Полезность: Нет оценки
|
Спасибо!
Я придумал способ через скрытую переменную. В теле присваиваю ей True, а потом в клиент скрипте проверяю значение...
Но так конечно намного лучше.  |
|
 |
ГлСП Профи
Вступление в Клуб: 20.09.2007
|
Ср Мар 31, 2010 13:30   |
|
Полезность: Нет оценки
|
А ты загляни в библиотеку csmd, еще много нового узнаешь.  |
|
 |
1q1 Участник
Вступление в Клуб: 23.12.2009
|
Ср Мар 31, 2010 13:31   |
|
Полезность: Нет оценки
|
Уже изучаю)) |
|
 |
ГлСП Профи
Вступление в Клуб: 20.09.2007
|
Ср Мар 31, 2010 14:20   |
|
Полезность: 3
|
Вот на быструю руку накидал небольшую инструкцию
1. Установить проверку при смене контрола в режим "Сервер, Клиент"
2. Сделать переменную "V_VB" типа Строка_32000
3. разместить на форме эту переменную и скрыть, и обозвать V_VB
4. В клиент-скрипт прописать
Код: |
Public Function Main(LastControl)
Execute V_VB.Text
V_VB.Text = ""
Main = True 'Результат валидатора (True, False, NULL)
End Function
|
5. В проверке добавляется пара строчек для иницилизации скрипта управления формой
Код: |
If p_message = 'DEFAULT' Then
[CSMD].init_form(V_VB, &METHOD$CLASS, &METHOD$SNAME);
|
6. Для управления используется пакет csmd
Код: |
If this%state = 'FORM' Then
[csmd].show(V_VB, 'P_DOCUM');
Else
[csmd].hide(V_VB, 'P_DOCUM');
End If;
|
|
|
 |
ssa774 Профи
Вступление в Клуб: 30.11.2007
|
Чт Июн 17, 2010 13:30   |
|
Полезность: Нет оценки
|
А вот как избежать такой ситуации:
нажимаем на чекбокс, в обработчике вызывается pragma error(). и после этого курсор остается на этот же самом чекбоксе, куда ни ткни мышкой, все равно error получаем. как программно перекинуть на другой контрол?
вот так не помогает
Код: |
...
if p_info = 'чекбокс' then
if условие then
pragma error();
p_info := 'другой контрол';
end if;
end if;
...
|
|
|
 |
Volod Эксперт
Вступление в Клуб: 19.09.2007
|
Чт Июн 17, 2010 17:35   |
|
Полезность: 1
|
Через msgbox в клиент-скрипте. |
|
 |
ssa774 Профи
Вступление в Клуб: 30.11.2007
|
Пт Июн 18, 2010 06:34   |
|
Полезность: Нет оценки
|
А почему вот так происходит:
В параметрах операции есть P1, ставим его на форму, ставим ему свойство - проверка введенного значение. все работает, все нормально.
А если P1 находится не в параметрах, а в переменных операции, то нажатие на него при установленном свойстве проверка введенного значения сбрасывает его в null. Как только убрали проверку введенного значения, все нормально. Есть какая-то разница в работе с параметрами и переменными? |
|
 |
ssa774 Профи
Вступление в Клуб: 30.11.2007
|
Пт Июн 18, 2010 06:47   |
|
Полезность: Нет оценки
|
ssa774 пишет: | А почему вот так происходит:
В параметрах операции есть P1, ставим его на форму, ставим ему свойство - проверка введенного значение. все работает, все нормально.
А если P1 находится не в параметрах, а в переменных операции, то нажатие на него при установленном свойстве проверка введенного значения сбрасывает его в null. Как только убрали проверку введенного значения, все нормально. Есть какая-то разница в работе с параметрами и переменными? |
вопрос снят |
|
 |
|