O resultado da query é bem mais que um registro. Alguem sabe me dizer 
pq ele esta enviando apenas a ultima linha? Como faço para mandar 
todo resultado no corpo do email? Alguem tem um exemplo? obrgado

CREATE OR REPLACE PROCEDURE PRC_EMAIL_STATUS_CARGA (p_data_mov in
date default null) IS
nCursor NUMBER ;
cComando VARCHAR(4000) ;
l_dtbl dbms_sql.desc_tab ;
nColunas NUMBER ;
nStatus NUMBER ;
cValor VARCHAR(4000) ;
v_mail_body varchar2(2000) := null;
begin
nCursor := dbms_sql.open_cursor;
cComando := 'SELECT CAMPO_1,CAMPO_2
FROM TABELA;

dbms_sql.parse(nCursor,cComando,dbms_sql.native);
dbms_sql.describe_columns(nCursor,nColunas,l_dtbl);
for i in 1..nColunas loop
dbms_sql.define_column(nCursor,i,cValor,30);
end loop;

nStatus := dbms_sql.execute(nCursor);

while ( dbms_sql.fetch_rows(nCursor) > 0 ) loop
for i in 1..nColunas loop
dbms_sql.column_value(nCursor,i,cValor);
dbms_output.put_line(l_dtbl(i).col_name||' --> '||cValor);
end loop;
v_mail_body :=cValor;
end loop;
prc_send_mail
('[EMAIL PROTECTED]','[EMAIL PROTECTED]','TESTE',v_mail_body);
dbms_sql.close_cursor(nCursor);

END PRC_EMAIL_STATUS_CARGA;



--- Em [email protected], "mateusmelhado" 
<[EMAIL PROTECTED]> escreveu
>
> Boa tarde Senhores,
> 
> Alguem teria um exemplo de como selecionar dados em uma determinada 
> tabela e enviar os mesmo por email, podendo ser no corpo do email , 
> pois são poucos dados. Utilizo para envio uma procedure do oracle 
> chamada prc_send_mail.
> Banco versão 10g.
> 
> Obrigado
>


Responder a