LCX042 — Listagem LCX042
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.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
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
tabCabecalho
SELECT {#10} X.CD_USUARIO, X.CD_USUARIO||' - '||U.NM_USUARIO DS_USUARIO, {#10} CAST(COALESCE(X.DT_FECHAMENTO,CURRENT_TIMESTAMP) AS DOM_TIMESTAMP) DT_FECHAMENTO, {#10} X.DT_ABERTURA, X.VL_FECHAMENTO, X.VL_ABERTURA, X.NR_CONTROLE {#10}
FROM CAIXA X {#10}
LEFT JOIN USUARIO U ON (U.CD_USUARIO = X.CD_USUARIO) {#10}
WHERE X.CD_EMPRESA = {iParametros}
Caixa #2
SELECT {#10} RTP.O_DS_TIPO DS_TIPO, RTP.O_TP_BAIXA TP_BAIXA, {#10} CASE VD.TP_SALDO WHEN 'X' THEN 'CAIXA' WHEN 'T' THEN 'CARTÃO (Não Soma no Resumo)' ELSE 'CHEQUE' END DS_TIPOSALDO, {#10} 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} CASE WHEN VD.TP_SALDO NOT IN ('T', 'H', 'P') THEN VD.VL_DEBITO ELSE 0 END VL_DEBITOLIQUIDO, {#10} CASE WHEN VD.TP_SALDO NOT IN ('T', 'H', 'P') THEN VD.VL_CREDITO ELSE 0 END VL_CREDITOLIQUIDO, {#10} VD.VL_MOVIMENTO, VD.VL_FECHAMENTO, VD.CD_EMPRESA, VD.NR_LANCCAIXA {#10}
FROM VIEW_DIARIOCAIXA({iParametros}
tabPrazo
SELECT {#10} P.NM_PESSOA, C.NR_DOCUMENTO, SUM(C.VL_SALDO) VL_SALDO, {#10} CASE T.TP_TIPOCONTA WHEN 'CR' THEN 'VENDAS A PRAZO DUPLICATA' WHEN 'HR' THEN 'VENDAS A PRAZO CHEQUE' ELSE 'VENDAS CARTÃO' END DS_TIPOSALDO, {#10} CASE T.TP_TIPOCONTA WHEN 'CR' THEN 'CAIXA' WHEN 'HR' THEN 'CHEQUE' ELSE P.NM_PESSOA END DS_PESSOA {#10}
FROM CONTAS C {#10}
INNER JOIN PESSOA P ON (P.CD_PESSOA = C.CD_PESSOA) {#10}
INNER JOIN TIPOCONTA T ON (T.CD_TIPOCONTA = C.CD_TIPOCONTA) {#10}
LEFT JOIN DESTINOREPARCELAMENTO DR ON (DR.CD_EMPRCONTAS = C.CD_EMPRESA {#10}
AND DR.NR_LANCAMENTO = C.NR_LANCAMENTO {#10}
AND DR.CD_PESSOA = C.CD_PESSOA {#10}
AND DR.CD_TIPOCONTA = C.CD_TIPOCONTA {#10}
AND DR.NR_PARCELA = C.NR_PARCELA) {#10}
LEFT JOIN CONTASJUNCAO CJ ON (CJ.CD_EMPRESA = C.CD_EMPRESA {#10}
AND CJ.NR_LANCAMENTO = C.NR_LANCAMENTO {#10}
AND CJ.CD_PESSOA = C.CD_PESSOA {#10}
AND CJ.CD_TIPOCONTA = C.CD_TIPOCONTA {#10}
AND CJ.NR_PARCELA = C.NR_PARCELA) {#10}
LEFT JOIN CONTASJUNCAO CJO ON (CJO.CD_EMPRESA = C.CD_EMPRESA {#10}
AND CJO.NR_LANCAMENTO = C.NR_LANCAMENTO {#10}
AND CJO.CD_PESSOA = C.CD_PESSOA {#10}
AND CJO.CD_TIPOCONTA = C.CD_TIPOCONTA {#10}
AND CJO.NR_PARCELA = C.NR_PARCELA) {#10}
LEFT JOIN FATURACONTAS FC ON (FC.CD_EMPRCONTAS = C.CD_EMPRESA {#10}
AND FC.NR_LANCAMENTO = C.NR_LANCAMENTO {#10}
AND FC.CD_PESSOA = C.CD_PESSOA {#10}
AND FC.CD_TIPOCONTA = C.CD_TIPOCONTA {#10}
AND FC.NR_PARCELA = C.NR_PARCELA) {#10}
WHERE C.CD_EMPRESA = {iParametros}
Text #1
SELECT {#10} X.CD_USUARIO, X.CD_USUARIO||' - '||U.NM_USUARIO DS_USUARIO, {#10} CAST(COALESCE(X.DT_FECHAMENTO,CURRENT_TIMESTAMP) AS DOM_TIMESTAMP) DT_FECHAMENTO, {#10} X.DT_ABERTURA, X.VL_FECHAMENTO, X.VL_ABERTURA, X.NR_CONTROLE {#10}
FROM CAIXA X {#10}
LEFT 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 #2
SELECT {#10} RTP.O_DS_TIPO DS_TIPO, RTP.O_TP_BAIXA TP_BAIXA, {#10} CASE VD.TP_SALDO WHEN 'X' THEN 'CAIXA' WHEN 'T' THEN 'CARTÃO (Não Soma no Resumo)' ELSE 'CHEQUE' END DS_TIPOSALDO, {#10} 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} CASE WHEN VD.TP_SALDO NOT IN ('T', 'H', 'P') THEN VD.VL_DEBITO ELSE 0 END VL_DEBITOLIQUIDO, {#10} CASE WHEN VD.TP_SALDO NOT IN ('T', 'H', 'P') THEN VD.VL_CREDITO ELSE 0 END VL_CREDITOLIQUIDO, {#10} VD.VL_MOVIMENTO, VD.VL_FECHAMENTO, VD.CD_EMPRESA, VD.NR_LANCCAIXA {#10}
FROM VIEW_DIARIOCAIXA({iParametros[1]}, { Nulo(iDtAbertura,}D{)}, { Nulo(iDtFechamento,}D{)}, '
AND MX.CD_EMPRCONTROLE = {iParametros[1]}
AND MX.NR_CONTROLE = {iParametros[2]}
AND MX.CD_USUARIO = '{Nulo(iCdUsuario,}S{)}'
AND PARMSALDO.TP_SALDO IN (''X'', ''R'', ''P'', ''T'') ') 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 RETORNA_TIPOPROCESSO(VD.CD_EMPRESA, VD.NR_LANCCAIXA, VD.CD_EMPRESA, VD.NR_PROCESSO) RTP ON (1 = 1) {#10}
WHERE CASE WHEN VD.TP_SALDO IN ('T', 'R', 'P')
AND COALESCE(VD.VL_CREDITO, 0) > 0 THEN 0 ELSE 1 END = 1 {#10}
AND P.TP_SALDO <> 'I' {#10}
ORDER BY 1, 3
Text #3
SELECT {#10} P.NM_PESSOA, C.NR_DOCUMENTO, SUM(C.VL_SALDO) VL_SALDO, {#10} CASE T.TP_TIPOCONTA WHEN 'CR' THEN 'VENDAS A PRAZO DUPLICATA' WHEN 'HR' THEN 'VENDAS A PRAZO CHEQUE' ELSE 'VENDAS CARTÃO' END DS_TIPOSALDO, {#10} CASE T.TP_TIPOCONTA WHEN 'CR' THEN 'CAIXA' WHEN 'HR' THEN 'CHEQUE' ELSE P.NM_PESSOA END DS_PESSOA {#10}
FROM CONTAS C {#10}
INNER JOIN PESSOA P ON (P.CD_PESSOA = C.CD_PESSOA) {#10}
INNER JOIN TIPOCONTA T ON (T.CD_TIPOCONTA = C.CD_TIPOCONTA) {#10}
LEFT JOIN DESTINOREPARCELAMENTO DR ON (DR.CD_EMPRCONTAS = C.CD_EMPRESA {#10}
AND DR.NR_LANCAMENTO = C.NR_LANCAMENTO {#10}
AND DR.CD_PESSOA = C.CD_PESSOA {#10}
AND DR.CD_TIPOCONTA = C.CD_TIPOCONTA {#10}
AND DR.NR_PARCELA = C.NR_PARCELA) {#10}
LEFT JOIN CONTASJUNCAO CJ ON (CJ.CD_EMPRESA = C.CD_EMPRESA {#10}
AND CJ.NR_LANCAMENTO = C.NR_LANCAMENTO {#10}
AND CJ.CD_PESSOA = C.CD_PESSOA {#10}
AND CJ.CD_TIPOCONTA = C.CD_TIPOCONTA {#10}
AND CJ.NR_PARCELA = C.NR_PARCELA) {#10}
LEFT JOIN CONTASJUNCAO CJO ON (CJO.CD_EMPRESA = C.CD_EMPRESA {#10}
AND CJO.NR_LANCAMENTO = C.NR_LANCAMENTO {#10}
AND CJO.CD_PESSOA = C.CD_PESSOA {#10}
AND CJO.CD_TIPOCONTA = C.CD_TIPOCONTA {#10}
AND CJO.NR_PARCELA = C.NR_PARCELA) {#10}
LEFT JOIN FATURACONTAS FC ON (FC.CD_EMPRCONTAS = C.CD_EMPRESA {#10}
AND FC.NR_LANCAMENTO = C.NR_LANCAMENTO {#10}
AND FC.CD_PESSOA = C.CD_PESSOA {#10}
AND FC.CD_TIPOCONTA = C.CD_TIPOCONTA {#10}
AND FC.NR_PARCELA = C.NR_PARCELA) {#10}
WHERE C.CD_EMPRESA = {iParametros[1] + #10}
AND C.NR_CONTROLE = {iParametros[2] + #10}
AND C.DT_VENCIMENTO > C.DT_LANCAMENTO {#10}
AND C.ST_CONTAS <> 'C' {#10}
AND T.TP_TIPOCONTA IN ('CR', 'HR', 'CT') {#10}
AND DR.CD_EMPRCONTAS IS NULL {#10}
AND CJ.CD_EMPRESA IS NULL {#10}
AND CJO.CD_EMPRORIG IS NULL {#10}
AND FC.CD_EMPRCONTAS IS NULL {#10}
GROUP BY P.NM_PESSOA, C.NR_DOCUMENTO, {#10} CASE T.TP_TIPOCONTA WHEN 'CR' THEN 'VENDAS A PRAZO DUPLICATA' WHEN 'HR' THEN 'VENDAS A PRAZO CHEQUE' ELSE 'VENDAS CARTÃO' END, {#10} CASE T.TP_TIPOCONTA WHEN 'CR' THEN 'CAIXA' WHEN 'HR' THEN 'CHEQUE' ELSE P.NM_PESSOA END {#10}
ORDER BY CASE T.TP_TIPOCONTA WHEN 'CR' THEN 'VENDAS A PRAZO DUPLICATA' WHEN 'HR' THEN 'VENDAS A PRAZO CHEQUE' ELSE 'VENDAS CARTÃO' END, {#10} CASE T.TP_TIPOCONTA WHEN 'CR' THEN 'CAIXA' WHEN 'HR' THEN 'CHEQUE' ELSE P.NM_PESSOA END, P.NM_PESSOA, C.NR_DOCUMENTO
Tabelas Utilizadas
| Tabela | Uso |
|---|---|
CAIXA | referenciada nas queries do layout |
CONTAS | referenciada nas queries do layout |
CONTASJUNCAO | referenciada nas queries do layout |
DESTINOREPARCELAMENTO | referenciada nas queries do layout |
FATURACONTAS | referenciada nas queries do layout |
PESSOA | referenciada nas queries do layout |
RETORNA_TIPOPROCESSO | 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/LCX042/ULCX042.pas - DFM:
source/LCX042/ULCX042.dfm - Package:
source/LCX042/LCX042.dpk