- Este tópico contém 1 resposta, 2 vozes e foi atualizado pela última vez 7 anos, 8 meses atrás por José Laurindo Chiappa.
-
AutorPosts
-
16 de março de 2017 às 3:56 pm #108651Aurelio RosaParticipante
Bom dia.
Existe alguma forma e criar uma procedure que pegue informações de uma tabela e faça a impressão de um arquivo html com essas informações?16 de março de 2017 às 9:25 pm #108652José Laurindo ChiappaModeradorBlz ? Então, minha primeira observação é sobre a sua frase “que faça a impressão” : como vc deve saber, a linguagem PL/SQL é uma linguagem de BACK-END, que reside ** internamente ** lá no banco de dados (máquina essa que tipicamente Não Tem acesso a nada na rede), então essa linguagem ** NÃO POSSUI ** absolutamente NENHUM comando nativo para exibir NADA, nem na tela nem na impressora… Então, seja o que for/aonde for que vc quer fazer essa “impressão”, em PL/SQL puro vc não vai conseguir….. O mais fácil, assim sendo, é vc gerar um Arquivo .html em disco com o conteúdo html que vc quer e daí enviar esse arquivo pro usuário que precisa dele, por email, FTP ou seja que for, ** OU ** então vc pede que um programa externo capaz de exibir HTML (internet explorer, digamos) abra esse arquivo que vc gerou e o exiba….
Para gerar um arquivo html com o conteúdo de uma query, a maneira mais fácil e direta não é escrever uma Procedure mas sim um script sqlplus : o sqlplus já contem os comandos todos necessários para vc ter o output de uma Query gravado em html Facilmente, veja https://uhesse.com/2011/06/30/sqlplus-output-in-nice-html-format/ , http://ittichaicham.com/2008/12/generating-html-reports-from-sql-plus/comment-page-1/ e http://stelliosdba.blogspot.com.br/2012/06/html-reports-using-sqlplus.html como exemplos…. E nem falo nada de ferramentas especializadas que criam relatório, praticamente ** todas ** permitem que vc crie um report html, http://www.thatjeffsmith.com/archive/2012/01/generating-html-data-dictionary-reports-with-oracle-sql-developer/ exemplifica com a ferramenta freeware Oracle SQL Developer…
==> Porém, se por qualquer motivo vc não quiser/não puder usar a geração nativa do sqlplus e tiver que fazer a geração do arquivo html numa procedure PL/SQL, vc terá várias possibilidades :
1. usar a built-in de gerar arquivos-texto (se chama UTL_FILE), inserindo manualmente as tags HTML : http://www.adp-gmbh.ch/ora/plsql/utl_file.html exemplifica o uso do UTL_FILE, mas a inserção das tags HTML é por sua conta
2. usar as built-ins HTML (o PL/SQL web toolkit, que via de regra já vem instalado no banco Oracle) para gerar uma página web e depois gravar a página com UTL_FILE : https://docs.oracle.com/cd/B10501_01/appdev.920/a96590/adgweb.htm#1003882 exemplifica o uso do PL/SQL Web Toolkit
3. usar o APEX (Application Express), que é uma tool de programação criada em PL/SQL e que uma vez instalada pode ter suas APIs chamadas a partir duma procedure : http://www.apex-blog.com/oracle-apex/dynamic-html-generated-from-plsql-tutorial-31.html exemplifica a parte do APEX
4. uma variação da opção 2. é o produto PSP (PL/SQL Server Pages), que a Oracle permite que seja instalado em bancos 9i e acima : https://oracle-base.com/articles/9i/plsql-server-pages-9i tem alguns exemplos
[]s
Chiappa
-
AutorPosts
- Você deve fazer login para responder a este tópico.