› Fóruns › SQL e PL/SQL › Gerar arquivo txt através de uma procedure
- Este tópico contém 3 respostas, 2 vozes e foi atualizado pela última vez 18 anos, 1 mês atrás por
Marcio68Almeida.
-
AutorPosts
-
17 de junho de 2008 às 11:47 pm #82033
rbfonseca
ParticipanteBoa tarde amigos,
preciso desenvolver uma stored procedure que gere um arquivo txt de acordo com uma consulta sendo que:
esse arquivo terá que estar formatado da seguinte maneira:
cabeçalho
registro 1
registro 2
registro 3
rodapé
cabeçalho
registro 1
registro 2
registro 3
registro 4
registro 5
rodapéalgum amigo poderia me dar uma ajuda?
no aguardo
Raphael18 de junho de 2008 às 12:28 am #82034Marcio68Almeida
Participanteisso tem cara de arquivo a ser enviado a banco ou telefonia…
para gerar arquivo TXT, existem diversas formas, SPOOL, DBMS_OUTPUT entre outras…
sugiro que você crie pequenos processos que gerem de forma independente o cabeçalho, as linhas detalhe e o rodapé.
assim que acionado o SPOOL (por exemplo) vá chamando os processos que gerarão as linhas na sequência adequada…
isso vai ser gerado em batch ?
além de fazer via procedure, há a possibilidade de fazer via programa externo tipo SCRIBES ??? http://scribes.ipnetwork.eti.br/index_br.php18 de junho de 2008 às 12:43 am #82035rbfonseca
Participanteesse arquivo é para ser enviado a um órgão externo.
eu poderia desenvolver isso pelo delphi, mas o que gostaria realmente é deixar isso no banco e somente estatar o processo.
tem como vc me dar uma idéia desses processos pequenos e o esquema do spool?
no aguardo
Raphael18 de junho de 2008 às 7:45 pm #82040Marcio68Almeida
ParticipantePara startar o processo automaticamente, o Oracle tem o esquedule de jobs, ele define horário e dias específicos para executar o processo, por exemplo, toda noite, todo dia primeiro, dias primeiro e décimo quinto, etc…
Você teria que fazer um processo maior que vai criar um arquivo texto a ser populado e selecionar os objetos a serem listados, pode ser um cursor.
Dentro desse loop maior, você vai passar por parâmetro qual a informação de cabeçalho, para uma procedure que envie para o arquivo texto
Depois chamar uma outra procedure que listará as linhas referentes ao cabeçalho acima
Depois chamar a terceira procedure que encerrará o pacote com o rodapé.
passa para a próxima linha a ser processada e continua no loop até terminar.
Fechar o arquivo texto gerado.Não vou colocar um esqueleto de procedures por que não é o meu forte, mas aqui certametne há pessoas mais bem qualificadas para isso…
Seguindo este escopo, as procedures criadas poderão ser aproveitadas em outros processos.
Tente ao máximo evitar criar os famosos linguições… ❗ -
AutorPosts
- Você deve fazer login para responder a este tópico.
› Fóruns › SQL e PL/SQL › Gerar arquivo txt através de uma procedure