Pular para o conteúdo principal

LCX013 — Listagem LCX013

Visão Geral​

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

Descrição​

Consulta baseada em RETORNA_TIPOLANCAMENTO, com junção em PESSOA, filtrada por CD_EMPRESA, NR_CONTROLE, DT_VENCIMENTO, ST_CONTAS.

Chamada​

ExecLayout(Connection, [
// 0 - Nome do Layout de Duplicata
// 1 - Empresa
// 2 - Controle Caixa
// 3 - Visualiza -> V ou Imprime -> I
// 4 - Impressora do Parametro
]);

SQL Base​

Caixa #1​

SELECT (
SELECT O_TIPO
FROM RETORNA_TIPOLANCAMENTO(VD.CD_EMPRESA, VD.NR_PROCESSO)) TP_LANCAMENTO_CAIXA, VD.CD_EMPRESA, VD.DS_EMPRESA, VD.CD_USUARIO||' - '||VD.NM_USUARIO DS_USUARIO, VD.DT_ABERTURA, VD.DT_FECHAMENTO, VD.VL_ABERTURA, VD.NR_CONTROLE, VD.DS_COMPLEMENTO, VD.VL_DEBITO, VD.VL_CREDITO, VD.VL_MOVIMENTO, VD.VL_FECHAMENTO, VD.NR_LANCCAIXA, CASE VD.TP_SALDO WHEN 'X' THEN 'CAIXA' WHEN 'T' THEN 'CARTÃO DE CRÉDITO' ELSE 'CHEQUE' END DS_TIPOSALDO
FROM VIEW_DIARIOCAIXA(NULL, :Dt_Inicial, :Dt_Final, '
AND MOVTOCAIXA.NR_CONTROLE = 82
AND MOVTOCAIXA.CD_EMPRCONTROLE = 1
AND PARMSALDO.TP_SALDO IN (''X'',''T'',''R'',''P'')') VD
ORDER BY VD.CD_EMPRESA, CASE VD.TP_SALDO WHEN 'X' THEN 'CAIXA' WHEN 'T' THEN 'CARTÃO DE CRÉDITO' ELSE 'CHEQUE' END, 1, VD.DS_COMPLEMENTO, VD.NR_LANCCAIXA Dt_Inicial Dt_Final
SELECT P.NM_PESSOA, C.NR_DOCUMENTO, SUM(C.VL_SALDO) VL_SALDO
FROM CONTAS C
INNER JOIN PESSOA P ON (P.CD_PESSOA = C.CD_PESSOA)
WHERE C.CD_EMPRESA = 1
AND C.NR_CONTROLE = 25
AND C.DT_VENCIMENTO > C.DT_LANCAMENTO
AND C.ST_CONTAS IN ('T', 'P')
GROUP BY P.NM_PESSOA, C.NR_DOCUMENTO
ORDER BY P.NM_PESSOA, C.NR_DOCUMENTO
SELECT P.NM_PESSOA, C.NR_DOCUMENTO, SUM(C.VL_SALDO) VL_SALDO, 2 teste
FROM CONTAS C
INNER JOIN PESSOA P ON (P.CD_PESSOA = C.CD_PESSOA)
WHERE C.CD_EMPRESA = 1
AND C.NR_CONTROLE = 25
AND C.DT_VENCIMENTO > C.DT_LANCAMENTO
AND C.ST_CONTAS IN ('T', 'P')
GROUP BY P.NM_PESSOA, C.NR_DOCUMENTO
ORDER BY P.NM_PESSOA, C.NR_DOCUMENTO
SELECT P.NM_PESSOA, C.NR_DOCUMENTO, SUM(C.VL_SALDO) VL_SALDO
FROM CONTAS C
INNER JOIN PESSOA P ON (P.CD_PESSOA = C.CD_PESSOA)
WHERE C.CD_EMPRESA = 1
AND C.NR_CONTROLE = 25
AND C.DT_VENCIMENTO > C.DT_LANCAMENTO
AND C.ST_CONTAS IN ('T', 'P')
GROUP BY P.NM_PESSOA, C.NR_DOCUMENTO
ORDER BY P.NM_PESSOA, C.NR_DOCUMENTO

tabFechamento #1​

SELECT X.CD_USUARIO, X.DT_ABERTURA, CAST(COALESCE(X.DT_FECHAMENTO,CURRENT_TIMESTAMP) AS DOM_TIMESTAMP) DT_FECHAMENTO, {#10} X.VL_ABERTURA, X.VL_FECHAMENTO, X.NR_CONTROLE, {#10} X.CD_USUARIO||' - '||U.NM_USUARIO DS_USUARIO, {#10} 'Movimentações a Vista' TP_LANCAMENTO_CAIXA, 0.00 VL_SALDOGERALDIA
FROM CAIXA X
INNER JOIN USUARIO U ON (U.CD_USUARIO = X.CD_USUARIO) {#10}
WHERE X.CD_EMPRESA = {iParametros}

tabFechamento #2​

SELECT X.CD_USUARIO, X.DT_ABERTURA, CAST(COALESCE(X.DT_FECHAMENTO,CURRENT_TIMESTAMP) AS DOM_TIMESTAMP) DT_FECHAMENTO, {#10} X.VL_ABERTURA, X.VL_FECHAMENTO, X.NR_CONTROLE, {#10} X.CD_USUARIO||' - '||U.NM_USUARIO DS_USUARIO, {#10} 'Movimentações a Vista' TP_LANCAMENTO_CAIXA, {Nulo}

Caixa #2​

SELECT (
SELECT CASE O_TIPO {#10} WHEN 'A' THEN 'Lançamento Avulso' {#10} WHEN 'V' THEN 'Lançamento a Vista' {#10} WHEN 'P' THEN 'Recebimento Contas' END {#10}
FROM RETORNA_TIPOLANCAMENTO(VD.CD_EMPRESA, VD.NR_PROCESSO)) {#10} TP_LANCAMENTO_CAIXA, {#10} VD.CD_EMPRESA, VD.DS_EMPRESA, VD.CD_USUARIO||' - '||VD.NM_USUARIO DS_USUARIO, {#10} VD.DT_ABERTURA, VD.DT_FECHAMENTO, VD.VL_ABERTURA, VD.NR_CONTROLE, {#10} VD.DS_COMPLEMENTO, VD.VL_DEBITO, VD.VL_CREDITO, {#10} VD.VL_MOVIMENTO, VD.VL_FECHAMENTO, VD.NR_LANCCAIXA, {#10} CASE VD.TP_SALDO WHEN 'X' THEN 'CAIXA' {#10} WHEN 'T' THEN 'CARTÃO DE CRÉDITO' {#10} ELSE 'CHEQUE' END DS_TIPOSALDO, 111 teste, {#10}CASE COALESCE(VD.TP_SALDO,'X') WHEN 'X' THEN {Nulo}

tabResumo​

SELECT VD.CD_EMPRESA, SUM(VD.VL_DEBITO) VL_DEBITO, SUM(VD.VL_CREDITO) VL_CREDITO, CASE VD.TP_SALDO WHEN 'X' THEN 'CAIXA' WHEN 'T' THEN 'CARTÃO DE CRÉDITO' WHEN 'E' THEN 'TRANSFERÊNCIA CAIXA(SANGRIA E TROCO)' ELSE 'CHEQUE' END DS_TIPOSALDO, SUM(CAST(CASE VD.TP_SALDO WHEN 'X' THEN COALESCE(VD.VL_CREDITO,0) ELSE 0 END AS NUMERIC(15,2))) VL_CREDCAIXA, SUM(CAST(CASE VD.TP_SALDO WHEN 'X' THEN COALESCE(VD.VL_DEBITO,0) ELSE 0 END AS NUMERIC(15,2))) VL_DEBCAIXA, SUM(CAST(CASE VD.TP_SALDO WHEN 'X' THEN (COALESCE(VD.VL_DEBITO,0) - COALESCE(VD.VL_CREDITO,0)) ELSE 0 END AS NUMERIC(15,2))) VL_DINHEIRO, (
SELECT FIRST 1 E.VL_SALDOGERAL {#10}
FROM EXTRATO_CAIXA ({iParametros}

TabPrazo​

SELECT P.NM_PESSOA, C.NR_DOCUMENTO, SUM(C.VL_DOCUMENTO) VL_SALDO
FROM CONTAS C
INNER JOIN PESSOA P ON (P.CD_PESSOA = C.CD_PESSOA)
INNER JOIN TIPOCONTA T ON (T.CD_TIPOCONTA = C.CD_TIPOCONTA)
WHERE C.CD_EMPRCONTROLE = {iParametros}

Text #1​

SELECT X.CD_USUARIO, X.DT_ABERTURA, CAST(COALESCE(X.DT_FECHAMENTO,CURRENT_TIMESTAMP) AS DOM_TIMESTAMP) DT_FECHAMENTO, {#10} X.VL_ABERTURA, X.VL_FECHAMENTO, X.NR_CONTROLE, {#10} X.CD_USUARIO||' - '||U.NM_USUARIO DS_USUARIO, {#10} 'Movimentações a Vista' TP_LANCAMENTO_CAIXA, 0.00 VL_SALDOGERALDIA
FROM CAIXA X
INNER JOIN USUARIO U ON (U.CD_USUARIO = X.CD_USUARIO) {#10}
WHERE X.CD_EMPRESA = {iParametros[1] +#10}
AND X.NR_CONTROLE = {iParametros[2]}

Consulta​

SELECT FIRST 1 E.VL_SALDOGERAL {#10}
FROM EXTRATO_CAIXA ({iParametros[1]}, {#10 + Nulo(Dt_Inicial,}D{)}, {#10 + Nulo(Dt_Final,}D{)}, {#10 + Nulo(}N{,}S{)}, {#10 + Nulo(}
AND PARMSALDO.TP_SALDO = 'X' {,}S{)},'') E
ORDER BY E.NR_LANCCAIXA DESC

Text #2​

SELECT X.CD_USUARIO, X.DT_ABERTURA, CAST(COALESCE(X.DT_FECHAMENTO,CURRENT_TIMESTAMP) AS DOM_TIMESTAMP) DT_FECHAMENTO, {#10} X.VL_ABERTURA, X.VL_FECHAMENTO, X.NR_CONTROLE, {#10} X.CD_USUARIO||' - '||U.NM_USUARIO DS_USUARIO, {#10} 'Movimentações a Vista' TP_LANCAMENTO_CAIXA, {Nulo(iVL_SALDODIA,}F{)} VL_SALDOGERALDIA
FROM CAIXA X
INNER JOIN USUARIO U ON (U.CD_USUARIO = X.CD_USUARIO) {#10}
WHERE X.CD_EMPRESA = {iParametros[1] +#10}
AND X.NR_CONTROLE = {iParametros[2]}

Text #3​

SELECT (
SELECT CASE O_TIPO {#10} WHEN 'A' THEN 'Lançamento Avulso' {#10} WHEN 'V' THEN 'Lançamento a Vista' {#10} WHEN 'P' THEN 'Recebimento Contas' END {#10}
FROM RETORNA_TIPOLANCAMENTO(VD.CD_EMPRESA, VD.NR_PROCESSO)) {#10} TP_LANCAMENTO_CAIXA, {#10} VD.CD_EMPRESA, VD.DS_EMPRESA, VD.CD_USUARIO||' - '||VD.NM_USUARIO DS_USUARIO, {#10} VD.DT_ABERTURA, VD.DT_FECHAMENTO, VD.VL_ABERTURA, VD.NR_CONTROLE, {#10} VD.DS_COMPLEMENTO, VD.VL_DEBITO, VD.VL_CREDITO, {#10} VD.VL_MOVIMENTO, VD.VL_FECHAMENTO, VD.NR_LANCCAIXA, {#10} CASE VD.TP_SALDO WHEN 'X' THEN 'CAIXA' {#10} WHEN 'T' THEN 'CARTÃO DE CRÉDITO' {#10} ELSE 'CHEQUE' END DS_TIPOSALDO, 111 teste, {#10}CASE COALESCE(VD.TP_SALDO,'X') WHEN 'X' THEN {Nulo ( iVL_SALDODIA,}F{)} ELSE 0 END VL_SALDOGERALDIA
FROM VIEW_DIARIOCAIXA(NULL, {Nulo(Dt_Inicial,}D{)}, {#10+ Nulo(Dt_Final,}D{)}, {#10+ Nulo(}
AND MX.NR_CONTROLE = {iParametros[2] +#10}
AND MX.CD_EMPRCONTROLE = {iParametros[1] +#10}
AND PARMSALDO.TP_SALDO IN ('X','T','R','P') {,}S{)}) VD {#10}
ORDER BY VD.CD_EMPRESA, CASE VD.TP_SALDO WHEN 'X' THEN 'CAIXA' WHEN 'T' THEN 'CARTÃO DE CRÉDITO' ELSE 'CHEQUE' END, {#10} 1, VD.DS_COMPLEMENTO, VD.NR_LANCCAIXA

Text #4​

SELECT VD.CD_EMPRESA, SUM(VD.VL_DEBITO) VL_DEBITO, SUM(VD.VL_CREDITO) VL_CREDITO, CASE VD.TP_SALDO WHEN 'X' THEN 'CAIXA' WHEN 'T' THEN 'CARTÃO DE CRÉDITO' WHEN 'E' THEN 'TRANSFERÊNCIA CAIXA(SANGRIA E TROCO)' ELSE 'CHEQUE' END DS_TIPOSALDO, SUM(CAST(CASE VD.TP_SALDO WHEN 'X' THEN COALESCE(VD.VL_CREDITO,0) ELSE 0 END AS NUMERIC(15,2))) VL_CREDCAIXA, SUM(CAST(CASE VD.TP_SALDO WHEN 'X' THEN COALESCE(VD.VL_DEBITO,0) ELSE 0 END AS NUMERIC(15,2))) VL_DEBCAIXA, SUM(CAST(CASE VD.TP_SALDO WHEN 'X' THEN (COALESCE(VD.VL_DEBITO,0) - COALESCE(VD.VL_CREDITO,0)) ELSE 0 END AS NUMERIC(15,2))) VL_DINHEIRO, (
SELECT FIRST 1 E.VL_SALDOGERAL {#10}
FROM EXTRATO_CAIXA ({iParametros[1]}, {#10 + Nulo(Dt_Inicial,}D{)}, {#10 + Nulo(Dt_Final,}D{)}, {#10 + Nulo(}N{,}S{)}, {#10 + Nulo(}
AND MX.NR_CONTROLE = {iParametros[2]}
AND MX.CD_EMPRCONTROLE = {iParametros[1]}
AND COALESCE(PARMSALDO.TP_SALDO,'I') <> 'I' {,}S{)},'') E
ORDER BY 1 DESC )VL_SALDOGERAL {#10}
FROM VIEW_DIARIOCAIXA(NULL, {Nulo(Dt_Inicial,}D{)}, { Nulo(Dt_Final,}D{)}, { Nulo(}
AND MX.NR_CONTROLE = {iParametros[2]}
AND MX.CD_EMPRCONTROLE = {iParametros[1]}
AND PARMSALDO.TP_SALDO IN ('X','T','R','P') {,}S{)}) VD
GROUP BY VD.CD_EMPRESA, VD.TP_SALDO
ORDER BY 3, 1

Text #5​

SELECT P.NM_PESSOA, C.NR_DOCUMENTO, SUM(C.VL_DOCUMENTO) VL_SALDO
FROM CONTAS C
INNER JOIN PESSOA P ON (P.CD_PESSOA = C.CD_PESSOA)
INNER JOIN TIPOCONTA T ON (T.CD_TIPOCONTA = C.CD_TIPOCONTA)
WHERE C.CD_EMPRCONTROLE = {iParametros[1]}
AND C.NR_CONTROLE = {iParametros[2]}
AND C.DT_VENCIMENTO > C.DT_LANCAMENTO
AND T.TP_TIPOCONTA = 'CR'
AND C.ST_CONTAS <> 'C'
GROUP BY P.NM_PESSOA, C.NR_DOCUMENTO
ORDER BY P.NM_PESSOA, C.NR_DOCUMENTO

Tabelas Utilizadas​

TabelaUso
CAIXAreferenciada nas queries do layout
CONTASreferenciada nas queries do layout
EXTRATO_CAIXAreferenciada nas queries do layout
PESSOAreferenciada nas queries do layout
RETORNA_TIPOLANCAMENTOreferenciada nas queries do layout
TIPOCONTAreferenciada nas queries do layout
USUARIOreferenciada nas queries do layout
VIEW_DIARIOCAIXAreferenciada nas queries do layout

Shared Units​

  • jCommon
  • jPesquisa

Fonte​

  • Unit: source/LCX013/ULCX013.pas
  • DFM: source/LCX013/ULCX013.dfm
  • Package: source/LCX013/LCX013.dpk