LCX034 — Listagem LCX034
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, 'M' TP_QUEBRA, VD.NR_RECIBO
FROM VIEW_DIARIOCAIXA(1, '01/01/1900', '01/01/2099', '
AND MX.NR_CONTROLE = 15 ') 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
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
Caixa #2
SELECT VD.DS_EMPRESA, CAST(VD.CD_USUARIO||' - '||VD.NM_USUARIO AS VARCHAR(70)) DS_USUARIO, VD.NR_CONTROLE, {#10} VD.DT_ABERTURA, VD.DT_FECHAMENTO, VD.VL_ABERTURA, {#10} VD.DS_COMPLEMENTO, VD.VL_DEBITO, VD.VL_CREDITO, {#10} VD.VL_MOVIMENTO, VD.VL_FECHAMENTO, VD.CD_EMPRESA, {#10} CASE VD.TP_SALDO WHEN 'X' THEN 'CAIXA' {#10} WHEN 'T' THEN 'CARTÃO DE CRÉDITO' {#10} ELSE 'CHEQUE' END DS_TIPOSALDO, {#10}VD.DS_CONTA, CASE C.TP_PAGTOCARTAO WHEN 'P' THEN 'Crédito a Prazo' WHEN 'D' THEN 'Débito a vista' {#10} WHEN 'C' THEN 'Crédito a vista' END || {#10} COALESCE(' - '||CASE C.TP_PAGTOCARTAO WHEN 'P' THEN O.DS_CONDPAGTO END,'') DS_CARTAO{#10}
FROM VIEW_DIARIOCAIXA({iParametros}
TabPrazo
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)
INNER JOIN TIPOCONTA T ON (T.CD_TIPOCONTA = C.CD_TIPOCONTA)
WHERE C.CD_EMPRESA = {iParametros}
TabProduto
SELECT P.CD_ITEM, P.DS_ITEM, SUM(I.VL_LIQUIDO) VL_TOTAL, SUM(COALESCE(I.QT_ITEMNOTA,I.PS_ITEMNOTA)) QT_TOTAL
FROM CONTAS C
INNER JOIN NOTA N ON (N.CD_EMPRESA = C.CD_EMPRESA
AND N.NR_LANCAMENTO = C.NR_LANCTONOTA
AND N.CD_SERIE = C.CD_SERIE
AND N.TP_NOTA = C.TP_CONTAS
AND N.CD_PESSOA = C.CD_PESSOA
AND N.ST_NOTA = 'V'
AND N.TP_NOTA = 'S')
INNER JOIN ITEMNOTA I ON (N.CD_EMPRESA = I.CD_EMPRESA
AND N.NR_LANCAMENTO = I.NR_LANCAMENTO
AND N.CD_SERIE = I.CD_SERIE
AND N.TP_NOTA = I.TP_NOTA)
INNER JOIN ITEM P ON (P.CD_ITEM = I.CD_ITEM)
WHERE C.CD_EMPRESA = {iParametros}
tabFechamento
SELECT E.NM_EMPRESA DS_EMPRESA, CAST(U.CD_USUARIO||' - '||U.NM_USUARIO AS VARCHAR(70)) DS_USUARIO, C.NR_CONTROLE, C.DT_ABERTURA, C.DT_FECHAMENTO, C.VL_ABERTURA, NULL DS_COMPLEMENTO, 0 VL_DEBITO, 0 VL_CREDITO, C.VL_MOVIMENTO, C.VL_FECHAMENTO, C.CD_EMPRESA, 'CAIXA' DS_TIPOSALDO
FROM CAIXA C
INNER JOIN EMPRESA E ON (E.CD_EMPRESA = C.CD_EMPRESA)
INNER JOIN USUARIO U ON (U.CD_USUARIO = C.CD_USUARIO)
WHERE C.CD_EMPRESA = {iParametros}
Text #1
SELECT VD.DS_EMPRESA, CAST(VD.CD_USUARIO||' - '||VD.NM_USUARIO AS VARCHAR(70)) DS_USUARIO, VD.NR_CONTROLE, {#10} VD.DT_ABERTURA, VD.DT_FECHAMENTO, VD.VL_ABERTURA, {#10} VD.DS_COMPLEMENTO, VD.VL_DEBITO, VD.VL_CREDITO, {#10} VD.VL_MOVIMENTO, VD.VL_FECHAMENTO, VD.CD_EMPRESA, {#10} CASE VD.TP_SALDO WHEN 'X' THEN 'CAIXA' {#10} WHEN 'T' THEN 'CARTÃO DE CRÉDITO' {#10} ELSE 'CHEQUE' END DS_TIPOSALDO, {#10}VD.DS_CONTA, CASE C.TP_PAGTOCARTAO WHEN 'P' THEN 'Crédito a Prazo' WHEN 'D' THEN 'Débito a vista' {#10} WHEN 'C' THEN 'Crédito a vista' END || {#10} COALESCE(' - '||CASE C.TP_PAGTOCARTAO WHEN 'P' THEN O.DS_CONDPAGTO END,'') DS_CARTAO{#10}
FROM VIEW_DIARIOCAIXA({iParametros[1]}, {#10} '01/01/1900', {#10} '12/31/2099', {#10} '
AND MX.NR_CONTROLE = {iParametros[2]}
AND PARMSALDO.TP_SALDO IN (''X'',''T'',''R'',''P'') ') VD {#10}
LEFT JOIN VIEW_PARMSALDO(VD.CD_EMPRESA, VD.CD_CONTA, VD.TP_SALDO, VD.CD_USUARIO) P ON (1 = 1) {#10}
LEFT JOIN CHEQUE C ON (C.CD_EMPRCAIXA = VD.CD_EMPRESA{#10}
AND C.NR_LANCCAIXA = VD.NR_LANCCAIXA){#10}
LEFT JOIN CONDPAGTO O ON (O.CD_CONDPAGTO = C.CD_CONDPAGTO){#10}
WHERE P.TP_SALDO <> 'I'
AND CASE WHEN VD.TP_SALDO IN ('T','R','P')
AND COALESCE(VD.VL_CREDITO,0) > 0 THEN 0 ELSE 1 END = 1
GROUP BY VD.DS_EMPRESA, DS_USUARIO, VD.NR_CONTROLE, {#10} VD.DT_ABERTURA, VD.DT_FECHAMENTO, VD.VL_ABERTURA, {#10} VD.DS_COMPLEMENTO, VD.VL_DEBITO, VD.VL_CREDITO, {#10} VD.VL_MOVIMENTO, VD.VL_FECHAMENTO, VD.CD_EMPRESA, {#10} DS_TIPOSALDO, {#10} VD.DS_CONTA, C.TP_PAGTOCARTAO, DS_CARTAO, VD.NR_LANCCAIXA {#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, VD.DS_COMPLEMENTO, VD.NR_LANCCAIXA
Text #2
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)
INNER JOIN TIPOCONTA T ON (T.CD_TIPOCONTA = C.CD_TIPOCONTA)
WHERE C.CD_EMPRESA = {iParametros[1]}
AND C.NR_CONTROLE = {iParametros[2]}
AND C.DT_VENCIMENTO > C.DT_LANCAMENTO
AND C.ST_CONTAS IN ('T', 'P')
AND T.TP_TIPOCONTA = 'CR'
GROUP BY P.NM_PESSOA, C.NR_DOCUMENTO
ORDER BY P.NM_PESSOA, C.NR_DOCUMENTO
Text #3
SELECT P.CD_ITEM, P.DS_ITEM, SUM(I.VL_LIQUIDO) VL_TOTAL, SUM(COALESCE(I.QT_ITEMNOTA,I.PS_ITEMNOTA)) QT_TOTAL
FROM CONTAS C
INNER JOIN NOTA N ON (N.CD_EMPRESA = C.CD_EMPRESA
AND N.NR_LANCAMENTO = C.NR_LANCTONOTA
AND N.CD_SERIE = C.CD_SERIE
AND N.TP_NOTA = C.TP_CONTAS
AND N.CD_PESSOA = C.CD_PESSOA
AND N.ST_NOTA = 'V'
AND N.TP_NOTA = 'S')
INNER JOIN ITEMNOTA I ON (N.CD_EMPRESA = I.CD_EMPRESA
AND N.NR_LANCAMENTO = I.NR_LANCAMENTO
AND N.CD_SERIE = I.CD_SERIE
AND N.TP_NOTA = I.TP_NOTA)
INNER JOIN ITEM P ON (P.CD_ITEM = I.CD_ITEM)
WHERE C.CD_EMPRESA = {iParametros[1]}
AND C.NR_CONTROLE = {iParametros[2]}
AND C.NR_PARCELA = 1
GROUP BY P.CD_ITEM, P.DS_ITEM
ORDER BY P.CD_ITEM, P.DS_ITEM
Text #4
SELECT E.NM_EMPRESA DS_EMPRESA, CAST(U.CD_USUARIO||' - '||U.NM_USUARIO AS VARCHAR(70)) DS_USUARIO, C.NR_CONTROLE, C.DT_ABERTURA, C.DT_FECHAMENTO, C.VL_ABERTURA, NULL DS_COMPLEMENTO, 0 VL_DEBITO, 0 VL_CREDITO, C.VL_MOVIMENTO, C.VL_FECHAMENTO, C.CD_EMPRESA, 'CAIXA' DS_TIPOSALDO
FROM CAIXA C
INNER JOIN EMPRESA E ON (E.CD_EMPRESA = C.CD_EMPRESA)
INNER JOIN USUARIO U ON (U.CD_USUARIO = C.CD_USUARIO)
WHERE C.CD_EMPRESA = {iParametros[1]}
AND C.NR_CONTROLE = {iParametros[2]}
Tabelas Utilizadas
| Tabela | Uso |
|---|---|
CAIXA | referenciada nas queries do layout |
CHEQUE | referenciada nas queries do layout |
CONDPAGTO | referenciada nas queries do layout |
CONTAS | referenciada nas queries do layout |
EMPRESA | referenciada nas queries do layout |
ITEM | referenciada nas queries do layout |
ITEMNOTA | referenciada nas queries do layout |
NOTA | 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 |
VIEW_PARMSALDO | referenciada nas queries do layout |
Shared Units
- jCommon
- jPesquisa
Fonte
- Unit:
source/LCX034/ULCX034.pas - DFM:
source/LCX034/ULCX034.dfm - Package:
source/LCX034/LCX034.dpk