Pular para o conteúdo principal

LCX040 — Listagem LCX040

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, CD_FORMAPAGTO.

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.DS_EMPRESA DS_TIPO, VD.DS_EMPRESA DS_TIPOSALDO, 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, P.NM_PESSOA DS_TIPOSALDO, TRIM(CASE WHEN (C.NR_BOLETO IS NOT NULL) THEN 'Boleto' WHEN (C.CD_FORMAPAGTO = 'CA') THEN 'Carteira' END) DS_PAGAMENTO
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')
AND ((C.NR_BOLETO IS NOT NULL)
OR (C.CD_FORMAPAGTO = 'CA'))
GROUP BY P.NM_PESSOA, C.NR_DOCUMENTO, C.NR_BOLETO, C.CD_FORMAPAGTO
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, TRIM(CASE WHEN (C.NR_BOLETO IS NOT NULL) THEN 'Boleto' WHEN (C.CD_FORMAPAGTO = 'CA') THEN 'Carteira' END) DS_PAGAMENTO
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')
AND ((C.NR_BOLETO IS NOT NULL)
OR (C.CD_FORMAPAGTO = 'CA'))
GROUP BY P.NM_PESSOA, C.NR_DOCUMENTO, C.NR_BOLETO, C.CD_FORMAPAGTO
ORDER BY P.NM_PESSOA, C.NR_DOCUMENTO

Caixa #2​

SELECT VD.DS_CONTA DS_TIPOSALDO, AP.O_FECHAMENTO_APRAZO, AP.O_DS_TIPOFECHAMENTO, {CHR}

TabPrazo​

SELECT P.NM_PESSOA, C.NR_DOCUMENTO, SUM(C.VL_SALDO) VL_SALDO, {CHR}

tabFechamento​

