Предыдущая тема :: Следующая тема |
Автор |
Сообщение |
Alkov Профи
Вступление в Клуб: 23.09.2010
|
Чт Сен 23, 2010 08:43  Закрыть форму и операцию из валидатора |
|
Полезность: Нет оценки
|
Здравствуйте !
Можно ли закрыть форму и операцию из валидатора или из клиент-скрипта ?
Call Form1.ScriptServerValidate( OK, Nothing) - не работает ( |
|
 |
kit83rd Участник со стажем
Вступление в Клуб: 05.02.2010
|
Пт Сен 24, 2010 02:54   |
|
Полезность: 1
|
Как вариант можно вызвать событие нажатие кнопки "ОТМЕНА"
Форма закроется.
Код: |
Form1.ScriptPostEvent Cancel, "CLICK"
|
|
|
 |
Alkov Профи
Вступление в Клуб: 23.09.2010
|
Пт Сен 24, 2010 03:02   |
|
Полезность: Нет оценки
|
Спасибо, помогло  |
|
 |
vek21 Участник со стажем
Вступление в Клуб: 20.09.2007
|
Вт Окт 26, 2010 08:54   |
|
Полезность: Нет оценки
|
...Но при этом, если на форме был какой-то ввод, обязательно появится окошко с вопросом "Выйти без сохранения изменений?" А можно ли как-то отменить задание этого вопроса, если точно известно, что "да, выйти"? |
|
 |
Random Эксперт
Вступление в Клуб: 27.06.2011
|
Ср Окт 05, 2011 06:38  Re: Закрыть форму и операцию из валидатора |
|
Полезность: Нет оценки
|
Alkov пишет: | Можно ли закрыть форму и операцию из валидатора или из клиент-скрипта ?
Call Form1.ScriptServerValidate( OK, Nothing) - не работает ( |
А при чем тут серверный валидатор-то?
Надо жать Ok на экранной форме (а не Cancel - чтоб вопросов глупых ЭФ не задавала)
Код: | Form1.ScriptPostEvent OK, "CLICK" |
|
|
 |
vtar Эксперт
Вступление в Клуб: 20.03.2009
|
Ср Окт 05, 2011 09:35  Re: Закрыть форму и операцию из валидатора |
|
Полезность: 1
|
Random пишет: | Надо жать Ok на экранной форме (а не Cancel - чтоб вопросов глупых ЭФ не задавала)
|
А можно я задам глупый вопрос ? Мне всегда казалось, что нажатие ОК ведет к последующему выполнению секции "тела" операции, а нажатие Cancel ведет к выходу из операции без выпллнения секции "тела". Вы обладаете знанием, какой вариант нужен ТС, или я чего то не вкурил ? |
|
 |
Random Эксперт
Вступление в Клуб: 27.06.2011
|
Ср Окт 05, 2011 18:41  Re: Закрыть форму и операцию из валидатора |
|
Полезность: Нет оценки
|
vtar пишет: | Random пишет: | Надо жать Ok на экранной форме (а не Cancel - чтоб вопросов глупых ЭФ не задавала)
|
А можно я задам глупый вопрос ? Мне всегда казалось, что нажатие ОК ведет к последующему выполнению секции "тела" операции, а нажатие Cancel ведет к выходу из операции без выпллнения секции "тела". Вы обладаете знанием, какой вариант нужен ТС, или я чего то не вкурил ? |
Ведет к выполнению тела, безусловно.
Однако перед этим а) можно установить какую-нить переменную, типа b$run_body_ignore := true;
б) вообще выкинуть тело, потому что
в) человек пишет пользовательский интерфейс, и, хотя этого явно не говорится, как правило, в таких операциях тело - несущественно.
г) только посредством нажатия ОК можно избавиться от вопроса "Сохранять изменения?"
д) пусть Alkov сам выбирает из предложенных вариантов - чем вариантов больше, тем лучше.
Спасибо за напоминание про выполнение тела - я как-то упустил этот момент. |
|
 |
Sith Участник
Вступление в Клуб: 15.12.2009
|
Пт Янв 20, 2012 09:43   |
|
Полезность: Нет оценки
|
А без выполнения тела ? И как быть если надо дёрнуть из расширения ? _________________ Another way, always another way. |
|
 |
Random Эксперт
Вступление в Клуб: 27.06.2011
|
Пт Янв 20, 2012 10:00   |
|
Полезность: Нет оценки
|
Sith пишет: | А без выполнения тела ? И как быть если надо дёрнуть из расширения ? |
Что-то я не понимаю насчет "без выполнения тела".
Чего сделать-то надо? |
|
 |
Sith Участник
Вступление в Клуб: 15.12.2009
|
Пт Янв 20, 2012 10:58   |
|
Полезность: Нет оценки
|
Ну закрыть операцию из клиентскрипта расширения не выполнив тела _________________ Another way, always another way. |
|
 |
vtar Эксперт
Вступление в Клуб: 20.03.2009
|
Пт Янв 20, 2012 12:20   |
|
Полезность: Нет оценки
|
В клиент - скрипте расширения выполните
CALL frmNew_Dt.ScriptPostEvent(Cancel, "CLICK")
где frmNew_Dt - форма основной операции |
|
 |
Sith Участник
Вступление в Клуб: 15.12.2009
|
Пт Янв 20, 2012 13:44   |
|
Полезность: Нет оценки
|
это то всё понятно сразу , не до конца написал ... нужно чтобы это отрабатывала при нажатии OK
т.е в свойствах объекта кнопки нужно поменять значение system action
или перекрыть процедуру
OK_onclick _________________ Another way, always another way. |
|
 |
vtar Эксперт
Вступление в Клуб: 20.03.2009
|
Пт Янв 20, 2012 13:58   |
|
Полезность: Нет оценки
|
Ну в таком случае что мешает, к примеру сделать еще одну кнопку ОК, когда надо, делать реальный ОК скрытым а свой фейковый ОК видимым ? |
|
 |
Sith Участник
Вступление в Клуб: 15.12.2009
|
Пт Янв 20, 2012 14:09   |
|
Полезность: Нет оценки
|
скажу без подкола ... эта мысль тоже приходила в голову ... но не этично и не профессионально _________________ Another way, always another way. |
|
 |
Alexsey Эксперт
Вступление в Клуб: 06.09.2007
|
Пт Янв 20, 2012 15:00   |
|
Полезность: Нет оценки
|
Sith пишет: | скажу без подкола ... эта мысль тоже приходила в голову ... но не этично и не профессионально |
А что мешает написать код, который отработает после выполнения основной операции? это же элементарно.. пишем необходимые действия после макроса и вуаля. _________________ всегда есть как минимум 2 выхода |
|
 |
|