Pular para o conteúdo principal

LPR002 — Layout LPR002

Visão Geral​

Layout de impressão da família LPR (Produto). Acionado via ExecLayout a partir das telas que imprimem este tipo de documento.

Descrição​

Consulta baseada em PROCESSO, com junção em MOVTOPROCESSO, CONTAS, PESSOA, CONTASHISTORICO, HISTORICO, MOVTOCAIXA (+1), filtrada por CD_EMPRESA, NR_PROCESSO, TP_PROCESSO, D, AS, P (+9).

Chamada​

ExecLayout(Connection, [
// 0 - Nome do Layout do Extrato
// 1 - Cod Empresa
// 2 - Nr Processo
// 3 - Path Servidor
// 4 - Tipo do Processo
]);

SQL Base​

Processo #1​

SELECT CP.NR_DOCUMENTO, CP.NR_PARCELA, CP.DT_VENCIMENTO, CP.CD_PESSOA, PS.NM_PESSOA, CP.VL_DOCUMENTO, coalesce(MP.VL_JURO,0) VL_JURO, coalesce(MP.VL_DESCONTO,0) VL_DESCONTO, (CP.VL_DOCUMENTO + coalesce(MP.VL_JURO,0) - coalesce(MP.VL_DESCONTO,0)) VL_TOTAL, CH.CD_HISTORICO, H.DS_HISTORICO
FROM PROCESSO P
INNER JOIN MOVTOPROCESSO MP on (MP.CD_EMPRESA = P.CD_EMPRESA
AND MP.NR_PROCESSO = P.NR_PROCESSO)
INNER JOIN CONTAS CP on (CP.CD_EMPRESA = MP.CD_EMPRESA
AND CP.NR_LANCAMENTO = MP.NR_LANCAMENTO
AND CP.CD_PESSOA = MP.CD_PESSOA
AND CP.CD_TIPOCONTA = MP.CD_TIPOCONTA
AND CP.NR_PARCELA = MP.NR_PARCELA)
INNER JOIN PESSOA PS on (PS.CD_PESSOA = CP.CD_PESSOA)
INNER JOIN CONTASHISTORICO CH on (CH.CD_EMPRESA = CP.CD_EMPRESA
AND CH.NR_LANCAMENTO = CP.NR_LANCAMENTO
AND CH.CD_PESSOA = CP.CD_PESSOA
AND CH.CD_TIPOCONTA = CP.CD_TIPOCONTA
AND CH.NR_PARCELA = CP.NR_PARCELA)
INNER JOIN HISTORICO H on (H.CD_HISTORICO = CH.CD_HISTORICO)
WHERE P.CD_EMPRESA = :CD_EMPRESA
AND P.NR_PROCESSO = :NR_PROCESSO
AND P.TP_PROCESSO = H.TP_NATUREZA CD_EMPRESA 1 NR_PROCESSO
SELECT cast('Dinheiro' as varchar(60)) DS_BANCO, cast(null as varchar(60)) DS_AGENCIA, cast(null as integer) NR_DOCUMENTO, cast(null as varchar(60)) NM_TITULAR, MT.VL_DOCUMENTO
FROM PROCESSO P
INNER JOIN MOVTOPROCESSO MP on (MP.CD_EMPRESA = P.CD_EMPRESA
AND MP.NR_PROCESSO = P.NR_PROCESSO)
INNER JOIN CONTAS CP on (CP.CD_EMPRESA = MP.CD_EMPRCONTAS
AND CP.NR_LANCAMENTO = MP.NR_LANCAMENTO
AND CP.CD_PESSOA = MP.CD_PESSOA
AND CP.CD_TIPOCONTA = MP.CD_TIPOCONTA
AND CP.NR_PARCELA = MP.NR_PARCELA)
INNER JOIN PESSOA PS on (PS.CD_PESSOA = CP.CD_PESSOA)
INNER JOIN MOVTOCAIXA MT on (MT.CD_EMPRPROC = MP.CD_EMPRESA
AND MT.NR_PROCESSO = MP.NR_PROCESSO
AND MT.TP_DOCUMENTO = 'AV')
INNER JOIN PARMSALDO PM on (PM.CD_EMPRESA = P.CD_EMPRESA
AND PM.CD_CONTA = coalesce(MT.CD_CONTADEBITO,MT.CD_CONTACREDITO)
AND PM.TP_SALDO = 'X')
WHERE P.CD_EMPRESA = :CD_EMPRESA
AND P.NR_PROCESSO = :NR_PROCESSO CD_EMPRESA 1 nr_processo

