Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

e-Renata

"Baile" no Oracle Reports

Recommended Posts

PessoALL, :wacko:

 

Como consigo um formato Master detail legal, eficiente, eficaz, para um Laudo Oficial ordenado por Processo, no SQL abaixo?

 

select

case when ((lau.laudo is null) and (lau.ano <> to_char(sysdate,'yyyy'))) then (seq_laudo.nextval||' / '||to_char(sysdate,'yyyy'))

else (lau.laudo||' / '||lau.ano)

end Número_do_laudo,

 

substr(pr.processo,5,4)||'/'||substr(pr.processo,1,4) as processo,

dform.ndform as forma_do_material, crop.crop as nome_vulgar, gn.genus||' - '||tax.taxon as genero_especie,

 

procedencia.org||' / '||proced.country as procedencia,

destino.org||' / '||dest.country as destino,

 

decode (pr.impti, 'IM', 'Importação', 'EX', 'Exportação', 'TI', 'Trânsito Interno') as tipo_processo,

 

decode(labo.lab, 'ACAR', 'Acarologia',

'BACT', 'Bacteriologia',

'ENTO', 'Entomologia',

'MICO', 'Micologia',

'NEMA', 'Nematologia',

'PINF', 'Plantas Infestantes',

'VIRO', 'Virologia') as laboratorio,

 

case

when (labo.lab = 'ENTO' and pana.isento = 'X') then 'Ausência de insetos'

when (labo.lab = 'ACAR' and pana.isento = 'X') then 'Ausência de ácaros'

when (labo.lab = 'BACT' and pana.isento = 'X') then 'Ausência de bactérias'

when (labo.lab = 'MICO' and pana.isento = 'X') then 'Ausência de fungos'

when (labo.lab = 'NEMA' and pana.isento = 'X') then 'Ausência de nematóides'

when (labo.lab = 'PINF' and pana.isento = 'X') then 'Ausência de plantas infestantes'

when (labo.lab = 'VIRO' and pana.isento = 'X') then 'Ausência de vírus'

else ptax.taxon

end pragas_detectadas,

 

decode(prade.posicao, 'LA1', 'Lista A1',

'LA2', 'Lista A2',

'ExC', 'Exótica nesta cultura',

'ExCR', 'Raça não relatada no Brasil',

'EXO', 'Exótica',

'PNQR', 'Praga não quarentenária',

'BR', 'Ocorre no Brasil') as posicao,

 

pmeta.metana as Met_deteccao, pmeti.metina as Met_identificacao,

 

a.subsna||','||b.subsna as quim_substancia, tratq.dos as quim_dosagem, tratq.tempo as quim_tempo,

tratq.via as quim_via, tratq.forma as quim_forma, decode (tratq.sit, 'R', 'Realizado', 'P', 'Presc.Cen.',

null, '-', 'D', 'Presc.Dest.') as quim_situacao,

 

tratf.ptemper as fis_pretemper, tratf.ptempo as fis_pretempo_un, tratf.temper as fis_trattemper,

tratf.tempo as fis_trattempo_un, tratf.via as fis_via, decode (tratf.sit, 'R', 'Realizado', 'P', 'Presc.Cen.',

null, '-', 'D', 'Presc.Dest.') as fis_situacao,

 

tratct.partepl as ct_parte_da_planta, tratct.meio as ct_meio, tratct.tempincub as ct_tempo_incubacao,

tratct.tempo as ct_tempo_un,

decode (tratct.sit, 'R', 'Realizado', 'P', 'Presc.Cen.', null, '-', 'D', 'Presc.Dest.') as ct_situacao,

 

case

when (lau.processo = tratm.processo) then 'Misto'

when (lau.processo = tratm.processo and tratm.tratf = 'X') then 'Físico'

when (lau.processo = tratm.processo and tratm.tratq = 'X') then 'Químico'

when (lau.processo = tratm.processo and tratm.tratct = 'X') then 'Cultura de Tecido'

when (lau.processo = tratm.processo and tratm.trato = 'X') then 'Outro'

end mis_tipotratamento,

 

decode (tratm.sit, 'R', 'Realizado', 'P', 'Presc.Cen.', null, '-', 'D', 'Presc.Dest.') as mis_situacao,

 

case

when (lau.processo = tratm.processo and tratm.trato = 'X') then tratm.tratodesc

end mis_descricao,

 

case

when (labo.obs is not null and labo.lab = 'ACAR') then labo.obs

when (labo.obs is not null and labo.lab = 'BACT') then labo.obs

when (labo.obs is not null and labo.lab = 'ENTO') then labo.obs

when (labo.obs is not null and labo.lab = 'MICO') then labo.obs

when (labo.obs is not null and labo.lab = 'NEMA') then labo.obs

when (labo.obs is not null and labo.lab = 'PINF') then labo.obs

when (labo.obs is not null and labo.lab = 'VIRO') then labo.obs

end observacoes,

 

case

when (labo.lab = 'SEPA' and labo.amos = 'A') then 'Análise feita por amostragem, havendo, portanto,

possibilidade de escape. Recomenda-se observar as plantas durante o seu desenvolvimento e

comunicar a este Laboratório o surgimento de quaisquer anormalidades.'

end recomendacoes,

 

uloc.resp as lider_quarentena, uloc.matric as matricula_lider

 

from

pr, prod, tax, crop, gn, coop procedencia, coop destino, geo proced, geo dest, dform, lau, labo, pana,

prade, ptax, pmeta, pmeti, tratq, tratf, tratct, tratm, psubs a, psubs b, uloc

 

where

:Processo = substr(pr.processo,5,4)||'/'||substr(pr.processo,1,4) and

:Lider_LabQuarentena = uloc.resp and

:Matricula_Lider = uloc.matric and

pr.processo = prod.processo and prod.taxno = tax.taxno and pr.gno = gn.gno and

pr.cropno = crop.cropno and

pr.cnop = procedencia.cno and procedencia.geono = proced.geono and pr.cnod = destino.cno and destino.geono = dest.geono and

pr.dform = dform.dform and

(((pr.processo = lau.processo and pr.processo = labo.processo and labo.labo = pana.labo and

pana.nana = prade.nana(+) and prade.ptaxno = ptax.ptaxno(+)) and

pana.pmetano = pmeta.pmetano and pana.pmetino = pmeti.pmetino) and

(lau.processo = tratq.processo(+) and tratq.fpsubsno = a.psubsno(+) and tratq.psubsno =

b.psubsno(+)) and

(lau.processo = tratf.processo(+)) and

(lau.processo = tratct.processo(+)) and

(lau.processo = tratm.processo(+)));

 

A quem puder me ajudar o quanto antes, meu INFINITO muito obrigada.

(É que o 'monstrengo' tem prazo e já venceu http://forum.imasters.com.br/public/style_emoticons/default/blush.gif )

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não entendi bem o problema , mas creio que seja parecido com algo que já fiz , uma ficha de internação, varios dados etc.

Fiz em Delphi usando um objeto chamado TRichEdit , que permite gerar um Texto parecido com o Wordpad (muda fonte (cor,tamanho etc)).

Não sei o que você está usando mas eu usei varios sql´s e fui montando a ficha.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.