LCX029 — Listagem LCX029
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 VIEW_DIARIOCAIXA, 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 VD.DS_EMPRESA, VD.CD_USUARIO||' - '||VD.NM_USUARIO DS_USUARIO, VD.NR_CONTROLE, VD.DT_ABERTURA, VD.DT_FECHAMENTO, VD.VL_ABERTURA, VD.DS_COMPLEMENTO, VD.VL_DEBITO, VD.VL_CREDITO, VD.VL_MOVIMENTO, VD.VL_FECHAMENTO
FROM VIEW_DIARIOCAIXA(1, '01/01/1900', '01/01/2099', '
AND MOVTOCAIXA.NR_CONTROLE = 25 ') VD
ORDER BY VD.NR_LANCCAIXA
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
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, P.NM_PESSOA DS_TIPOSALDO
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
SELECT X.CD_USUARIO, X.DT_ABERTURA, CAST(COALESCE(X.DT_FECHAMENTO,CURRENT_TIMESTAMP) AS DOM_TIMESTAMP) DT_FECHAMENTO, X.VL_ABERTURA, X.VL_FECHAMENTO, X.NR_CONTROLE, X.CD_USUARIO||' - '||U.NM_USUARIO DS_USUARIO
FROM CAIXA X
LEFT JOIN USUARIO U ON (U.CD_USUARIO = X.CD_USUARIO)
WHERE X.CD_EMPRESA = {iParametros}
Caixa #2
SELECT 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' WHEN 'B' THEN 'BANCO' ELSE 'CHEQUE' END DS_TIPOSALDO
FROM VIEW_DIARIOCAIXA(NULL, { 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)' WHEN 'B' THEN 'BANCO' 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
FROM VIEW_DIARIOCAIXA(NULL, { Nulo}
TabPrazo
SELECT P.NM_PESSOA, C.NR_DOCUMENTO, SUM(C.VL_SALDO) VL_SALDO, {CHR}
Text #1
SELECT X.CD_USUARIO, X.DT_ABERTURA, CAST(COALESCE(X.DT_FECHAMENTO,CURRENT_TIMESTAMP) AS DOM_TIMESTAMP) DT_FECHAMENTO, X.VL_ABERTURA, X.VL_FECHAMENTO, X.NR_CONTROLE, X.CD_USUARIO||' - '||U.NM_USUARIO DS_USUARIO
FROM CAIXA X
LEFT JOIN USUARIO U ON (U.CD_USUARIO = X.CD_USUARIO)
WHERE X.CD_EMPRESA = {iParametros[1]}
AND X.NR_CONTROLE = {iParametros[2]}
Text #2
SELECT 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' WHEN 'B' THEN 'BANCO' ELSE 'CHEQUE' END DS_TIPOSALDO
FROM VIEW_DIARIOCAIXA(NULL, { Nulo(Dt_Inicial,}D{)}, { Nulo(Dt_Final,}D{)}, { Nulo(}
AND MX.CD_EMPRCONTROLE = {iParametros[1]}
AND MX.NR_CONTROLE = {iParametros[2]}
AND MX.CD_USUARIO = {Nulo(Cd_Usuario,}S{)}
AND PARMSALDO.TP_SALDO IN ('X','T','R','P','B') {,}S{)}) 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, VD.DS_COMPLEMENTO, VD.NR_LANCCAIXA
Text #3
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)' WHEN 'B' THEN 'BANCO' 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
FROM VIEW_DIARIOCAIXA(NULL, { Nulo(Dt_Inicial,}D{)}, { Nulo(Dt_Final,}D{)}, { Nulo(}
AND MX.CD_EMPRCONTROLE = {iParametros[1]}
AND MX.NR_CONTROLE = {iParametros[2]}
AND MX.CD_USUARIO = {Nulo(Cd_Usuario,}S{)}
AND PARMSALDO.TP_SALDO IN ('X','T','R','P','B') {,}S{)}) VD
GROUP BY VD.CD_EMPRESA, VD.TP_SALDO
UNION ALL
SELECT VD.CD_EMPRESA, SUM(VD.VL_CREDITO) VL_DEBITO, SUM(VD.VL_DEBITO) 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 'E' THEN COALESCE(VD.VL_DEBITO,0) ELSE 0 END AS NUMERIC(15,2))) VL_CREDCAIXA, SUM(CAST(CASE VD.TP_SALDO WHEN 'E' THEN COALESCE(VD.VL_CREDITO,0) ELSE 0 END AS NUMERIC(15,2))) VL_DEBCAIXA, CAST(0 AS NUMERIC(15,2)) VL_DINHEIRO
FROM VIEW_DIARIOCAIXA(NULL, { Nulo(Dt_Inicial,}D{)}, { Nulo(Dt_Final,}D{)}, { Nulo(}
AND MX.CD_USUARIO = {Nulo(Cd_Usuario,}S{)}
AND PARMSALDO.TP_SALDO ='E' {,}S{)}) VD
GROUP BY VD.CD_EMPRESA, VD.TP_SALDO
ORDER BY 3, 1
Text #4
SELECT P.NM_PESSOA, C.NR_DOCUMENTO, SUM(C.VL_SALDO) VL_SALDO, {CHR(10)}CASE T.TP_TIPOCONTA WHEN 'CR' THEN 'Duplicata' WHEN 'HR' THEN 'Cheque' ELSE 'Cartão' END DS_TIPOSALDO {CHR(10)}
FROM CONTAS C {CHR(10)}
INNER JOIN PESSOA P ON (P.CD_PESSOA = C.CD_PESSOA) {CHR(10)}
INNER JOIN TIPOCONTA T ON (T.CD_TIPOCONTA = C.CD_TIPOCONTA) {CHR(10)}
WHERE C.CD_EMPRESA = {iParametros[1] + CHR(10)}
AND C.NR_CONTROLE = {iParametros[2] + CHR(10)}
AND C.DT_VENCIMENTO > C.DT_LANCAMENTO {CHR(10)}
AND C.ST_CONTAS IN ('T', 'P') {CHR(10)}
AND T.TP_TIPOCONTA IN ('CR','HR','CT') {CHR(10)}
AND C.TP_DOCUMENTO NOT IN ('AD', 'RP') {CHR(10)}
GROUP BY P.NM_PESSOA, C.NR_DOCUMENTO, CASE T.TP_TIPOCONTA WHEN 'CR' THEN 'Duplicata' WHEN 'HR' THEN 'Cheque' ELSE 'Cartão' END {CHR(10)}
ORDER BY P.NM_PESSOA, C.NR_DOCUMENTO
Tabelas Utilizadas
| Tabela | Uso |
|---|---|
CAIXA | referenciada nas queries do layout |
CONTAS | referenciada nas queries do layout |
PESSOA | referenciada nas queries do layout |
TIPOCONTA | referenciada nas queries do layout |
USUARIO | referenciada nas queries do layout |
VIEW_DIARIOCAIXA | referenciada nas queries do layout |
Shared Units
- jCommon
- jPesquisa
Fonte
- Unit:
source/LCX029/ULCX029.pas - DFM:
source/LCX029/ULCX029.dfm - Package:
source/LCX029/LCX029.dpk