LCX026 — Listagem LCX026
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, 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, 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, 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
Caixa #2
SELECT AP.O_DS_TIPOFECHAMENTO DS_TIPO, VD.DS_CONTA DS_TIPOSALDO, {#10} CASE VD.TP_SALDO WHEN 'X' THEN 'Caixa' WHEN 'T' THEN 'Cartão' ELSE 'Cheque' END DS_TIPOCONTA, {#10} VD.DS_CONTA, AP.O_FECHAMENTO_APRAZO, {#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} VD.VL_MOVIMENTO, VD.VL_FECHAMENTO, VD.CD_EMPRESA, VD.NR_LANCCAIXA, {#10} VD.NR_PROCESSO, VD.TP_SALDO, VD.CD_USUARIO, VD.NM_USUARIO {#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 {#10} WHEN 'CR' THEN (CASE WHEN B.CD_EMPRESA IS NOT NULL THEN 'Boleto' ELSE 'Duplicata' END) {#10} WHEN 'HR' THEN 'Cheque' {#10} ELSE 'Cartão' END DS_TIPOSALDO {#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 BOLETO B ON (B.CD_EMPRESA = C.CD_EMPRESA {#10}
AND B.CD_BANCO = C.CD_BANCO {#10}
AND B.CD_AGENCIA = C.CD_AGENCIA {#10}
AND B.CD_FORMAPAGTO = C.CD_FORMAPAGTO) {#10}
WHERE C.CD_EMPRESA = {iParametros}
TabNF
SELECT {#10} N.DT_EMISSAO, N.NR_LANCAMENTO, N.CD_SERIE, N.NR_NOTAFISCAL, P.NM_PESSOA, {#10} CASE N.ST_NOTA WHEN 'V' THEN 'VÁLIDA' ELSE 'CANCELADA' END ST_NOTA {#10}
FROM NOTA N {#10}
INNER JOIN PESSOA P ON (P.CD_PESSOA = N.CD_PESSOA) {#10}
INNER JOIN NFE NF ON (NF.CD_EMPRESA = N.CD_EMPRESA {#10}
AND NF.NR_LANCAMENTO = N.NR_LANCAMENTO {#10}
AND NF.CD_SERIE = N.CD_SERIE {#10}
AND NF.TP_NOTA = N.TP_NOTA) {#10}
INNER JOIN CAIXA X ON (N.CD_EMPRESA = X.CD_EMPRESA {#10}
AND N.DT_EMISSAO BETWEEN CAST(X.DT_ABERTURA AS DATE)
AND CAST(X.DT_FECHAMENTO AS DATE)) {#10}
WHERE N.TP_NOTA = 'S' {#10}
AND CASE WHEN N.ST_NOTA = 'V'
AND NF.NR_PROTOCOLOAUT IS NULL THEN 1 {#10} WHEN N.ST_NOTA = 'C'
AND NF.NR_PROTOCOLOAUT IS NOT NULL
AND NF.NR_PROTOCOLOCANC IS NULL THEN 1 {#10} ELSE 0 END = 1 {#10}
AND X.CD_EMPRESA = {iParametros}
tabBanco
SELECT AP.O_DS_TIPOFECHAMENTO DS_TIPO, VD.DS_CONTA DS_TIPOSALDO, {#10} CASE VD.TP_SALDO WHEN 'X' THEN 'Caixa' WHEN 'B' THEN 'Banco' ELSE 'Cheque' END DS_TIPOCONTA, {#10} VD.DS_CONTA, AP.O_FECHAMENTO_APRAZO, {#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} VD.VL_MOVIMENTO, VD.VL_FECHAMENTO, VD.CD_EMPRESA, VD.NR_LANCCAIXA, {#10} VD.NR_PROCESSO, VD.TP_SALDO, VD.CD_USUARIO, VD.NM_USUARIO {#10}
FROM VIEW_DIARIOCAIXA({iParametros}
tabFechamento
SELECT {#10} '' DS_TIPO, '' DS_TIPOSALDO, {#10} E.NM_EMPRESA DS_EMPRESA, C.CD_USUARIO||'-'||U.NM_USUARIO DS_USUARIO, {#10} C.NR_CONTROLE, C.DT_ABERTURA, {#10} C.DT_FECHAMENTO, C.VL_ABERTURA, {#10} '' DS_COMPLEMENTO, 0 VL_DEBITO, {#10} 0 VL_CREDITO, 0 VL_MOVIMENTO, {#10} C.VL_FECHAMENTO, C.CD_EMPRESA, {#10} '' NR_LANCCAIXA {#10}
FROM CAIXA C {#10}
INNER JOIN EMPRESA E ON (E.CD_EMPRESA = C.CD_EMPRESA) {#10}
INNER JOIN USUARIO U ON (U.CD_USUARIO = C.CD_USUARIO) {#10}
WHERE C.CD_EMPRESA = {iParametros}
Caixa #3
SELECT {#10} '' DS_TIPO, '' DS_TIPOSALDO, {#10} E.NM_EMPRESA DS_EMPRESA, C.CD_USUARIO||'-'||U.NM_USUARIO DS_USUARIO, {#10} C.NR_CONTROLE, C.DT_ABERTURA, {#10} C.DT_FECHAMENTO, C.VL_ABERTURA, {#10} '' DS_COMPLEMENTO, 0 VL_DEBITO, {#10} 0 VL_CREDITO, 0 VL_MOVIMENTO, {#10} C.VL_FECHAMENTO, C.CD_EMPRESA, {#10} '' NR_LANCCAIXA {#10}
FROM CAIXA C {#10}
INNER JOIN EMPRESA E ON (E.CD_EMPRESA = C.CD_EMPRESA) {#10}
INNER JOIN USUARIO U ON (U.CD_USUARIO = C.CD_USUARIO) {#10}
WHERE C.CD_EMPRESA = {iParametros}
Text #1
SELECT AP.O_DS_TIPOFECHAMENTO DS_TIPO, VD.DS_CONTA DS_TIPOSALDO, {#10} CASE VD.TP_SALDO WHEN 'X' THEN 'Caixa' WHEN 'T' THEN 'Cartão' ELSE 'Cheque' END DS_TIPOCONTA, {#10} VD.DS_CONTA, AP.O_FECHAMENTO_APRAZO, {#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} VD.VL_MOVIMENTO, VD.VL_FECHAMENTO, VD.CD_EMPRESA, VD.NR_LANCCAIXA, {#10} VD.NR_PROCESSO, VD.TP_SALDO, VD.CD_USUARIO, VD.NM_USUARIO {#10}
FROM VIEW_DIARIOCAIXA({iParametros[1]}, '01/01/1900', '12/31/2099', '
AND MX.CD_EMPRCONTROLE = {iParametros[1]}
AND MX.NR_CONTROLE = {iParametros[2]}
AND PARMSALDO.TP_SALDO = ''X'' ') 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 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) {#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, 2
Text #2
SELECT {#10} P.NM_PESSOA, C.NR_DOCUMENTO, SUM(C.VL_SALDO) VL_SALDO, {#10} CASE T.TP_TIPOCONTA {#10} WHEN 'CR' THEN (CASE WHEN B.CD_EMPRESA IS NOT NULL THEN 'Boleto' ELSE 'Duplicata' END) {#10} WHEN 'HR' THEN 'Cheque' {#10} ELSE 'Cartão' END DS_TIPOSALDO {#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 BOLETO B ON (B.CD_EMPRESA = C.CD_EMPRESA {#10}
AND B.CD_BANCO = C.CD_BANCO {#10}
AND B.CD_AGENCIA = C.CD_AGENCIA {#10}
AND B.CD_FORMAPAGTO = C.CD_FORMAPAGTO) {#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 IN ('T', 'P') {#10}
AND T.TP_TIPOCONTA IN ('CR', 'HR', 'CT') {#10}
GROUP BY 1, 2, 4 {#10}
ORDER BY P.NM_PESSOA, C.NR_DOCUMENTO
Text #3
SELECT {#10} N.DT_EMISSAO, N.NR_LANCAMENTO, N.CD_SERIE, N.NR_NOTAFISCAL, P.NM_PESSOA, {#10} CASE N.ST_NOTA WHEN 'V' THEN 'VÁLIDA' ELSE 'CANCELADA' END ST_NOTA {#10}
FROM NOTA N {#10}
INNER JOIN PESSOA P ON (P.CD_PESSOA = N.CD_PESSOA) {#10}
INNER JOIN NFE NF ON (NF.CD_EMPRESA = N.CD_EMPRESA {#10}
AND NF.NR_LANCAMENTO = N.NR_LANCAMENTO {#10}
AND NF.CD_SERIE = N.CD_SERIE {#10}
AND NF.TP_NOTA = N.TP_NOTA) {#10}
INNER JOIN CAIXA X ON (N.CD_EMPRESA = X.CD_EMPRESA {#10}
AND N.DT_EMISSAO BETWEEN CAST(X.DT_ABERTURA AS DATE)
AND CAST(X.DT_FECHAMENTO AS DATE)) {#10}
WHERE N.TP_NOTA = 'S' {#10}
AND CASE WHEN N.ST_NOTA = 'V'
AND NF.NR_PROTOCOLOAUT IS NULL THEN 1 {#10} WHEN N.ST_NOTA = 'C'
AND NF.NR_PROTOCOLOAUT IS NOT NULL
AND NF.NR_PROTOCOLOCANC IS NULL THEN 1 {#10} ELSE 0 END = 1 {#10}
AND X.CD_EMPRESA = {iParametros[1] + #10}
AND X.NR_CONTROLE = {iParametros[2]}
Text #4
SELECT AP.O_DS_TIPOFECHAMENTO DS_TIPO, VD.DS_CONTA DS_TIPOSALDO, {#10} CASE VD.TP_SALDO WHEN 'X' THEN 'Caixa' WHEN 'B' THEN 'Banco' ELSE 'Cheque' END DS_TIPOCONTA, {#10} VD.DS_CONTA, AP.O_FECHAMENTO_APRAZO, {#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} VD.VL_MOVIMENTO, VD.VL_FECHAMENTO, VD.CD_EMPRESA, VD.NR_LANCCAIXA, {#10} VD.NR_PROCESSO, VD.TP_SALDO, VD.CD_USUARIO, VD.NM_USUARIO {#10}
FROM VIEW_DIARIOCAIXA({iParametros[1]}, '01/01/1900', '12/31/2099', '
AND MX.CD_EMPRCONTROLE = {iParametros[1]}
AND MX.NR_CONTROLE = {iParametros[2]}
AND PARMSALDO.TP_SALDO = ''B'' ') 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 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) {#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, 2
Text #5
SELECT {#10} '' DS_TIPO, '' DS_TIPOSALDO, {#10} E.NM_EMPRESA DS_EMPRESA, C.CD_USUARIO||'-'||U.NM_USUARIO DS_USUARIO, {#10} C.NR_CONTROLE, C.DT_ABERTURA, {#10} C.DT_FECHAMENTO, C.VL_ABERTURA, {#10} '' DS_COMPLEMENTO, 0 VL_DEBITO, {#10} 0 VL_CREDITO, 0 VL_MOVIMENTO, {#10} C.VL_FECHAMENTO, C.CD_EMPRESA, {#10} '' NR_LANCCAIXA {#10}
FROM CAIXA C {#10}
INNER JOIN EMPRESA E ON (E.CD_EMPRESA = C.CD_EMPRESA) {#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 #6
SELECT {#10} '' DS_TIPO, '' DS_TIPOSALDO, {#10} E.NM_EMPRESA DS_EMPRESA, C.CD_USUARIO||'-'||U.NM_USUARIO DS_USUARIO, {#10} C.NR_CONTROLE, C.DT_ABERTURA, {#10} C.DT_FECHAMENTO, C.VL_ABERTURA, {#10} '' DS_COMPLEMENTO, 0 VL_DEBITO, {#10} 0 VL_CREDITO, 0 VL_MOVIMENTO, {#10} C.VL_FECHAMENTO, C.CD_EMPRESA, {#10} '' NR_LANCCAIXA {#10}
FROM CAIXA C {#10}
INNER JOIN EMPRESA E ON (E.CD_EMPRESA = C.CD_EMPRESA) {#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]}
Tabelas Utilizadas
| Tabela | Uso |
|---|---|
BOLETO | referenciada nas queries do layout |
CAIXA | referenciada nas queries do layout |
CONTAS | referenciada nas queries do layout |
EMPRESA | referenciada nas queries do layout |
NFE | 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 |
VALIDA_FECHAMENTO_APRAZO | 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/LCX026/ULCX026.pas - DFM:
source/LCX026/ULCX026.dfm - Package:
source/LCX026/LCX026.dpk