Pular para o conteúdo principal

LCX014 — Listagem LCX014

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, VD.DT_ABERTURA, VD.DT_FECHAMENTO, VD.VL_ABERTURA, VD.DS_COMPLEMENTO, VD.VL_DEBITO, VD.VL_CREDITO, VD.VL_MOVIMENTO, VD.VL_FECHAMENTO, VD.CD_EMPRESA, CASE VD.TP_SALDO WHEN 'X' THEN 'CAIXA' WHEN 'T' THEN 'CARTÃO DE CRÉDITO' ELSE 'CHEQUE' END DS_TIPOSALDO
FROM VIEW_DIARIOCAIXA({iParametros}

Caixa #3​

SELECT CAST(E.CD_EMPRESA AS VARCHAR(10)) || ' - ' || E.NM_EMPRESA || ' ' || P.NR_CNPJCPF DS_EMPRESA, {#10} CAST(NULL AS DOM_DATE) DT_LANCAMENTO, CAST(NULL AS DOM_INTEGER) CD_CONTA, CAST(NULL AS DOM_INTEGER) NR_PROCESSO, {#10} CAST(NULL AS DOM_INTEGER) NR_RECIBO, CAST(NULL AS VARCHAR(10)) DS_CONTA, CAST(NULL AS DOM_INTEGER) NR_LANCCAIXA, {#10} CAST(NULL AS DOM_INTEGER) CD_HISTORICO, CAST(NULL AS VARCHAR(10)) DS_HISTORICO, NULL DS_COMPLEMENTO, {#10} CAST(NULL AS DOM_INTEGER) NR_DOCUMENTO, NULL DS_COMPLEMENTO1, 0 VL_DEBITO, 0 VL_CREDITO, {#10} {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, VD.DT_ABERTURA, VD.DT_FECHAMENTO, VD.VL_ABERTURA, VD.DS_COMPLEMENTO, VD.VL_DEBITO, VD.VL_CREDITO, VD.VL_MOVIMENTO, VD.VL_FECHAMENTO, VD.CD_EMPRESA, CASE VD.TP_SALDO WHEN 'X' THEN 'CAIXA' WHEN 'T' THEN 'CARTÃO DE CRÉDITO' ELSE 'CHEQUE' END DS_TIPOSALDO
FROM VIEW_DIARIOCAIXA({iParametros[1]}, '01/01/1900', '12/31/2099', '
AND MX.NR_CONTROLE = {iParametros[2]}
AND PARMSALDO.TP_SALDO IN (''X'',''T'',''R'',''P'') ') VD
LEFT JOIN VIEW_PARMSALDO(VD.CD_EMPRESA, VD.CD_CONTA, VD.TP_SALDO, VD.CD_USUARIO) P ON (1 = 1)
WHERE P.TP_SALDO <> 'I'
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 CAST(E.CD_EMPRESA AS VARCHAR(10)) || ' - ' || E.NM_EMPRESA || ' ' || P.NR_CNPJCPF DS_EMPRESA, {#10} CAST(NULL AS DOM_DATE) DT_LANCAMENTO, CAST(NULL AS DOM_INTEGER) CD_CONTA, CAST(NULL AS DOM_INTEGER) NR_PROCESSO, {#10} CAST(NULL AS DOM_INTEGER) NR_RECIBO, CAST(NULL AS VARCHAR(10)) DS_CONTA, CAST(NULL AS DOM_INTEGER) NR_LANCCAIXA, {#10} CAST(NULL AS DOM_INTEGER) CD_HISTORICO, CAST(NULL AS VARCHAR(10)) DS_HISTORICO, NULL DS_COMPLEMENTO, {#10} CAST(NULL AS DOM_INTEGER) NR_DOCUMENTO, NULL DS_COMPLEMENTO1, 0 VL_DEBITO, 0 VL_CREDITO, {#10} {iParametros[2]} NR_CONTROLE, U.CD_USUARIO, CAST(U.CD_USUARIO || ' - ' || U.NM_USUARIO AS VARCHAR(70)) DS_USUARIO, {#10} C.DT_ABERTURA, C.DT_FECHAMENTO, C.VL_ABERTURA, C.VL_FECHAMENTO, C.VL_MOVIMENTO, C.CD_EMPRESA, {#10} CAST('P' AS VARCHAR(1)), CAST(NULL AS VARCHAR(1)) TP_SALDO, CAST(NULL AS DOM_INTEGER) CD_EMPRCONTAS, {#10} CAST(NULL AS DOM_INTEGER) NR_LANCAMENTO, CAST(NULL AS DOM_INTEGER) CD_PESSOA, CAST(NULL AS DOM_INTEGER) CD_TIPOCONTA, {#10} CAST(NULL AS DOM_INTEGER) NR_PARCELA, 'CAIXA' DS_TIPOSALDO {#10}
FROM CAIXA C {#10}
INNER JOIN EMPRESA E ON (E.CD_EMPRESA = C.CD_EMPRESA) {#10}
INNER JOIN PESSOA P ON (P.CD_PESSOA = E.CD_PESSOA) {#10}
INNER JOIN USUARIO U ON (U.CD_USUARIO = C.CD_USUARIO) {#10}
WHERE C.CD_EMPRESA = {iParametros[1] +#10}
AND C.NR_CONTROLE = {iParametros[2]}

Text #3​

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 #4​

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 #5​

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​

TabelaUso
CAIXAreferenciada nas queries do layout
CONTASreferenciada nas queries do layout
EMPRESAreferenciada nas queries do layout
ITEMreferenciada nas queries do layout
ITEMNOTAreferenciada nas queries do layout
NOTAreferenciada nas queries do layout
PESSOAreferenciada nas queries do layout
TIPOCONTAreferenciada nas queries do layout
USUARIOreferenciada nas queries do layout
VIEW_DIARIOCAIXAreferenciada nas queries do layout
VIEW_PARMSALDOreferenciada nas queries do layout

Shared Units​

  • jCommon
  • jPesquisa

Fonte​

  • Unit: source/LCX014/ULCX014.pas
  • DFM: source/LCX014/ULCX014.dfm
  • Package: source/LCX014/LCX014.dpk