Pular para o conteúdo principal

LCT010 — Layout LCT010

Visão Geral​

Layout de impressão da família LCT (Contrato). Acionado via ExecLayout a partir das telas que imprimem este tipo de documento.

Descrição​

Consulta baseada em CONTRATO, com junção em TIPOCONTRATO, CLAUSULACONTRATO, PESSOAFISICA, EMPRESA, RETORNA_DADOSCADASTRAIS, PARMFATUR, filtrada por CD_EMPRESA, NR_CONTRATO.

Chamada​

ExecLayout(Connection, [
// 0 - Nome do Layout
// 1 - Cod Empresa
// 2 - Nr Contrato
// 5 - Path Servidor
// 6 - Visualiza -> V ou Imprime -> I
// 7 - Impressora do Parametro
]);

SQL Base​

Contrato​

SELECT T.DS_TIPOCONTRATO, T.DS_CONTRATO, CC.NR_CLAUSULA, CC.DS_TITULO, CC.DS_CLAUSULA, C.NR_CONTRATO||' PSA: '||C.CD_PESSOA NR_CONTRATO, P.DS_LOGOTIPO, PC.NR_CNPJCPF, PC.NR_INSCEST, PE.NR_CNPJCPF NR_CNPJ, COALESCE(PC.NR_RG,PC.NR_INSCEST) NR_RGINSCMUN, PC.NM_PESSOA NM_CONTRATANTE, PE.NM_PESSOA NM_CONTRATADA, C.CD_TIPOCONTRATO, C.DT_VENCTOCONTRATO DT_DIA
FROM CONTRATO C
INNER JOIN TIPOCONTRATO T ON (T.CD_TIPOCONTRATO = C.CD_TIPOCONTRATO)
INNER JOIN CLAUSULACONTRATO CC ON (CC.CD_TIPOCONTRATO = T.CD_TIPOCONTRATO)
LEFT JOIN PESSOAFISICA PF ON (PF.CD_PESSOA = C.CD_PESSOA)
INNER JOIN EMPRESA E ON (E.CD_EMPRESA = C.CD_EMPRESA)
LEFT JOIN RETORNA_DADOSCADASTRAIS(C.CD_PESSOA,NULL) PC ON (1 = 1)
LEFT JOIN RETORNA_DADOSCADASTRAIS(E.CD_PESSOA,NULL) PE ON (1 = 1)
LEFT JOIN PARMFATUR P ON (P.CD_EMPRESA = C.CD_EMPRESA)
WHERE C.CD_EMPRESA = :CD_EMPRESA
AND C.NR_CONTRATO = :NR_CONTRATO
ORDER BY CC.NR_CLAUSULA CD_EMPRESA NR_CONTRATO DS_TIPOCONTRATO "TIPOCONTRATO"."DS_TIPOCONTRATO" DS_CONTRATO "TIPOCONTRATO"."DS_CONTRATO" NR_CLAUSULA "CLAUSULACONTRATO"."NR_CLAUSULA" DS_TITULO "CLAUSULACONTRATO"."DS_TITULO" DS_CLAUSULA "CLAUSULACONTRATO"."DS_CLAUSULA" NR_CONTRATO DS_LOGOTIPO "PARMFATUR"."DS_LOGOTIPO" NR_CNPJCPF "RETORNA_DADOSCADASTRAIS"."NR_CNPJCPF" NR_INSCEST "RETORNA_DADOSCADASTRAIS"."NR_INSCEST" NR_CNPJ "RETORNA_DADOSCADASTRAIS"."NR_CNPJCPF" NR_RGINSCMUN NM_CONTRATANTE "RETORNA_DADOSCADASTRAIS"."NM_PESSOA" NM_CONTRATADA "RETORNA_DADOSCADASTRAIS"."NM_PESSOA" CD_TIPOCONTRATO "CONTRATO"."CD_TIPOCONTRATO" DT_DIA "CONTRATO"."DT_VENCTOCONTRATO" NR_CONTRATO
SELECT CD_EMPRESA, NR_CONTRATO, CD_CHAVE, DT_EXPREG, NM_REPRESENTANTE, DS_MODULOS, ST_ATIVA, DT_REGISTRO
FROM LICENCA
WHERE CD_EMPRESA = :CD_EMPRESA
AND NR_CONTRATO = :NR_CONTRATO CD_EMPRESA NR_CONTRATO User_Name=SYSDBA Password=masterkey Database=/database/DESENV3.FDB Server=serverDesenv Port=3050 CharacterSet=ISO8859_1 DriverID=FB

