Ir para conteúdo

POWERED BY:

Arquivado

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

camilacaj

Totalização por tipo de documento

Recommended Posts

Olá !!!

 

Gostaria de verificar se alguém pode me ajudar numa situação. Tenho o código e o resultado abaixo :

 

 

select v.raiz_cli_fornec, v.origem, v.num_docum, v.tipo_docum, vd.docum, sum(v.val_liquido) val_liquido

from v_integracao_cap_cre v, v_documento_cap_cre vd

where v.cod_empresa = vd.cod_empresa
 and v.raiz_cli_fornec = vd.raiz_cli_fornec
 and v.tipo_docum = vd.tipo_docum 
 and v.num_docum = vd.num_docum
 and v.cod_empresa = '07' 
 and v.num_docum in ('070346410121', '53861', '1281')
 and v.raiz_cli_fornec = '003.533.726'

group by v.raiz_cli_fornec, v.origem, v.num_docum, v.tipo_docum, vd.docum

order by v.num_docum, v.tipo_docum, docum, raiz_cli_fornec, origem

 

 

 

RAIZ_CLI_FORNEC	  ORIGEM	NUM_DOCUM	TIPO_DOCUM	DOCUM	        VAL_LIQUIDO
000.103.075	  CAP	        160	        AD	        160	        30,45
000.103.075	  CAP	        160	        AP	        128	        30,45
000.103.075	  CRE	        PER53	        DP	        PER53	        95,99
003.533.726	  CAP	        1281	        AD	        1281	        1834,09
003.533.726	  CAP	        1281	        AP	        1053	        1834,09
003.533.726	  CAP	        53861	        AD	        53861	        2991,5
003.533.726	  CAP	        53861	        AP	        49987	        2991,5
003.533.726	  CRE	        070346410121	DP	        070346410121	43542,4

 

Preciso fazer a totalização pela origem dos documentos e depois substrair os resultados trazendo o saldo pela raiz do cliente/fornecedor. Segue abaixo como deveria ficar meu relatório :

 

 

RAIZ_CLI_FORNEC	  ORIGEM	NUM_DOCUM	TIPO_DOCUM	DOCUM	        VAL_LIQUIDO
000.103.075	  CAP	        160	        AD	        160	        30,45
000.103.075	  CAP	        160	        AP	        128	        30,45
Total Fornecedor..............................................................  60,90
000.103.075	  CRE	        PER53	        DP	        PER53	        95,99
Total Cliente.................................................................  95,99
Saldo Cliente / Fornecedor....................................................  35,09
003.533.726	  CAP	        1281	        AD	        1281	        1834,09
003.533.726	  CAP	        1281	        AP	        1053	        1834,09
003.533.726	  CAP	        53861	        AD	        53861	        2991,5
003.533.726	  CAP	        53861	        AP	        49987	        2991,5
Total Fornecedor..............................................................  4825,59
003.533.726	  CRE	        070346410121	DP	        070346410121	43542,4
Total Cliente.................................................................  43542,4
Saldo Cliente / Fornecedor....................................................  38716,81

Alguém consegue me ajudar nisso no PL/SQL ?? Tipo criar uma view usando algum agrupamento com rollup ou cube ou alguma outra coisa que me traga os resultados da maneira como está exposto logo acima. Tentei faz, mas não consegui trazer da maneira como preciso.

 

 

Desde já agradeço.

 

 

Att.

 

Camila.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tente

select v.raiz_cli_fornec, v.origem, v.num_docum, v.tipo_docum, vd.docum, sum(v.val_liquido) val_liquido

from v_integracao_cap_cre v, v_documento_cap_cre vd

where v.cod_empresa = vd.cod_empresa
 and v.raiz_cli_fornec = vd.raiz_cli_fornec
 and v.tipo_docum = vd.tipo_docum 
 and v.num_docum = vd.num_docum
 and v.cod_empresa = '07' 
 and v.num_docum in ('070346410121', '53861', '1281')
 and v.raiz_cli_fornec = '003.533.726'

group by cube (v.raiz_cli_fornec, v.origem, v.num_docum, v.tipo_docum, vd.docum)

order by v.num_docum, v.tipo_docum, docum, raiz_cli_fornec, origem

 

Mas a arrumação ficaria a cargo da aplicação.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tente

select v.raiz_cli_fornec, v.origem, v.num_docum, v.tipo_docum, vd.docum, sum(v.val_liquido) val_liquido

from v_integracao_cap_cre v, v_documento_cap_cre vd

where v.cod_empresa = vd.cod_empresa
 and v.raiz_cli_fornec = vd.raiz_cli_fornec
 and v.tipo_docum = vd.tipo_docum 
 and v.num_docum = vd.num_docum
 and v.cod_empresa = '07' 
 and v.num_docum in ('070346410121', '53861', '1281')
 and v.raiz_cli_fornec = '003.533.726'

group by cube (v.raiz_cli_fornec, v.origem, v.num_docum, v.tipo_docum, vd.docum)

order by v.num_docum, v.tipo_docum, docum, raiz_cli_fornec, origem

 

Mas a arrumação ficaria a cargo da aplicação.

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.