CftClub.ru
Клуб специалистов ЦФТ-Банк

Завалидировать Параметр

 
Ответить на тему    Клуб специалистов ЦФТ-Банк (IBSO) -> Уроки ЦФТ-Банк для начинающих
Предыдущая тема :: Следующая тема  
Автор Сообщение
yaffil
Профи


Вступление в Клуб: 18.08.2011
СообщениеВт Сен 06, 2016 14:07   Завалидировать Параметр Ответить с цитатой
Полезность: Нет оценки
Как в блоке Проверки завалидировать (уход с неё контрола) параметр операции по имени?

Так не работает
Код:
      if P_INFO = '%PARAM%.P_MSG' then


Но если перенести P_MSG в переменные, то так работает
Код:
      if P_INFO = '%VAR%.P_MSG' then
prog
Эксперт


Вступление в Клуб: 03.03.2008
СообщениеВт Сен 06, 2016 14:46    Ответить с цитатой
Полезность: Нет оценки
Код:
if P_INFO = 'P_MSG' then
yaffil
Профи


Вступление в Клуб: 18.08.2011
СообщениеВт Сен 06, 2016 15:06    Ответить с цитатой
Полезность: Нет оценки
Так тоже пробовал - не работает. Может в Доп Свойствах надо что подёргать? Секцию проверки Сервер/клиент.
Никогда не знал для чего оно Smile
Матвеев Евгений
Профи


Вступление в Клуб: 31.01.2012
СообщениеВт Сен 06, 2016 15:25    Ответить с цитатой
Полезность: Нет оценки
Поставить "при смене элемента управления" "Клиент-Сервер"
Отловить событие в "Клиент-скрипт"
В VBA Help уточнить наименование соответствующего события

Код:

Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
  If TextBox1 = "" Then TextBox1 = "Введите значение"
End Sub

Там много чего можно отлавливать, помнится там реализовывали полноценную потоковую печать
OlegFB
Участник - экстремал


Вступление в Клуб: 11.07.2007
СообщениеВт Сен 06, 2016 15:32    Ответить с цитатой
Полезность: Нет оценки
yaffil пишет:
Так тоже пробовал - не работает. Может в Доп Свойствах надо что подёргать? Секцию проверки Сервер/клиент.
Никогда не знал для чего оно Smile


параметр Сервер/клиент установить в обоих контролах.
На экранной форме в списке элементов для данного элемента установить свойство CheckValidate=True

Всё
yaffil
Профи


Вступление в Клуб: 18.08.2011
СообщениеВт Сен 06, 2016 15:32    Ответить с цитатой
Полезность: Нет оценки
Матвеев Евгений пишет:
Поставить "при смене элемента управления" "Клиент-Сервер"
Отловить событие в "Клиент-скрипт"


А без клиент скрипта никак? Если перенести из параметров в "переменные" P_MSG же работает из секции проверки по коду P_INFO= ,без всякого клиент скрипта
Матвеев Евгений
Профи


Вступление в Клуб: 31.01.2012
СообщениеВт Сен 06, 2016 15:35    Ответить с цитатой
Полезность: Нет оценки
yaffil пишет:
Матвеев Евгений пишет:
Поставить "при смене элемента управления" "Клиент-Сервер"
Отловить событие в "Клиент-скрипт"


А без клиент скрипта никак? Если перенести из параметров в "переменные" P_MSG же работает из секции проверки по коду P_INFO= ,без всякого клиент скрипта


Без клиент скрипта я не встречал, ... но... можно в клиент скрипте флаг взводить, а потом в основной валидации по событию поднятия флага свою обработочку вставить...

Если интересно, могу в загашниках посмотреть как это делали...давно было, года полтора назад
yaffil
Профи


Вступление в Клуб: 18.08.2011
СообщениеВт Сен 06, 2016 15:43    Ответить с цитатой
Полезность: Нет оценки
OlegFB пишет:

параметр Сервер/клиент установить в обоих контролах.
На экранной форме в списке элементов для данного элемента установить свойство CheckValidate=True

Всё


Поставил, CheckValidate стоит
if P_INFO = '%PARAM%.P_MSG' then
и if P_INFO = 'P_MSG' then
и if P_INFO = P_MSG then

