Árvore de páginas

01. DADOS GERAIS

Produto:

TOTVS Saúde Planos

Linha de Produto:

Linha Protheus

Segmento:

Saúde

Módulo:

Planos - Linha Protheus - Relatórios

Função:Quitação de Débitos
País:Brasil
Ticket:14331389
Requisito/Story/Issue (informe o requisito relacionado) :DSAUBE-18668


02. SITUAÇÃO/REQUISITO

Necessidade de incluir uma consulta diferente da padrão na Declaração anual de débitos.

03. SOLUÇÃO

Implementando ponto de entrada PL772QRY para substituir a Query padrão na Declaração anual de débitos.

04. DEMAIS INFORMAÇÕES

Ponto de entrada:  PL772QRY

Parâmetros: PARAMIXB com 11 posições

  • PARAMIXB[1]: String contendo a Query padrão do sistema (Tipo Caractere).
  • PARAMIXB[2]: Número contendo 1 - Pessoa Fisica ou 2 Pessoa Jurídica (Tipo Numérico).
  • PARAMIXB[3]: String contendo o Código Instituição 'De' (Tipo Caractere).
  • PARAMIXB[4]: String contendo o Código Instituição 'Até' (Tipo Caractere).
  • PARAMIXB[5]: String contendo o Código da empresa 'De' (Tipo Caractere).
  • PARAMIXB[6]: String contendo o Código da empresa 'Até' (Tipo Caractere).
  • PARAMIXB[7]: String contendo o Contrato da empresa 'De' (Tipo Caractere).
  • PARAMIXB[8]: String contendo o Contrato da empresa 'Até' (Tipo Caractere).
  • PARAMIXB[9]: String contendo o Sub-Contrato da empresa 'De' (Tipo Caractere).
  • PARAMIXB[10]: String contendo o Sub-Contrato da empresa 'Até' (Tipo Caractere).
  • PARAMIXB[11]: Array contendo o primeiro e o último dia do ano informado na tela de Declaração anual de débitos (Tipo Array).

Retorno: Variável contendo a Query padrão ou customizada para ser executada no código  (Tipo Caractere).

Obs: O retorno da Query (padrão ou customizada) por regra deve conter os mesmos campos, são eles:

  • SE1.E1_CODINT;
  • SE1.E1_CODEMP;
  • SE1.E1_MATRIC;
  • SE1.E1_CONEMP;
  • SE1.E1_VERCON;
  • SE1.E1_SUBCON;
  • SE1.E1_VERSUB;
  • SE1.E1_CLIENTE;
  • SE1.E1_LOJA;
  • BBT.BBT_NIVEL;
  • SE1.E1_EMISSAO;
  • SE1.E1_VENCREA;
  • SE1.E1_SALDO;
  • SE1.E1_VALOR;
  • SE1.E1_STATUS;

Portanto o select deve começar com:

Padrão da Query
SELECT SE1.E1_CODINT, SE1.E1_CODEMP, SE1.E1_MATRIC, SE1.E1_CONEMP, SE1.E1_VERCON, SE1.E1_SUBCON, SE1.E1_VERSUB, SE1.E1_CLIENTE, SE1.E1_LOJA, BBT.BBT_NIVEL, SE1.E1_EMISSAO, SE1.E1_VENCREA, SE1.E1_SALDO,  SE1.E1_VALOR, SE1.E1_STATUS FROM ...


Exemplo de uso:

Exemplo 1
#Include 'Protheus.ch'

User Function PL772QRY()
    local cSql		:= PARAMIXB[1]              //Query padrão do sistema
    local nTpCont   := PARAMIXB[2]              //Pessoa Fisica - 1 / Pessoa Jurídica - 2
    local cIntDe 	:= PARAMIXB[3]              //Código Instituição De (E1_CODINT)
    local cIntAte 	:= PARAMIXB[4]              //Código Instituição Até (E1_CODINT)
    local cGruDe 	:= PARAMIXB[5]              //Código da empresa De (E1_CODEMP)
    local cGruAte 	:= PARAMIXB[6]              //Código da empresa Até (E1_CODEMP)
    local cConDe 	:= PARAMIXB[7]              //Contrato da empresa De (E1_CONEMP)
    local cConAte 	:= PARAMIXB[8]              //Contrato da empresa Até (E1_CONEMP)
    local cSubDe 	:= PARAMIXB[9]              //Sub-Contrato da empresa De (E1_SUBCON)
    local cSubAte 	:= PARAMIXB[10]             //Sub-Contrato da empresa Até (E1_SUBCON)
    local aRetDatas := aClone(PARAMIXB[11])     //Array contendo o primeiro e o último dia do ano informado na tela de Declaração anual de débitos - Ex: [0] = 01/01/2022 [1] = 31/12/2022 (Utilizar DToS nos valores)
    local cCustomSql := ""                      //Variavel para customizarmos a Query
   
    //Condicões do cliente
    //cCustomSql := "SELECT SE1.E1_CODINT, SE1.E1_CODEMP, SE1.E1_MATRIC, SE1.E1_CONEMP, SE1.E1_VERCON, SE1.E1_SUBCON, SE1.E1_VERSUB, SE1.E1_CLIENTE,
    //               SE1.E1_LOJA, BBT.BBT_NIVEL, SE1.E1_EMISSAO, SE1.E1_VENCREA, SE1.E1_SALDO,  SE1.E1_VALOR,  SE1.E1_STATUS FROM ... "
    
    //Importante: O retorno da Query padrão ou customizada por regra deve conter os seguintes campos: 
    //+----------------------------------------------------------------------------------------------------------------------------+
    // SE1.E1_CODINT, SE1.E1_CODEMP, SE1.E1_MATRIC, SE1.E1_CONEMP, SE1.E1_VERCON, SE1.E1_SUBCON, SE1.E1_VERSUB, SE1.E1_CLIENTE, 
    // SE1.E1_LOJA, BBT.BBT_NIVEL, SE1.E1_EMISSAO, SE1.E1_VENCREA, SE1.E1_SALDO,  SE1.E1_VALOR,  SE1.E1_STATUS
    //+----------------------------------------------------------------------------------------------------------------------------+

    //Podemos retornar tambem a propia query padrão do sistema.    
    cCustomSql := cSql

Return cCustomSql



05. ASSUNTOS RELACIONADOS

  • Não se aplica