Depende : ** SE ** vc tem total certeza que os dados / registros sendo lidos absolutamente nunca ultrapassam o limite máximo de uma variável string no PL/SQL (ie, 32767 bytes), vc simplesmente redimensiona a variável V_EMAIL_CORPO para varchar2(32767), continua concatenando cada registro lido nela que nem vc faz hoje e apenas MOVE a chamada da WENVIA_EMAIL_3 para fora do loop .... Já se pode acontecer do tamanho total do corpo do email (contando cabeçalhos e todos os registros de dados lidos/concatenados) crescer mais que isso, aí a solução é vc gravar um arquivo-texto (com UTL_FILE) com os dados e alterar a rotina de envio de email para que envie o arquivo como um attachment : se for esse o caso, nos diga a versão exata do banco e nos diga se a tal WENVIA_EMAIL_3 usa UTL_MAIL ou UTL_SMTP pra enviar o email, que a gente pode indicar links e refs....
[]s Chiappa