не отрабатывают
OlegFB
Участник - экстремал


Вступление в Клуб: 11.07.2007
СообщениеВт Сен 06, 2016 15:48    Ответить с цитатой
Полезность: Нет оценки
yaffil пишет:
OlegFB пишет:

параметр Сервер/клиент установить в обоих контролах.
На экранной форме в списке элементов для данного элемента установить свойство CheckValidate=True

Всё


Поставил, CheckValidate стоит
if P_INFO = '%PARAM%.P_MSG' then
и if P_INFO = 'P_MSG' then
и if P_INFO = P_MSG then

не отрабатывают


в навигатор не перезаходили? хотя бы выполните "Управление"-"Выгрузить операции и представления"

Любые изменнения внесённые в клиент-скрипт или в форме операции вы увидите только после выполнения описанной выше операции. Навигатор кэширует формы при первом их вызове и больше не перечитывает.
OlegFB
Участник - экстремал


Вступление в Клуб: 11.07.2007
СообщениеВт Сен 06, 2016 15:49    Ответить с цитатой
Полезность: 2
OlegFB пишет:
yaffil пишет:
OlegFB пишет:

параметр Сервер/клиент установить в обоих контролах.
На экранной форме в списке элементов для данного элемента установить свойство CheckValidate=True

Всё


Поставил, CheckValidate стоит
if P_INFO = '%PARAM%.P_MSG' then
и if P_INFO = 'P_MSG' then
и if P_INFO = P_MSG then

не отрабатывают


в навигатор не перезаходили? хотя бы выполните "Управление"-"Выгрузить операции и представления"

Любые изменнения внесённые в клиент-скрипт или в форме операции вы увидите только после выполнения описанной выше операции. Навигатор кэширует формы при первом их вызове и больше не перечитывает.


if P_INFO = 'P_MSG' then ---- этот вариант всяко должен заработать.
yaffil
Профи


Вступление в Клуб: 18.08.2011
СообщениеВт Сен 06, 2016 16:03    Ответить с цитатой
Полезность: Нет оценки
OlegFB пишет:

if P_INFO = 'P_MSG' then ---- этот вариант всяко должен заработать.


Спасибо, заработало.
yaffil
Профи


Вступление в Клуб: 18.08.2011
СообщениеВт Сен 06, 2016 17:08    Ответить с цитатой
Полезность: Нет оценки
Чтобы не плодить спрошу тут:

А как в varchar(32000) на ЭФ вставить Ентер.
Нажимаю Ентер - переход с контрола.
OlegFB
Участник - экстремал


Вступление в Клуб: 11.07.2007
СообщениеВт Сен 06, 2016 17:37    Ответить с цитатой
Полезность: Нет оценки
yaffil пишет:
Чтобы не плодить спрошу тут:

А как в varchar(32000) на ЭФ вставить Ентер.
Нажимаю Ентер - переход с контрола.


Лучше такое поле заводить как мемо.
Но, попробуйте комбинацию Alt+Enter, Ctrl+Enter
Эмиралька
Эксперт


Вступление в Клуб: 09.11.2015
СообщениеСр Сен 07, 2016 12:47    Ответить с цитатой
Полезность: Нет оценки
yaffil пишет:
OlegFB пишет:

if P_INFO = 'P_MSG' then ---- этот вариант всяко должен заработать.


Спасибо, заработало.

Лично мне всегда помогало вот это:
Код:
begin
debug_pipe('---',0);
debug_pipe(p_message,0);
debug_pipe(p_info,0);
end;
Эмиралька
Эксперт


Вступление в Клуб: 09.11.2015
СообщениеСр Сен 07, 2016 12:48    Ответить с цитатой
Полезность: Нет оценки
yaffil пишет:
Чтобы не плодить спрошу тут:

А как в varchar(32000) на ЭФ вставить Ентер.
Нажимаю Ентер - переход с контрола.


Встаёшь на контрол в редакторе форм, жмёшь F5, будет мемо.
В мемо ENTER работает.
Показать сообщения:   
Ответить на тему    Клуб специалистов ЦФТ-Банк (IBSO) -> Уроки ЦФТ-Банк для начинающих Часовой пояс: GMT + 3
Страница 1 из 1

 
Перейти:  
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Рейтинг@Mail.ru