Processo #2​

SELECT {#10} CP.NR_DOCUMENTO||'-'||CP.NR_PARCELA NR_DOCUMENTO, CP.DT_VENCIMENTO, {#10} cast(CP.CD_PESSOA as varchar(10))||' - '||PS.NM_PESSOA NM_PESSOA, {#10} iif(CP.TP_CONTAS = 'E', MP.VL_DOCUMENTO * -1, MP.VL_DOCUMENTO) VL_DOCUMENTO, {#10} coalesce(MP.VL_JURO,0) VL_JURO, coalesce(MP.VL_DESCONTO,0) VL_DESCONTO, {#10} CASE WHEN CP.TP_CONTAS = 'E' {#10} THEN (MP.VL_DOCUMENTO + coalesce(MP.VL_JURO,0) - coalesce(MP.VL_DESCONTO,0)) *-1 {#10} ELSE (MP.VL_DOCUMENTO + coalesce(MP.VL_JURO,0) - coalesce(MP.VL_DESCONTO,0)) {#10} END VL_TOTAL, {#10} CASE WHEN CP.TP_CONTAS = 'E' {#10} THEN (MP.VL_DOCUMENTO + coalesce(MP.VL_JURO,0) - coalesce(MP.VL_DESCONTO,0)) * -1 {#10} ELSE (MP.VL_DOCUMENTO + coalesce(MP.VL_JURO,0) - coalesce(MP.VL_DESCONTO,0)) {#10} END VL_SALDO, {#10} CH.CD_HISTORICO, H.DS_HISTORICO {#10}
FROM PROCESSO P {#10}
INNER JOIN MOVTOPROCESSO MP on (MP.CD_EMPRESA = P.CD_EMPRESA {#10}
AND MP.NR_PROCESSO = P.NR_PROCESSO) {#10}
INNER JOIN CONTAS CP on (CP.CD_EMPRESA = MP.CD_EMPRCONTAS {#10}
AND CP.NR_LANCAMENTO = MP.NR_LANCAMENTO {#10}
AND CP.CD_PESSOA = MP.CD_PESSOA {#10}
AND CP.CD_TIPOCONTA = MP.CD_TIPOCONTA {#10}
AND CP.NR_PARCELA = MP.NR_PARCELA) {#10}
INNER JOIN PESSOA PS on (PS.CD_PESSOA = CP.CD_PESSOA) {#10}
INNER JOIN CONTASHISTORICO CH on (CH.CD_EMPRESA = CP.CD_EMPRESA {#10}
AND CH.NR_LANCAMENTO = CP.NR_LANCAMENTO {#10}
AND CH.CD_PESSOA = CP.CD_PESSOA {#10}
AND CH.CD_TIPOCONTA = CP.CD_TIPOCONTA {#10}
AND CH.NR_PARCELA = CP.NR_PARCELA) {#10}
INNER JOIN HISTORICO H on (H.CD_HISTORICO = CH.CD_HISTORICO) {#10}
INNER JOIN HISTORICO HP on (HP.CD_HISTORICO = MP.CD_HISTORICO) {#10}
WHERE P.CD_EMPRESA = {iParametros}

tabPagamento​

SELECT {#10} BC.DS_BANCO, AG.DS_AGENCIA, CTC.NR_DOCUMENTO, C.NM_TITULAR, {#10} iif(CTC.TP_CONTAS = 'E', CTC.VL_DOCUMENTO * -1, CTC.VL_DOCUMENTO) VL_DOCUMENTO {#10}
FROM MOVTOPROCESSO MPCH {#10}
INNER JOIN PROCESSO P on (P.CD_EMPRESA = MPCH.CD_EMPRESA {#10}
AND P.NR_PROCESSO = MPCH.NR_PROCESSO) {#10}
INNER JOIN CHEQUE C on (C.CD_EMPRESA = MPCH.CD_EMPRCONTAS {#10}
AND C.NR_LANCAMENTO = MPCH.NR_LANCAMENTO {#10}
AND C.CD_PESSOA = MPCH.CD_PESSOA {#10}
AND C.CD_TIPOCONTA = MPCH.CD_TIPOCONTA {#10}
AND C.NR_PARCELA = MPCH.NR_PARCELA) {#10}
INNER JOIN CONTAS CTC on (CTC.CD_EMPRESA = C.CD_EMPRESA {#10}
AND CTC.NR_LANCAMENTO = C.NR_LANCAMENTO {#10}
AND CTC.CD_PESSOA = C.CD_PESSOA {#10}
AND CTC.CD_TIPOCONTA = C.CD_TIPOCONTA {#10}
AND CTC.NR_PARCELA = C.NR_PARCELA) {#10}
INNER JOIN BANCO BC on (BC.CD_BANCO = CTC.CD_BANCO) {#10}
INNER JOIN AGENCIA AG on (AG.CD_BANCO = CTC.CD_BANCO {#10}
AND AG.CD_AGENCIA = CTC.CD_AGENCIA) {#10}
INNER JOIN MOVTOCAIXA MXCH on (MXCH.CD_EMPRESA = C.CD_EMPRCAIXA {#10}
AND MXCH.NR_LANCCAIXA = C.NR_LANCCAIXA) {#10}
WHERE MPCH.CD_EMPRESA = {iParametros}

Text #1​

SELECT {#10} CP.NR_DOCUMENTO||'-'||CP.NR_PARCELA NR_DOCUMENTO, CP.DT_VENCIMENTO, {#10} cast(CP.CD_PESSOA as varchar(10))||' - '||PS.NM_PESSOA NM_PESSOA, {#10} iif(CP.TP_CONTAS = 'E', MP.VL_DOCUMENTO * -1, MP.VL_DOCUMENTO) VL_DOCUMENTO, {#10} coalesce(MP.VL_JURO,0) VL_JURO, coalesce(MP.VL_DESCONTO,0) VL_DESCONTO, {#10} CASE WHEN CP.TP_CONTAS = 'E' {#10} THEN (MP.VL_DOCUMENTO + coalesce(MP.VL_JURO,0) - coalesce(MP.VL_DESCONTO,0)) *-1 {#10} ELSE (MP.VL_DOCUMENTO + coalesce(MP.VL_JURO,0) - coalesce(MP.VL_DESCONTO,0)) {#10} END VL_TOTAL, {#10} CASE WHEN CP.TP_CONTAS = 'E' {#10} THEN (MP.VL_DOCUMENTO + coalesce(MP.VL_JURO,0) - coalesce(MP.VL_DESCONTO,0)) * -1 {#10} ELSE (MP.VL_DOCUMENTO + coalesce(MP.VL_JURO,0) - coalesce(MP.VL_DESCONTO,0)) {#10} END VL_SALDO, {#10} CH.CD_HISTORICO, H.DS_HISTORICO {#10}
FROM PROCESSO P {#10}
INNER JOIN MOVTOPROCESSO MP on (MP.CD_EMPRESA = P.CD_EMPRESA {#10}
AND MP.NR_PROCESSO = P.NR_PROCESSO) {#10}
INNER JOIN CONTAS CP on (CP.CD_EMPRESA = MP.CD_EMPRCONTAS {#10}
AND CP.NR_LANCAMENTO = MP.NR_LANCAMENTO {#10}
AND CP.CD_PESSOA = MP.CD_PESSOA {#10}
AND CP.CD_TIPOCONTA = MP.CD_TIPOCONTA {#10}
AND CP.NR_PARCELA = MP.NR_PARCELA) {#10}
INNER JOIN PESSOA PS on (PS.CD_PESSOA = CP.CD_PESSOA) {#10}
INNER JOIN CONTASHISTORICO CH on (CH.CD_EMPRESA = CP.CD_EMPRESA {#10}
AND CH.NR_LANCAMENTO = CP.NR_LANCAMENTO {#10}
AND CH.CD_PESSOA = CP.CD_PESSOA {#10}
AND CH.CD_TIPOCONTA = CP.CD_TIPOCONTA {#10}
AND CH.NR_PARCELA = CP.NR_PARCELA) {#10}
INNER JOIN HISTORICO H on (H.CD_HISTORICO = CH.CD_HISTORICO) {#10}
INNER JOIN HISTORICO HP on (HP.CD_HISTORICO = MP.CD_HISTORICO) {#10}
WHERE P.CD_EMPRESA = {iParametros[1] +#10}
AND P.NR_PROCESSO = {iParametros[2] +#10}
AND HP.TP_HISTORICO NOT IN ('J','D') {#10}
ORDER BY H.DS_HISTORICO, PS.NM_PESSOA

Text #2​

SELECT {#10} BC.DS_BANCO, AG.DS_AGENCIA, CTC.NR_DOCUMENTO, C.NM_TITULAR, {#10} iif(CTC.TP_CONTAS = 'E', CTC.VL_DOCUMENTO * -1, CTC.VL_DOCUMENTO) VL_DOCUMENTO {#10}
FROM MOVTOPROCESSO MPCH {#10}
INNER JOIN PROCESSO P on (P.CD_EMPRESA = MPCH.CD_EMPRESA {#10}
AND P.NR_PROCESSO = MPCH.NR_PROCESSO) {#10}
INNER JOIN CHEQUE C on (C.CD_EMPRESA = MPCH.CD_EMPRCONTAS {#10}
AND C.NR_LANCAMENTO = MPCH.NR_LANCAMENTO {#10}
AND C.CD_PESSOA = MPCH.CD_PESSOA {#10}
AND C.CD_TIPOCONTA = MPCH.CD_TIPOCONTA {#10}
AND C.NR_PARCELA = MPCH.NR_PARCELA) {#10}
INNER JOIN CONTAS CTC on (CTC.CD_EMPRESA = C.CD_EMPRESA {#10}
AND CTC.NR_LANCAMENTO = C.NR_LANCAMENTO {#10}
AND CTC.CD_PESSOA = C.CD_PESSOA {#10}
AND CTC.CD_TIPOCONTA = C.CD_TIPOCONTA {#10}
AND CTC.NR_PARCELA = C.NR_PARCELA) {#10}
INNER JOIN BANCO BC on (BC.CD_BANCO = CTC.CD_BANCO) {#10}
INNER JOIN AGENCIA AG on (AG.CD_BANCO = CTC.CD_BANCO {#10}
AND AG.CD_AGENCIA = CTC.CD_AGENCIA) {#10}
INNER JOIN MOVTOCAIXA MXCH on (MXCH.CD_EMPRESA = C.CD_EMPRCAIXA {#10}
AND MXCH.NR_LANCCAIXA = C.NR_LANCCAIXA) {#10}
WHERE MPCH.CD_EMPRESA = {iParametros[1] +#10}
AND MPCH.NR_PROCESSO = {iParametros[2] +#10}
AND MPCH.CD_HISTORICO in (
SELECT H.CD_HISTORICO {#10}
FROM HISTORICO H {#10}
WHERE H.CD_HISTORICO = MPCH.CD_HISTORICO {#10}
AND H.TP_HISTORICO = 'H' {#10}
AND H.TP_NATUREZA <> P.TP_PROCESSO) {#10+ #10}
UNION ALL {#10+ #10}
SELECT {#10} BC.DS_BANCO, AG.DS_AGENCIA, MT.NR_DOCUMENTO, C.NM_TITULAR, {#10} iif(CTC.TP_CONTAS = 'E', MT.VL_DOCUMENTO * -1, MT.VL_DOCUMENTO) VL_DOCUMENTO {#10}
FROM PROCESSO P {#10}
INNER JOIN MOVTOCAIXA MT on (MT.CD_EMPRPROC = P.CD_EMPRESA {#10}
AND MT.NR_PROCESSO = P.NR_PROCESSO {#10}
AND MT.TP_DOCUMENTO = 'AV') {#10}
LEFT JOIN VIEW_PARMSALDO(P.CD_EMPRESA, coalesce(MT.CD_CONTADEBITO,MT.CD_CONTACREDITO), null, null) PM on (1 = 1) {#10}
INNER JOIN BANCO BC on (BC.CD_BANCO = MT.CD_BANCO) {#10}
INNER JOIN AGENCIA AG on (AG.CD_BANCO = MT.CD_BANCO {#10}
AND AG.CD_AGENCIA = MT.CD_AGENCIA) {#10}
INNER JOIN CHEQUE C on (C.CD_EMPRESA = MT.CD_EMPRESA {#10}
AND C.NR_LANCCAIXA = MT.NR_LANCCAIXA) {#10}
INNER JOIN CONTAS CTC on (CTC.CD_EMPRESA = C.CD_EMPRESA {#10}
AND CTC.NR_LANCAMENTO = C.NR_LANCAMENTO {#10}
AND CTC.CD_PESSOA = C.CD_PESSOA {#10}
AND CTC.CD_TIPOCONTA = C.CD_TIPOCONTA {#10}
AND CTC.NR_PARCELA = C.NR_PARCELA) {#10}
WHERE PM.TP_SALDO IN ('R','P') {#10}
AND P.CD_EMPRESA = {iParametros[1] +#10}
AND P.NR_PROCESSO = {iParametros[2] +#10+ #10}
UNION ALL {#10+ #10}
SELECT {#10} BC.DS_BANCO, AG.DS_AGENCIA, {#10} cast(null as integer) NR_DOCUMENTO, cast(null as varchar(60)) NM_TITULAR, {#10} iif(CTC.TP_CONTAS = 'E', MT.VL_DOCUMENTO * -1, MT.VL_DOCUMENTO) VL_DOCUMENTO {#10}
FROM PROCESSO P {#10}
INNER JOIN MOVTOCAIXA MT on (MT.CD_EMPRPROC = P.CD_EMPRESA {#10}
AND MT.NR_PROCESSO = P.NR_PROCESSO {#10}
AND MT.TP_DOCUMENTO = 'AV') {#10}
LEFT JOIN VIEW_PARMSALDO(P.CD_EMPRESA, coalesce(MT.CD_CONTADEBITO,MT.CD_CONTACREDITO), 'B', null) PM on (1 = 1) {#10}
INNER JOIN BANCO BC on (BC.CD_BANCO = PM.CD_BANCO) {#10}
INNER JOIN AGENCIA AG on (AG.CD_BANCO = PM.CD_BANCO {#10}
AND AG.CD_AGENCIA = PM.CD_AGENCIA) {#10}
INNER JOIN CONTAS CTC ON (CTC.CD_EMPRESA = MT.CD_EMPRCONTAS {#10}
AND CTC.NR_LANCAMENTO = MT.NR_LANCAMENTO {#10}
AND CTC.CD_PESSOA = MT.CD_PESSOA {#10}
AND CTC.CD_TIPOCONTA = MT.CD_TIPOCONTA {#10}
AND CTC.NR_PARCELA = MT.NR_PARCELA) {#10}
WHERE PM.TP_SALDO = 'B' {#10}
AND P.CD_EMPRESA = {iParametros[1] +#10}
AND P.NR_PROCESSO = {iParametros[2] +#10+ #10}
UNION ALL {#10+ #10}
SELECT {#10} cast('Dinheiro' as varchar(60)) DS_BANCO, cast(null as varchar(60)) DS_AGENCIA, {#10} cast(null as integer) NR_DOCUMENTO, cast(null as varchar(60)) NM_TITULAR, {#10} iif(CTC.TP_CONTAS = 'E', MT.VL_DOCUMENTO * -1, MT.VL_DOCUMENTO) VL_DOCUMENTO {#10}
FROM PROCESSO P {#10}
INNER JOIN MOVTOCAIXA MT on (MT.CD_EMPRPROC = P.CD_EMPRESA {#10}
AND MT.NR_PROCESSO = P.NR_PROCESSO {#10}
AND MT.TP_DOCUMENTO = 'AV') {#10}
LEFT JOIN VIEW_PARMSALDO(P.CD_EMPRESA, coalesce(MT.CD_CONTADEBITO,MT.CD_CONTACREDITO), 'X', null) PM on (1 = 1) {#10}
INNER JOIN CONTAS CTC ON (CTC.CD_EMPRESA = MT.CD_EMPRCONTAS {#10}
AND CTC.NR_LANCAMENTO = MT.NR_LANCAMENTO {#10}
AND CTC.CD_PESSOA = MT.CD_PESSOA {#10}
AND CTC.CD_TIPOCONTA = MT.CD_TIPOCONTA {#10}
AND CTC.NR_PARCELA = MT.NR_PARCELA) {#10}
WHERE PM.TP_SALDO = 'X' {#10}
AND P.CD_EMPRESA = {iParametros[1] +#10}
AND P.NR_PROCESSO = {iParametros[2]}

Tabelas Utilizadas​

TabelaUso
AGENCIAreferenciada nas queries do layout
BANCOreferenciada nas queries do layout
CHEQUEreferenciada nas queries do layout
CONTASreferenciada nas queries do layout
CONTASHISTORICOreferenciada nas queries do layout
HISTORICOreferenciada nas queries do layout
MOVTOCAIXAreferenciada nas queries do layout
MOVTOPROCESSOreferenciada nas queries do layout
PARMSALDOreferenciada nas queries do layout
PESSOAreferenciada nas queries do layout
PROCESSOreferenciada nas queries do layout
VIEW_PARMSALDOreferenciada nas queries do layout

Shared Units​

  • jCommon
  • jPesquisa

Fonte​

  • Unit: source/LPR002/ULPR002.pas
  • DFM: source/LPR002/ULPR002.dfm
  • Package: source/LPR002/LPR002.dpk