SELECT /*2*/ {#10} CAST(EMPRESA.CD_EMPRESA AS VARCHAR(10))||' - '||EMPRESA.NM_EMPRESA||' '||PESSOA.NR_CNPJCPF DS_EMPRESA, {#10} NULL DT_LANCAMENTO, NULL CD_CONTA, NULL NR_PROCESSO, NULL NR_RECIBO, {#10} NULL DS_CONTA, NULL NR_LANCCAIXA, NULL CD_HISTORICO, {#10} NULL DS_HISTORICO, '' DS_COMPLEMENTO, NULL NR_DOCUMENTO, {#10} '' DS_COMPLEMENTO, {#10} NULL VL_DOCUMENTO, CAST(0 AS NUMERIC(15,2)) VL_CREDITO, {#10} CAIXA.NR_CONTROLE, CAIXA.CD_USUARIO CD_USUARIO, USUARIO.NM_USUARIO DS_USUARIO, CAIXA.DT_ABERTURA, {#10} CAIXA.DT_FECHAMENTO, CAIXA.VL_ABERTURA, CAIXA.VL_FECHAMENTO, CAIXA.VL_MOVIMENTO, {#10} EMPRESA.CD_EMPRESA, CAST('R' AS VARCHAR(1)), NULL TP_SALDO, {#10} NULL CD_EMPRCONTAS, NULL NR_LANCAMENTO, NULL CD_PESSOA, NULL CD_TIPOCONTA, NULL NR_PARCELA {#10}
FROM CAIXA {#10}
LEFT JOIN USUARIO ON (USUARIO.CD_USUARIO = CAIXA.CD_USUARIO) {#10}
INNER JOIN EMPRESA ON (EMPRESA.CD_EMPRESA = CAIXA.CD_EMPRESA) {#10}
INNER JOIN PESSOA ON (PESSOA.CD_PESSOA = EMPRESA.CD_PESSOA) {#10}
WHERE CAIXA.CD_EMPRESA = {iParametros}

Text #1​

SELECT VD.DS_CONTA DS_TIPOSALDO, AP.O_FECHAMENTO_APRAZO, AP.O_DS_TIPOFECHAMENTO, {CHR(10)} VD.DS_EMPRESA, CAST(VD.CD_USUARIO||' - '||VD.NM_USUARIO AS VARCHAR(70)) DS_USUARIO, VD.NR_CONTROLE, {CHR(10)} VD.DT_ABERTURA, VD.DT_FECHAMENTO, VD.VL_ABERTURA, {CHR(10)} VD.DS_COMPLEMENTO, VD.VL_DEBITO, VD.VL_CREDITO, {CHR(10)} VD.VL_MOVIMENTO, VD.VL_FECHAMENTO, VD.CD_EMPRESA, VD.NR_LANCCAIXA {CHR(10)}
FROM VIEW_DIARIOCAIXA({iParametros[1]}, {CHR(10)}'01/01/1900', {CHR(10)}'12/31/2099', {CHR(10)}'
AND MX.CD_EMPRCONTROLE = {iParametros[1]}
AND MX.NR_CONTROLE = {iParametros[2]}
AND PARMSALDO.TP_SALDO IN (''X'',''T'',''P'',''R'',''C'') ') VD {CHR(10)}
LEFT JOIN VIEW_PARMSALDO(VD.CD_EMPRESA, VD.CD_CONTA, VD.TP_SALDO, VD.CD_USUARIO) P ON (1 = 1) {CHR(10)}
LEFT JOIN VALIDA_FECHAMENTO_APRAZO(VD.CD_EMPRESA, VD.NR_PROCESSO, VD.CD_EMPRCONTAS, VD.NR_LANCAMENTO, VD.CD_PESSOA, VD.CD_TIPOCONTA, VD.NR_PARCELA) AP ON (1 = 1) {CHR(10)}
WHERE CASE WHEN VD.TP_SALDO IN ('T','R','P')
AND COALESCE(VD.VL_CREDITO,0) > 0 THEN 0 ELSE 1 END = 1
AND P.TP_SALDO <> 'I' {CHR(10)}
ORDER BY 1

Text #2​

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)}TRIM(CASE WHEN (C.CD_BANCO IS NOT NULL) THEN 'Boleto' WHEN (C.CD_FORMAPAGTO = 'CA') THEN 'Carteira' END) DS_PAGAMENTO {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', 'A' ) {CHR(10)}
AND C.TP_DOCUMENTO NOT IN ('RP') {CHR(10)}
AND T.TP_TIPOCONTA IN ('CR','HR','CT') {CHR(10)}
AND ((C.CD_BANCO IS NOT NULL)
OR (C.CD_FORMAPAGTO = 'CA')){CHR(10) + // CHAMADO 98114}
GROUP BY P.NM_PESSOA, C.NR_DOCUMENTO, T.TP_TIPOCONTA, C.CD_BANCO, C.CD_FORMAPAGTO {CHR(10)}
ORDER BY P.NM_PESSOA, C.NR_DOCUMENTO

Text #3​

SELECT /*2*/ {#10} CAST(EMPRESA.CD_EMPRESA AS VARCHAR(10))||' - '||EMPRESA.NM_EMPRESA||' '||PESSOA.NR_CNPJCPF DS_EMPRESA, {#10} NULL DT_LANCAMENTO, NULL CD_CONTA, NULL NR_PROCESSO, NULL NR_RECIBO, {#10} NULL DS_CONTA, NULL NR_LANCCAIXA, NULL CD_HISTORICO, {#10} NULL DS_HISTORICO, '' DS_COMPLEMENTO, NULL NR_DOCUMENTO, {#10} '' DS_COMPLEMENTO, {#10} NULL VL_DOCUMENTO, CAST(0 AS NUMERIC(15,2)) VL_CREDITO, {#10} CAIXA.NR_CONTROLE, CAIXA.CD_USUARIO CD_USUARIO, USUARIO.NM_USUARIO DS_USUARIO, CAIXA.DT_ABERTURA, {#10} CAIXA.DT_FECHAMENTO, CAIXA.VL_ABERTURA, CAIXA.VL_FECHAMENTO, CAIXA.VL_MOVIMENTO, {#10} EMPRESA.CD_EMPRESA, CAST('R' AS VARCHAR(1)), NULL TP_SALDO, {#10} NULL CD_EMPRCONTAS, NULL NR_LANCAMENTO, NULL CD_PESSOA, NULL CD_TIPOCONTA, NULL NR_PARCELA {#10}
FROM CAIXA {#10}
LEFT JOIN USUARIO ON (USUARIO.CD_USUARIO = CAIXA.CD_USUARIO) {#10}
INNER JOIN EMPRESA ON (EMPRESA.CD_EMPRESA = CAIXA.CD_EMPRESA) {#10}
INNER JOIN PESSOA ON (PESSOA.CD_PESSOA = EMPRESA.CD_PESSOA) {#10}
WHERE CAIXA.CD_EMPRESA = {iParametros[1] +#10}
AND CAIXA.NR_CONTROLE = {iParametros[2]}

Tabelas Utilizadas​

TabelaUso
CAIXAreferenciada nas queries do layout
CONTASreferenciada nas queries do layout
EMPRESAreferenciada nas queries do layout
PESSOAreferenciada nas queries do layout
TIPOCONTAreferenciada nas queries do layout
USUARIOreferenciada nas queries do layout
VALIDA_FECHAMENTO_APRAZOreferenciada nas queries do layout
VIEW_DIARIOCAIXAreferenciada nas queries do layout
VIEW_PARMSALDOreferenciada nas queries do layout

Shared Units​

  • jCommon
  • jPesquisa

Fonte​

  • Unit: source/LCX040/ULCX040.pas
  • DFM: source/LCX040/ULCX040.dfm
  • Package: source/LCX040/LCX040.dpk