Пример макроса для куска кода из другой операции
|
Предыдущая тема :: Следующая тема |
Автор |
Сообщение |
yaro4plp Участник
Вступление в Клуб: 03.10.2024
|
Сб Окт 19, 2024 16:49  Пример макроса для куска кода из другой операции |
|
Полезность: Нет оценки
|
Добрый день!
Как сделать макрос для подстановки фрагмента кода из другой операции в plp-исходнике текущей? |
|
 |
Эмиралька Эксперт
Вступление в Клуб: 09.11.2015
|
Вс Окт 20, 2024 00:32  Re: Пример макроса для куска кода из другой операции |
|
Полезность: 1
|
yaro4plp пишет: | Добрый день!
Как сделать макрос для подстановки фрагмента кода из другой операции в plp-исходнике текущей? |
В одной операции объявляешь макрос public
в другой подключаешь макросы той, первой, через pragma include |
|
 |
yaro4plp Участник
Вступление в Клуб: 03.10.2024
|
Вс Окт 20, 2024 08:55  Re: Пример макроса для куска кода из другой операции |
|
Полезность: Нет оценки
|
Эмиралька пишет: | yaro4plp пишет: | Добрый день!
Как сделать макрос для подстановки фрагмента кода из другой операции в plp-исходнике текущей? |
В одной операции объявляешь макрос public
в другой подключаешь макросы той, первой, через pragma include |
Спасибо! |
|
 |
yaro4plp Участник
Вступление в Клуб: 03.10.2024
|
Пн Окт 21, 2024 22:18  Re: Пример макроса для куска кода из другой операции |
|
Полезность: Нет оценки
|
yaro4plp пишет: | Эмиралька пишет: | yaro4plp пишет: | Добрый день!
Как сделать макрос для подстановки фрагмента кода из другой операции в plp-исходнике текущей? |
В одной операции объявляешь макрос public
в другой подключаешь макросы той, первой, через pragma include |
Спасибо! |
Использовал встроенные макросы для запуска валидатора и исполняющего блока предка с параметрами и глобальными переменными текущей операции-потомка:
Код: | validate is
v_this ref [TBP_NAME];
begin
if this is not null then
&BASE$SETVARS; --> передача значений текущих глобальных переменных в операцию-предка
&BASE$VALIDATE(v_this); --> запуск валидатора-предка с текущими параметрами
&BASE$GETVARS; --> получение значений глобальных переменных после действий валидатора
--
/*
здесь переопределение и дополнение логики предка
*/
end if;
end;
execute is
v_this ref [TBP_NAME];
begin
if this is not null then
v_this := this;
&BASE$SETVARS;
v_this := &BASE$EXECUTE(v_this); --> запуск исполняющего блока предка с текущими значениями глобальных переменных и параметрами
end if;
end; |
|
|
 |
|
|
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете голосовать в опросах
|
|