tabDADOS​

SELECT C.NR_CONTRATO, P.NM_PESSOA, P.CD_PESSOA, P.NR_CNPJCPF, CHAR_LENGTH(P.NR_CNPJCPF) ST_FISICA, {#10} E.DS_ENDERECO||TRIM(coalesce(', '||E.NR_ENDERECO,''))||{#10} Coalesce(' - '||E.DS_COMPLEMENTO,'')|| {#10} Coalesce(' - '||E.DS_BAIRRO,'') DS_ENDERECO, {#10} M.DS_MUNICIPIO, S.SG_ESTADO, S.DS_ESTADO, /*L.NM_REPRESENTANTE, */L.DS_MODULOS, {#10} C.DT_VENCIMENTO, C.VL_MENSALIDADE, C.VL_CONTRATO VL_TAXA, C.VL_TAXAS, {#10} (
SELECT O_VALOR
FROM VALOR_EXTENSO(C.VL_MENSALIDADE)) VL_EXTENSO, {#10} (
SELECT O_VALOR
FROM VALOR_EXTENSO(C.VL_CONTRATO)) VL_TAXAEXTENSO, {#10} (
SELECT O_VALOR
FROM VALOR_EXTENSO(C.VL_TAXAS)) VL_TAXASEXTENSO, {#10} extract(day
FROM C.DT_VENCTOCONTRATO) DT_DIA, {#10} C.NR_DIAVENCTO DT_DIA_VENC_PARC, {#10} (
SELECT O_NUMERO
FROM NUMERO_EXTENSO(extract(day
FROM C.DT_VENCIMENTO))) DT_EXTENSO, {#10} PF.NR_RG, C.DT_EMISSAO, E.NR_INSCEST, COALESCE(PF.NR_RG,E.NR_INSCEST) NR_RGINSCMUN, {#10} C.NR_VALIDADE||' '||CASE WHEN C.TP_VALIDADE = 'D' THEN 'dia(s)' {#10} WHEN C.TP_VALIDADE = 'M' THEN 'mes(es)' {#10} WHEN C.TP_VALIDADE = 'A' THEN 'ano(s)' END NR_VALIDADE, {#10} C.DT_EVENTO, C.VL_CONTRATO , C.VL_MENSALIDADE, C.VL_MANUTENCAO, C.VL_LICENCIAMENTO, {#10} L.VL_ADDMANUTENCAO, L.VL_ADDLICENCIAMENTO, L.VL_ADICIONAL, {#10} EP.NR_CNPJCPF CNPJ, ME.DS_MUNICIPIO||' - '||ME.SG_ESTADO DS_MUNEMPRESA, EMP.NM_EMPRESA, {#10} EE.DS_ENDERECO||TRIM(Coalesce(', '||EE.NR_ENDERECO,''))|| Coalesce(' - '||EE.DS_COMPLEMENTO,'')|| Coalesce(' - '||EE.DS_BAIRRO,'') DS_ENDERECOEMP, {#10} C.DT_VENCTOPARCELA, C.DS_OBSERVACAO, {#10} PR.NM_PESSOA NM_REPRESENTANTE, PR.NR_CNPJCPF NR_CNPJREPRESENTANTE, RPR.NR_RG NR_RG_REPRESENTANTE, {#10} PF.DS_NATURALIDADE, PF.DS_ESTADOCIVIL , PF.DS_FUNCAO, P.DS_EMAIL, E.NR_CEP, C.NR_PARCELAS, {#10} (
SELECT O_NUMERO {#10}
FROM NUMERO_EXTENSO( NR_PARCELAS) ) DS_NRPARCELAS, {#10} (
SELECT O_NUMERO {#10}
FROM NUMERO_EXTENSO(C.VL_CONTRATO)) DS_VLTOTAL, {#10} (
SELECT O_NUMERO {#10}
FROM NUMERO_EXTENSO(C.VL_TAXAS)) DS_TAXAS, (C.VL_MENSALIDADE - C.VL_DESCONTO) VL_MENSALIDADEANTECIPADA, {#10} (
SELECT O_NUMERO {#10}
FROM NUMERO_EXTENSO(C.VL_MENSALIDADE - C.VL_DESCONTO)) DS_MENSALIDADEANTECIPADA, C.DT_VENCTOCONTRATO, I.DS_ITEM, AV.NM_PESSOA NM_AVALISTA, PFV.DS_NATURALIDADE DS_NATURALIDADEAVALISTA, {#10} PFV.DS_ESTADOCIVIL DS_ESTADOCIVILAVALISTA, PFV.DS_FUNCAO DS_FUNCAOAVALISTA, PFV.NR_RG NR_RGAVALISTA, PFV.NR_CPF NR_CPFAVALISTA, EAV.DS_ENDERECO DS_ENDERECOAVALISTA, EAV.NR_ENDERECO NR_ENDERECOAVALISTA, {#10} EAV.DS_COMPLEMENTO DS_COMPLEMENTOAVALISTA, EAV.DS_BAIRRO DS_BAIRROAVALISTA, MAV.DS_MUNICIPIO DS_MINICIPIOAVALISTA, SV.DS_ESTADO DS_ESTADOAVALISTA, AV.DS_EMAIL DS_EMAILAVALISTA, C.VL_VALOR1, C.VL_VALOR2, {#10} (
SELECT O_NUMERO {#10}
FROM NUMERO_EXTENSO( C.VL_VALOR1) ) DS_VALOR1, {#10} (
SELECT O_NUMERO {#10}
FROM NUMERO_EXTENSO(C.VL_VALOR2)) DS_VALOR2, {#10} CAST(C.VL_ENTRADA AS DOM_VARCHAR100) VL_ENTRADA, {#10} (
SELECT O_NUMERO {#10}
FROM NUMERO_EXTENSO(C.VL_ENTRADA)) DS_ENTRADA {#10}
FROM CONTRATO C {#10}
LEFT JOIN LICENCA L on (L.CD_EMPRESA = C.CD_EMPRESA {#10}
AND L.NR_CONTRATO = C.NR_CONTRATO) {#10}
INNER JOIN PESSOA P on (P.CD_PESSOA = C.CD_PESSOA) {#10}
LEFT JOIN PESSOAFISICA PF on (PF.CD_PESSOA = P.CD_PESSOA) {#10}
INNER JOIN ENDERECOPESSOA E on (E.CD_PESSOA = P.CD_PESSOA {#10}
AND E.CD_ENDERECO = COALESCE(C.CD_ENDERECO, (
SELECT O_CD_ENDERECO
FROM RETORNA_ENDERECO(P.CD_PESSOA, NULL)))) {#10}
INNER JOIN MUNICIPIO M on (M.CD_MUNICIPIO = E.CD_MUNICIPIO) {#10}
INNER JOIN ESTADO S on (S.SG_ESTADO = M.SG_ESTADO) {#10}
INNER JOIN EMPRESA EMP ON (EMP.CD_EMPRESA = C.CD_EMPRESA) {#10}
INNER JOIN PESSOA EP ON (EP.CD_PESSOA = EMP.CD_PESSOA) {#10}
INNER JOIN ENDERECOPESSOA EE on (EE.CD_PESSOA = EP.CD_PESSOA {#10}
AND EE.CD_ENDERECO = (
SELECT O_CD_ENDERECO
FROM RETORNA_ENDERECO(EP.CD_PESSOA, NULL))) {#10}
INNER JOIN MUNICIPIO ME on (ME.CD_MUNICIPIO = EE.CD_MUNICIPIO) {#10}
LEFT JOIN PESSOA PR ON (PR.CD_PESSOA = C.CD_REPRESENTANTE) {#10}
LEFT JOIN RETORNA_DADOSCADASTRAIS(PR.CD_PESSOA , NULL) RPR ON (1=1) {#10}
LEFT JOIN ITEM I ON (I.CD_ITEM = C.CD_ITEM) {#10}
LEFT JOIN PESSOA AV on (AV.CD_PESSOA = E.CD_AVALISTA) {#10}
LEFT JOIN PESSOAFISICA PFV on (PFV.CD_PESSOA = E.CD_AVALISTA) {#10}
LEFT JOIN ENDERECOPESSOA EAV ON (EAV.CD_PESSOA = PFV.CD_PESSOA) {#10}
LEFT JOIN MUNICIPIO MAV on (MAV.CD_MUNICIPIO = EAV.CD_MUNICIPIO) {#10}
LEFT JOIN ESTADO SV on (SV.SG_ESTADO = MAV.SG_ESTADO) {#10}
WHERE C.CD_EMPRESA = {Parametros}

tabMACRO​

SELECT M.DS_MACROCONTRATO, M.NM_COLUNA
FROM TIPOCONTRATO T
INNER JOIN MACROCONTRATO M ON (M.TP_TIPOCONTRATO = T.TP_TIPOCONTRATO)
WHERE T.CD_TIPOCONTRATO = {frmLCT010}

Text #1​

SELECT C.NR_CONTRATO, P.NM_PESSOA, P.CD_PESSOA, P.NR_CNPJCPF, CHAR_LENGTH(P.NR_CNPJCPF) ST_FISICA, {#10} E.DS_ENDERECO||TRIM(coalesce(', '||E.NR_ENDERECO,''))||{#10} Coalesce(' - '||E.DS_COMPLEMENTO,'')|| {#10} Coalesce(' - '||E.DS_BAIRRO,'') DS_ENDERECO, {#10} M.DS_MUNICIPIO, S.SG_ESTADO, S.DS_ESTADO, /*L.NM_REPRESENTANTE, */L.DS_MODULOS, {#10} C.DT_VENCIMENTO, C.VL_MENSALIDADE, C.VL_CONTRATO VL_TAXA, C.VL_TAXAS, {#10} (
SELECT O_VALOR
FROM VALOR_EXTENSO(C.VL_MENSALIDADE)) VL_EXTENSO, {#10} (
SELECT O_VALOR
FROM VALOR_EXTENSO(C.VL_CONTRATO)) VL_TAXAEXTENSO, {#10} (
SELECT O_VALOR
FROM VALOR_EXTENSO(C.VL_TAXAS)) VL_TAXASEXTENSO, {#10} extract(day
FROM C.DT_VENCTOCONTRATO) DT_DIA, {#10} C.NR_DIAVENCTO DT_DIA_VENC_PARC, {#10} (
SELECT O_NUMERO
FROM NUMERO_EXTENSO(extract(day
FROM C.DT_VENCIMENTO))) DT_EXTENSO, {#10} PF.NR_RG, C.DT_EMISSAO, E.NR_INSCEST, COALESCE(PF.NR_RG,E.NR_INSCEST) NR_RGINSCMUN, {#10} C.NR_VALIDADE||' '||CASE WHEN C.TP_VALIDADE = 'D' THEN 'dia(s)' {#10} WHEN C.TP_VALIDADE = 'M' THEN 'mes(es)' {#10} WHEN C.TP_VALIDADE = 'A' THEN 'ano(s)' END NR_VALIDADE, {#10} C.DT_EVENTO, C.VL_CONTRATO , C.VL_MENSALIDADE, C.VL_MANUTENCAO, C.VL_LICENCIAMENTO, {#10} L.VL_ADDMANUTENCAO, L.VL_ADDLICENCIAMENTO, L.VL_ADICIONAL, {#10} EP.NR_CNPJCPF CNPJ, ME.DS_MUNICIPIO||' - '||ME.SG_ESTADO DS_MUNEMPRESA, EMP.NM_EMPRESA, {#10} EE.DS_ENDERECO||TRIM(Coalesce(', '||EE.NR_ENDERECO,''))|| Coalesce(' - '||EE.DS_COMPLEMENTO,'')|| Coalesce(' - '||EE.DS_BAIRRO,'') DS_ENDERECOEMP, {#10} C.DT_VENCTOPARCELA, C.DS_OBSERVACAO, {#10} PR.NM_PESSOA NM_REPRESENTANTE, PR.NR_CNPJCPF NR_CNPJREPRESENTANTE, RPR.NR_RG NR_RG_REPRESENTANTE, {#10} PF.DS_NATURALIDADE, PF.DS_ESTADOCIVIL , PF.DS_FUNCAO, P.DS_EMAIL, E.NR_CEP, C.NR_PARCELAS, {#10} (
SELECT O_NUMERO {#10}
FROM NUMERO_EXTENSO( NR_PARCELAS) ) DS_NRPARCELAS, {#10} (
SELECT O_NUMERO {#10}
FROM NUMERO_EXTENSO(C.VL_CONTRATO)) DS_VLTOTAL, {#10} (
SELECT O_NUMERO {#10}
FROM NUMERO_EXTENSO(C.VL_TAXAS)) DS_TAXAS, (C.VL_MENSALIDADE - C.VL_DESCONTO) VL_MENSALIDADEANTECIPADA, {#10} (
SELECT O_NUMERO {#10}
FROM NUMERO_EXTENSO(C.VL_MENSALIDADE - C.VL_DESCONTO)) DS_MENSALIDADEANTECIPADA, C.DT_VENCTOCONTRATO, I.DS_ITEM, AV.NM_PESSOA NM_AVALISTA, PFV.DS_NATURALIDADE DS_NATURALIDADEAVALISTA, {#10} PFV.DS_ESTADOCIVIL DS_ESTADOCIVILAVALISTA, PFV.DS_FUNCAO DS_FUNCAOAVALISTA, PFV.NR_RG NR_RGAVALISTA, PFV.NR_CPF NR_CPFAVALISTA, EAV.DS_ENDERECO DS_ENDERECOAVALISTA, EAV.NR_ENDERECO NR_ENDERECOAVALISTA, {#10} EAV.DS_COMPLEMENTO DS_COMPLEMENTOAVALISTA, EAV.DS_BAIRRO DS_BAIRROAVALISTA, MAV.DS_MUNICIPIO DS_MINICIPIOAVALISTA, SV.DS_ESTADO DS_ESTADOAVALISTA, AV.DS_EMAIL DS_EMAILAVALISTA, C.VL_VALOR1, C.VL_VALOR2, {#10} (
SELECT O_NUMERO {#10}
FROM NUMERO_EXTENSO( C.VL_VALOR1) ) DS_VALOR1, {#10} (
SELECT O_NUMERO {#10}
FROM NUMERO_EXTENSO(C.VL_VALOR2)) DS_VALOR2, {#10} CAST(C.VL_ENTRADA AS DOM_VARCHAR100) VL_ENTRADA, {#10} (
SELECT O_NUMERO {#10}
FROM NUMERO_EXTENSO(C.VL_ENTRADA)) DS_ENTRADA {#10}
FROM CONTRATO C {#10}
LEFT JOIN LICENCA L on (L.CD_EMPRESA = C.CD_EMPRESA {#10}
AND L.NR_CONTRATO = C.NR_CONTRATO) {#10}
INNER JOIN PESSOA P on (P.CD_PESSOA = C.CD_PESSOA) {#10}
LEFT JOIN PESSOAFISICA PF on (PF.CD_PESSOA = P.CD_PESSOA) {#10}
INNER JOIN ENDERECOPESSOA E on (E.CD_PESSOA = P.CD_PESSOA {#10}
AND E.CD_ENDERECO = COALESCE(C.CD_ENDERECO, (
SELECT O_CD_ENDERECO
FROM RETORNA_ENDERECO(P.CD_PESSOA, NULL)))) {#10}
INNER JOIN MUNICIPIO M on (M.CD_MUNICIPIO = E.CD_MUNICIPIO) {#10}
INNER JOIN ESTADO S on (S.SG_ESTADO = M.SG_ESTADO) {#10}
INNER JOIN EMPRESA EMP ON (EMP.CD_EMPRESA = C.CD_EMPRESA) {#10}
INNER JOIN PESSOA EP ON (EP.CD_PESSOA = EMP.CD_PESSOA) {#10}
INNER JOIN ENDERECOPESSOA EE on (EE.CD_PESSOA = EP.CD_PESSOA {#10}
AND EE.CD_ENDERECO = (
SELECT O_CD_ENDERECO
FROM RETORNA_ENDERECO(EP.CD_PESSOA, NULL))) {#10}
INNER JOIN MUNICIPIO ME on (ME.CD_MUNICIPIO = EE.CD_MUNICIPIO) {#10}
LEFT JOIN PESSOA PR ON (PR.CD_PESSOA = C.CD_REPRESENTANTE) {#10}
LEFT JOIN RETORNA_DADOSCADASTRAIS(PR.CD_PESSOA , NULL) RPR ON (1=1) {#10}
LEFT JOIN ITEM I ON (I.CD_ITEM = C.CD_ITEM) {#10}
LEFT JOIN PESSOA AV on (AV.CD_PESSOA = E.CD_AVALISTA) {#10}
LEFT JOIN PESSOAFISICA PFV on (PFV.CD_PESSOA = E.CD_AVALISTA) {#10}
LEFT JOIN ENDERECOPESSOA EAV ON (EAV.CD_PESSOA = PFV.CD_PESSOA) {#10}
LEFT JOIN MUNICIPIO MAV on (MAV.CD_MUNICIPIO = EAV.CD_MUNICIPIO) {#10}
LEFT JOIN ESTADO SV on (SV.SG_ESTADO = MAV.SG_ESTADO) {#10}
WHERE C.CD_EMPRESA = {Parametros[1] + #10}
AND C.NR_CONTRATO = {Parametros[2]}

Consulta #1​

SELECT P.NM_PESSOA||ASCII_CHAR(10)||R.DS_ENDCOMPLETO||ASCII_CHAR(10)|| COALESCE('Email.: '||R.DS_EMAIL||ASCII_CHAR(10),'')||'FONE: '||R.NR_TELEFONE||' - CNPJ '||R.NR_CNPJCPF
FROM EMPRESA E
INNER JOIN PESSOA P ON (P.CD_PESSOA = E.CD_PESSOA)
LEFT JOIN RETORNA_DADOSCADASTRAIS(P.CD_PESSOA, null) R ON (1 = 1)
WHERE E.CD_EMPRESA = {Parametros[1]}

Text #2​

SELECT M.DS_MACROCONTRATO, M.NM_COLUNA
FROM TIPOCONTRATO T
INNER JOIN MACROCONTRATO M ON (M.TP_TIPOCONTRATO = T.TP_TIPOCONTRATO)
WHERE T.CD_TIPOCONTRATO = {frmLCT010.Contrato.FieldByName(}CD_TIPOCONTRATO{).AsString}

Consulta #2​

SELECT FIRST 1 M.DS_MUNICIPIO||' - '||M.SG_ESTADO||','
FROM PESSOA P
INNER JOIN EMPRESA E ON (E.CD_EMPRESA = {Parametros[1]})
INNER JOIN ENDERECOPESSOA EP ON (EP.CD_PESSOA = P.CD_PESSOA)
INNER JOIN MUNICIPIO M ON (M.CD_MUNICIPIO = EP.CD_MUNICIPIO)
WHERE P.CD_PESSOA = E.CD_PESSOA
ORDER BY EP.CD_ENDERECO

Tabelas Utilizadas​

TabelaUso
Creferenciada nas queries do layout
CLAUSULACONTRATOreferenciada nas queries do layout
CONTRATOreferenciada nas queries do layout
EMPRESAreferenciada nas queries do layout
ENDERECOPESSOAreferenciada nas queries do layout
ESTADOreferenciada nas queries do layout
ITEMreferenciada nas queries do layout
LICENCAreferenciada nas queries do layout
MACROCONTRATOreferenciada nas queries do layout
MUNICIPIOreferenciada nas queries do layout
NUMERO_EXTENSOreferenciada nas queries do layout
PARMFATURreferenciada nas queries do layout
PESSOAreferenciada nas queries do layout
PESSOAFISICAreferenciada nas queries do layout
RETORNA_DADOSCADASTRAISreferenciada nas queries do layout
RETORNA_ENDERECOreferenciada nas queries do layout
TIPOCONTRATOreferenciada nas queries do layout
VALOR_EXTENSOreferenciada nas queries do layout

Shared Units​

  • jCommon
  • jPesquisa

Fonte​

  • Unit: source/LCT010/ULCT010.pas
  • DFM: source/LCT010/ULCT010.dfm
  • Package: source/LCT010/LCT010.dpk