Histórico da Página
GFEA1184 - POSSIBILITA A INCLUSÃO DE REGRAS PARA DEFINIÇÃO DO TIPO DE DOCUMENTO DE FRETE NA IMPORTAÇÃO DO CT-e
Características do Requisito
Linha de Produto: | Microsiga Protheus |
Segmento: | Supply Chain - Logística |
Módulo: | SIGAGFE |
Ponto de Entrada -
GFEA1183GFEA1184
Descrição: | Recebe o objeto conteúdo parcial do XML do CT-e que está sendo importado, a partir da tag <Cte>, inclusive todos os nós e informações descendentes. A partir deste conteúdo, pode-se criar regras para determinação do Tipo do Documento de Frete. | ||||||||||||||
Localização: | Será executado antes do processamento de importação padrão do GFEna importação do CT-e, na função que realiza a atribuição do Tipo do Documento de Frete. | ||||||||||||||
Programa Fonte: | GFEA118 - Importação de CT-e | ||||||||||||||
Parâmetros: |
| ||||||||||||||
Retorno: |
|
Bloco de código | ||||||
---|---|---|---|---|---|---|
| ||||||
User Function GFEA1183GFEA1184() Local _cTPDF := "1" Local _oXMLoCte := PARAMIXB[1] Local _cTpCte := U_XmlValid(_oCte,{"_INFCTE","_IDE"},"_TPCTE") Local _cTpServ := U_XmlValid(_oCte,{"_INFCTE","_IDE"},"_TPSERV") Local _cXCaracAd := "" Local _lRet := .TF. Local _cTpCteIf XmlChildEx(_oCte:_INFCTE,"_COMPL") != Nil .And. XmlChildEx(_oCte:_INFCTE:_COMPL,"_XCARACAD") != Nil _cXCaracAd := U_XmlValid(_oXMLoCte,{"_INFCTE","_IDECOMPL"},"_TPCTEXCARACAD") EndIf If _cTpCte == '1' .And. _cTpServ == '0' .And. Upper(_cXCaracAd) $ 'PALETIZACAO' _cTPDF := '2;3' // CT-e de anulação/substituição não devem ser importados. _lRet := .F. EndIf Return _lRet7' _lRet := .T. EndIf Return {_lRet, _cTPDF} User Function XmlValid(oTEMP,aNode,cTag) Local nCont Local cReturn := '' Private oXML := oTEMP //Navega dentro do objeto XML usando a variavel aNode como base, retornando o conteudo do TEXT ou o For nCont := 1 to Len(aNode) If ValType( XmlChildEx( oXML,aNode[nCont] ) ) == 'O' oXML := XmlChildEx( oXML,aNode[nCont] ) Else Exit Endif If nCont == Len(aNode) cReturn := &("oXML:"+cTag+':TEXT') Exit EndIf Next nCont Return cReturn |