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

Пример макроса для куска кода из другой операции

 
Ответить на тему    Клуб специалистов ЦФТ-Банк (IBSO) -> Уроки ЦФТ-Банк для начинающих
Предыдущая тема :: Следующая тема  
Автор Сообщение
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;
Показать сообщения:   
Ответить на тему    Клуб специалистов ЦФТ-Банк (IBSO) -> Уроки ЦФТ-Банк для начинающих Часовой пояс: GMT + 3
Страница 1 из 1

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