SAS: условное завершение выполнения кода - PullRequest
1 голос
/ 12 марта 2019

Этот код будет частью процесса в SAS Data Integration Studio.

Я хочу добиться чего-то вроде:

%macro conditional_start();

%let check_condition = 0;

%if check_condition eq 0 %then %do;

    %send_email_that_condition_has_been_met(); /* this I have made */

    /*Below run some kind of built-in macro probably, to stop execution of the whole code below */


%end;

%mend;

/*More macros end code I don't want to execute*/

Я не могу упаковать все ниже в большом выражении "если", потому чтоони встроены в блоки.

Возможно ли это?

Заранее спасибо !!

1 Ответ

1 голос
/ 12 марта 2019

Вы пытались поместить свой код в разделы "precode" (оставить макрос открытым) и "postcode" (остаток макроса) в свойствах вашей работы?Например:

предварительный код:

%macro the_whole_job();

почтовый индекс:

%mend the_whole_job;

%macro conditional_start();
    %let check_condition = 0;
    %if check_condition eq 0 %then %do;
         %send_email_that_condition_has_been_met(); /* this You have made */
         /*do some kind of built-in macro meaning failure, not executing the whole code above*/
    %end;
    %else %do;
         %the_whole_job;
    %end; 
%mend;
...