› Fóruns › SQL e PL/SQL › Remover ********** ao usar compute sum no SQLPLUS › Remover ********** ao usar compute sum no SQLPLUS
Bom, vc poderia colocar meu conhecimento de CSS e HTML entre as teclas dum teclado que o bichinho ia funcionar ** perfeitamente ** de tão “grande” que é , mas seguindo os links que te passei (em especial o http://ittichaicham.com/2008/12/generating-html-reports-from-sql-plus/comment-page-1/) e cheguei num caso simples belezinha, sem ** NADA ** de aparecer /b nem nada assim…. Aliás, essa tag aí de acordo com https://developer.mozilla.org/pt-BR/docs/Web/HTML/Element/b ficou ***** OBSOLETA ***** faz tempo, não devia estar nem sendo usada, nem Imagino de onde vc tirou isso : e repente vc está usando um sqlplus antigão, ou está seguindo algum exemplo antigo e despreparado ?? Anyway , eis o meu exemplo :
==> primeiro crio uma massinha de dados :
SQL> create table TBL_TICKETS (ID number, DESCRIPTION varchar2(30), ASSIGNED_TO varchar2(25),
2 OPEN_DATE date, BACKLOG number);
Tabela criada.
SQL> insert into TBL_TICKETS values(2, ‘Compiler not work’, ‘Jim K’, ’08/Out/2008′, 76);
1 linha criada.
SQL> insert into TBL_TICKETS values(3, ‘Cannot access database’, ‘John F’, ’11/Nov/2008′, 42);
1 linha criada.
SQL> insert into TBL_TICKETS values(4, ‘Query is too slow’, ‘John F’, ’11/Dez/2008′, 12);
1 linha criada.
SQL> insert into TBL_TICKETS values(5, ‘System reboot unexpectedly’, ‘David K’, ’21/Dez/2008′, 2);
1 linha criada.
SQL> commit;
Commit concluído.
SQL>
==> aí tenho um script que faz o setup geral para HTML Markup :
C:Usersjlchi_000>type set_markup.sql
set markup HTML ON HEAD ” –
body { –
font:10pt Arial,Helvetica,sans-serif; –
color:blue; background:white; } –
p { –
font:8pt Arial,sans-serif; –
color:grey; background:white; } –
table,tr,td { –
font:10pt Arial,Helvetica,sans-serif; –
text-align:right; –
color:Black; background:white; –
padding:0px 0px 0px 0px; margin:0px 0px 0px 0px; } –
th { –
font:bold 10pt Arial,Helvetica,sans-serif; –
color:#336699; –
background:#cccc99; –
padding:0px 0px 0px 0px;} –
h1 { –
font:16pt Arial,Helvetica,Geneva,sans-serif; –
color:#336699; –
background-color:White; –
border-bottom:1px solid #cccc99; –
margin-top:0pt; margin-bottom:0pt; padding:0px 0px 0px 0px;} –
h2 { –
font:bold 10pt Arial,Helvetica,Geneva,sans-serif; –
color:#336699; –
background-color:White; –
margin-top:4pt; margin-bottom:0pt;} –
a { –
font:9pt Arial,Helvetica,sans-serif; –
color:#663300; –
background:#ffffff; –
margin-top:0pt; margin-bottom:0pt; vertical-align:top;} –
.threshold-critical { –
font:bold 10pt Arial,Helvetica,sans-serif; –
color:red; } –
.threshold-warning { –
font:bold 10pt Arial,Helvetica,sans-serif; –
color:orange; } –
.threshold-ok { –
font:bold 10pt Arial,Helvetica,sans-serif; –
color:green; } –
–
BODY “
” –TABLE “border=’1′ width=’90%’ align=’center'” –
ENTMAP OFF SPOOL ON
C:Usersjlchi_000>
(infelizmente não consegui um bom exemplo de Imagem pública na internet pra usar no img src , essa que eu botei aí em cima não funcionou, o site deve estar protegido, mas não faz mal…)
==> aí, esse script set_markup.sql é chamado de dentro do script que eu quero que gere o SPOOL em formato HTML, que eu chamei de run_weekly_backlog_report.sql :
C:Usersjlchi_000>type run_weekly_backlog_report.sql
@set_markup.sql
set pages 100
TTITLE LEFT _DATE CENTER ‘
Weekly Top Backlog Report : Database Team NA Region
‘ –
RIGHT ‘Page:’ FORMAT 999 SQL.PNO SKIP CENTER ‘
Red = Backlog > 30 days, Orange > 10 days
‘
spool backlog_report.htm
select ‘‘||ID||’‘ ID,
DESCRIPTION, ASSIGNED_TO, OPEN_DATE,
CASE
when SYSDATE-OPEN_DATE > 3040 then
‘‘||to_char(trunc(SYSDATE-OPEN_DATE))||’‘
when SYSDATE-OPEN_DATE > 3000 then
‘‘||to_char(trunc(SYSDATE-OPEN_DATE))||’‘
ELSE
‘‘||to_char(trunc(SYSDATE-OPEN_DATE))||’‘
END BACKLOG
from TBL_TICKETS
order by SYSDATE-OPEN_DATE DESC;
spool off
exit
/
==> veja que é no CSS que vc coloca o atributo de BOLD, de Fonte do que quiser : tenho elementos no meu CSS que fazem o texto ficar em cores diferentes, com pesos diferentes…
Muito bem, vou executar o script de report – veja que ele ** TEM ** que ser rodado a partir da Linha de Comando, e portanto TEM que ter um EXIT no final : é tal que nem eu fiz no meu exemplo de geração de arquivo delimitado que dei numa Outra pergunta do Fórum….
C:Usersjlchi_000>sqlplus scott/tiger @run_weekly_backlog_report.sql
==> Veja que o script vai rodar e vai jogar uns outputs na tela, nenhum deles importa :
SQL*Plus: Release 11.2.0.2.0 Production on Ter Fev 7 18:19:57 2017
Copyright (c) 1982, 2014, Oracle. All rights reserved.
Conectado a:
Oracle Database 11g Express Edition Release 11.2.0.2.0 – 64bit Production
| 07/02/17 |
Weekly Top Backlog Report : Database Team NA Region |
….. 21/12/08 |
2970 |
Desconectado de Oracle Database 11g Express Edition Release 11.2.0.2.0 – 64bit Production
==> Veja que ele ** gerou ** o desejado arquivo em format HTML :
C:Usersjlchi_000>dir *.htm
O volume na unidade C não tem nome.
O Número de Série do Volume é 340C-E794
Pasta de C:Usersjlchi_000
07/02/2017 18:19 3.071 backlog_report.htm
1 arquivo(s) 3.071 bytes
0 pasta(s) 480.876.212.224 bytes disponíveis
C:Usersjlchi_000>
==> aí abrindo o arquivo no Firefox eu vejo colunas em vermelho, em laranja, em bold e com FOntes específicas… Ó o printscreen :
Espero que esse exemplinho te seja útil, okdoc ??
Abraços,
José Laurindo Chiappa
OBS : eu usei o sqlplus que vêm com o database Oracle Express Edition 11gR2…