Executar query dinamica e gerar arquivo CSV

Dúvidas, dicas e truques de PL/SQL. Aqui também vão assuntos relacionados a pacotes, triggers, funções, Java-Stored Procedures, etc
Responder
thgdias
Rank: Estagiário Júnior
Rank: Estagiário Júnior
Mensagens: 1
Registrado em: Ter, 09 Dez 2008 7:36 am
Localização: São Paulo - SP
Right said Fred!

Bom dia a todos.

tenho um sistema de relatórios que funciona em java para os usuários, tem uma série de sql cadastrados e eles acessam isso via página web, funciona perfeitamente. acontece que agora preciso criar um serviço em PLSQL que executa algumas dessas querys e em caso tenha resultado, gero um arquivo CSV e envio por e-mail. como são várias querys, não tenho como determinar qual será o retorno para fazer o fetch.

alguma idéia de como posso executar e utilizar o retorno desse relatório para o que eu quiser, como gerar o CSV por exemplo?


Obrigado!!!

Thiago.
Avatar do usuário
stcoutinho
Moderador
Moderador
Mensagens: 850
Registrado em: Qua, 11 Mai 2011 5:15 pm
Localização: são Paulo - SP

Fala Thiago !

Talvez você possa desenvolver rotinas em PL/SQL que utilizem estas duas bibliotecas:

- UTL_SMTP => Envio de emails, inclusive com anexos.
- UTL_FILE => Geração de arquivos CSV

Com o UTL_FILE, você poderia transformar o resultado de uma querie em arquivo CSV. Com o UTL_SMTP, você poderia montar um email para uma lista de distribuição com o arquivo CSV em anexo.

Encontrei alguns links do ASKTOM que apresentam inclusive código fonte para você verificar como se programa.

http://asktom.oracle.com/pls/apex/f?p=1 ... 5814350980
http://asktom.oracle.com/pls/apex/f?p=1 ... 9411218448
http://asktom.oracle.com/pls/apex/f?p=1 ... 0346975609

Note que as duas packages oracle exigem a atribuição de algumas permissões especiais que você terá que discutir com a área de suporte DBA da produção de sua empresa.

Informações mais detalhadas sobre as duas packages podem sem encontrada nos manuais da ORACLE.

Abraços e boa sorte,

Sergio Coutinho
Responder
  • Informação
  • Quem está online

    Usuários navegando neste fórum: Nenhum usuário registrado e 15 visitantes