Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

...

O ponto de entrada RNFINTEG, permite realizar validações adicionais após a triagem do título, e definir se a integração poderá prosseguir ou se será interrompidaabortada.

03. PARÂMETROS

Nome

Dados

Tipo

Descrição

PARAMIXB[1]

jDadosTit

JsonQuery padrão da rotina FINA989 para títulos a pagar

Dados do título conforme estrutura abaixo:

DadosTipoDescrição
jDadosTit['TABELA']CaractereTabela do título. (SE1 ou SE2)
jDadosTit['CHAVE']CaractereChave do título
jDadosTit['IDDOC']CaractereID Doc utilizada na integração com o TAF. Poderá ser IDDOC da FK7 ou IDFK2 da FK2

PARAMIXB[2]

cIdDocInt

Caractere

ID Doc utilizada na integração com o TAF. Poderá ser IDDOC da FK7 ou IDFK2 da FK2

PARAMIXB[3]

cOperacao

Caractere

Tipo de operação: 1 - Inclusão, 2 - Alteração, 3 - Exclusão, 4 - Baixa, 5 - Cancelamento da Baixa

PARAMIXB[4]

cTipoReg

Caractere

Tipo de registro: 1 - MIT, 2 - REINF

04. RETORNO

Nome

Tipo

Descrição

cQuerylRet

CaractereLógico

Define se a integração poderá prosseguir se será abortadaNova query modificada pelo ponto de entrada

05. EXEMPLO DE UTILIZAÇÃO

Bloco de código
languagevb
themeMidnight
firstline1
titleF989CRQYRNFINTEG
linenumberstrue
#include 'protheus.ch'

/*/{Protheus.doc} F989CPQYRNFINTEG()  

	Ponto de Entrada acionado antes de enviar título para integração com o TAF.
	
	Recebe a query padrão completa que faz a filtragem dos títulos a pagar 
    do Extrator Fiscal, permitindo  substitui-la com adaptações.
	
	@param ParamIxb[1] - cQuery - Query padrão da rotina FINA989 para títulos a pagar
    @return cRet - Query modificada pelo ponto de entrada@param ParamIxb[1] - jDadosTit - Tipo: Json - (Dados do título conforme estrutura abaixo)
						   jDadosTit["TABELA"] -  Tipo: Caractere - (Tabela do título) Tipo: Character // Ex.: 'SE2'
    	    	           jDadosTit["CHAVE"] -  Tipo: Caractere - (Chave do título) Tipo: Character  // Ex.: 'D MG 01 |TOT|TESTE3001| |NF |RNF001|01'
	                 	   jDadosTit["IDDOC"] -  Tipo: Caractere - (ID Doc do título na FK7) Tipo: Character // Ex.: '63F4444D399A4011BF6CD8CB8AD2DD59'
 	@param ParamIxb[2] - cIdDocInt - Tipo: Caractere - (ID Doc utilizada na integração com o TAF. Poderá ser IDDOC da FK7 ou IDFK2 da FK2) // Ex.: '3B3297B6419A4011BF6CD8CB8AD2DD59'
 	@param ParamIxb[3] - cOperacao - Tipo: Caractere - (Tipo de operação: 1 - Inclusão, 2 - Alteração, 3 - Exclusão, 4 - Baixa, 5 - Cancelamento da Baixa) // Ex.: '1'
  	@param ParamIxb[4] - cTipoReg - Tipo: Caractere - (Tipo de regi stro: 1 - MIT, 2 - REINF) // Ex.: '2'

	@return lRet (logical) - Retorna .T. para continuar a integração ou .F. para abortar.
/*/

User Function F989CPQYRNFINTEG()
    local aArea     := {}
    local aAreaTit   Local cQuery := {}
    local jDadosTit := ParamIXBPARAMIXB[1]
    local cIdDocInt := PARAMIXB[2] //Query padrão

    //Adiciona filtro por natureza
    cQuery += " AND SE2.E2_NATUREZ = '000001' "  

Return cQuery 
    local cOperacao := PARAMIXB[3]
    local cTipoReg  := PARAMIXB[4]
    local cSeekTit  := strTran(jDadosTit["CHAVE"], "|", "") //Ex.: 'D MG 01 TOTTESTE3001 NF RNF00101'

    if jDadosTit["TABELA"] == "SE2" .and. cTipoReg == "2"
        lRet := .F.
        aArea    := getArea()
        aAreaTit := SE2->(getArea())

        dbSelectArea("SE2")
        dbSetOrder(1) //E2_FILIAL+E2_PREFIXO+E2_NUM+E2_PARCELA+E2_TIPO+E2_FORNECE+E2_LOJA
        if SE2->(dbSeek(cSeekTit))
            lRet := SE2->E2_NATUREZ $ 'RNF000001 /RNF000002 /RNF000003 '
        endIf        

        restArea(aAreaTit)
        restArea(aArea)
    endIf

Return lRet



Templatedocumentos