Leandro, Entendi seu problema e montei uma query que vai receber as tabelas "email" e "produto" conforme você criou no início deste tópico. Elas poderão conter o número de setores / produtos / e-mails que forem, mas o SAS se encarregará de fazer os disparos pra cada uma das combinações. Segue: /*************************************************************************/ /*Cria contagem de e-mails a serem disparados*/ data work.email_enviar; retain INDEX; set work.email; INDEX = _N_; run; /*************************************************************************/ /*Conta quantos e-mails serão disparados*/ proc sql noprint; select max(INDEX) into :MAX from work.email_enviar; quit; /*************************************************************************/ /*Macro que irá disparar os e-mails*/ %macro email; /*Looping*/ %do I = 1 %to &MAX.; /*Seleciona e-mail da vez*/ data work.email_da_vez; set work.email_enviar (where=(INDEX=&I.)); call symput('NOME',strip(NOME)); call symput('SETOR',strip(SETOR)); call symput('EMAIL',strip(EMAIL)); run; /*Busca produtos de seu setor*/ proc sql; create table work.email_da_vez as select tb1.*, tb2.* from work.email_da_vez as tb1 left join work.produto as tb2 on tb1.SETOR = tb2.SETOR; quit; /*Disparo do e-mail*/ filename mailbox email; title " "; filename output email subject = "Produtos no almoxerifado" sender = 'Leandro Vasconc' replyto = 'leandro.vasconc@empresa.com.br' from = ('Leandro Vasconc <leandro.vasconc@empresa.com.br>') to = ("&EMAIL.") type = 'text/html' CT = 'text/html'; ods html body = output style=htmlblue; ods escapechar='^'; ods text = "^S={font_face='Arial' font_size=3 fontweight=Medium foreground=black}Prezado(a) &NOME.,"; ods text = " "; ods text = "^S={font_face='Arial' font_size=3 fontweight=Medium foreground=black}Seguem dados referentes ao setor &SETOR.:"; ods text = " "; ods text = " "; proc print data = work.email_da_vez (keep=PRODUTO VALOR) noobs style(header)={just=c foreground=black font_size=3} style(table)={just=c width=50%} label; run; ods text = " "; ods text = "^S={font_face='Arial' font_size=3 fontweight=Medium foreground=black}Atenciosamente,"; ods text = " "; ods text = "^S={font_face='Arial' font_size=3 fontweight=Medium foreground=black}Almoxerifado"; ods html close; %end; %mend email; %email;
... View more