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

Вызов операции с заполнением полей формы из другой операции

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


Вступление в Клуб: 08.09.2014
СообщениеПн Сен 08, 2014 09:02   Вызов операции с заполнением полей формы из другой операции Ответить с цитатой
Полезность: Нет оценки
Здравствуйте, подскажите как можно реализовать:

1) Вызов операции(а) из другой операции(б) с заполнением полей формы операции(а)
2) после дозаполнения формы пользователем операции(а) и нажатию "Ок" получить ID созданого экземпляра операцией(а) в операции(б) (необходимо в операции(б) сохранить ID из операции(а))

Тип операции(а) - Конструктор
prog
Эксперт


Вступление в Клуб: 03.03.2008
СообщениеПн Сен 08, 2014 09:41    Ответить с цитатой
Полезность: 1
в клиент-скрипте
Код:
if Form1.ScriptPlayEx("<% PLPCALL %VAR%.V_UPLOAD_OK := %THIS%.[UPLOAD_FILE]() %>") = 0 then
      Check1.Value = 0
   end if
prog
Эксперт


Вступление в Клуб: 03.03.2008
СообщениеПн Сен 08, 2014 09:43    Ответить с цитатой
Полезность: 1
пример на pl+
Код:
stdio.put_line_buf('<% PLPCALL %THIS%.[BASE_PAY](%PARAM%.P_BEG_DATE => P_BEG_DATE, %PARAM%.P_END_DATE => P_END_DATE) %>');
vtar
Эксперт


Вступление в Клуб: 20.03.2009
СообщениеПн Сен 08, 2014 09:45    Ответить с цитатой
Полезность: 1
можно сделать расширение

вызывать конструктор и получать ID или в теле

Код:

x number;
begin
   &BASE$SETVARS;
   x:= &BASE$EXECUTE;
end;



или в проверке, там же где заполнять поля-переменные




Код:

x number;
begin
   &BASE$SETVARS;
   &BASE$VALIDATE;
   
   if p_message = 'VALIDATE' then
   
      
   
      if p_info = 'OK' then
         x:= &BASE$EXECUTE;
      end if;
      
      if p_info='%VAR%.V1' then
         V1 := '12345';
      end if;
   
   end if;
   
   &BASE$GETVARS;
end;

prankster
Профи


Вступление в Клуб: 22.08.2014
СообщениеПн Сен 08, 2014 09:47   Re: Вызов операции с заполнением полей формы из другой опера Ответить с цитатой
Полезность: 1
serejaz пишет:
Здравствуйте, подскажите как можно реализовать:

1) Вызов операции(а) из другой операции(б) с заполнением полей формы операции(а)
2) после дозаполнения формы пользователем операции(а) и нажатию "Ок" получить ID созданого экземпляра операцией(а) в операции(б) (необходимо в операции(б) сохранить ID из операции(а))

Тип операции(а) - Конструктор


Код:

stdio.put_line_buf("<% PLPCALL %VAR%.V_REF := [ИМЯ_ТБП].[NEW_AUTO](%PARAM%.P_PAR1 => '''||v_par1||''', %PARAM%.P_PAR2 => '''||v_par2||'''...) %>")');


Как-то так, на вкладке "Дополнительные свойства" операции галочка "Выводит команды в буффер сессии".

ИМЯ_ТБП - короткое наименование ТБП вызываемой операции-конструктора;
P_PAR1, P_PAR2, ... - короткие наименования параметров вызываемой операции (которые надо заполнить по умолчанию на форме конструктора);
v_par1, v_par2, ... - значения, которыми надо заполнить параметры (могут быть объявлены где угодно, но доступными в блоке вызова конструктора, проинициализированы до вызова операции - конструктора).
%VAR%.V_REF - объявить на вкладке "переменные", тип = тип возвращаемого значения (ссылка на ТБП).

Похожая тема http://cftclub.ru/viewtopic.php?t=2623&highlight=plpcall
Показать сообщения:   
Ответить на тему    Клуб специалистов ЦФТ-Банк (IBSO) -> Справочник PL/PLUS: Функции, примеры, приёмы Часовой пояс: GMT + 3
Страница 1 из 1

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