Histórico da Página
GFEA1154 – Atribuição de Novo Valor a “Filial do Conhecimento”
Características do Requisito
Linha de Produto: | Microsiga Protheus |
Segmento: | Logística |
Módulo: | SIGAGFE |
Ponto de Entrada - GFEA1154
Descrição: | Atribuição de novo valor a “Filial do Conhecimento”. | ||||||||||||||||||||||||||||||||||||||||
Localização: | Rotina de Importação de Conhecimentos/EDI. | ||||||||||||||||||||||||||||||||||||||||
Programa Fonte: | GFEA115A - Importação de Conhecimentos/EDI (SIGAGFE) | ||||||||||||||||||||||||||||||||||||||||
Parâmetros: |
| ||||||||||||||||||||||||||||||||||||||||
Retorno: |
|
Bloco de código | ||||||
---|---|---|---|---|---|---|
| ||||||
#Include 'Protheus.ch' /* Se o conhecimento for substituição tributária e o remetente do frete estiver em SP deve-se criar o conhecimento no estabelecimento de origem, ou se o destinatário do documento estiver em SP deve-se criar o documento para o estabelecimento de destino. */ User Function GFEA1154() Local cFilCurr := PARAMIXB[1] Local cCNPJEmiss := PARAMIXB[2] Local cCNPJEmbarc := PARAMIXB[3] Local cCNPJDest := PARAMIXB[4] Local cUFRem := PARAMIXB[5] Local cUFDest := PARAMIXB[6] Local cFilNew := '' Local aGXH := PARAMIXB[7] Local cCdRem := PARAMIXB[8] Local cBuffer := PARAMIXB[9] Local aRet := Array(2) Local cCNPJConsi := "" //If empty(cCNPJDest) .Or. cCNPJDest == "" #Comentando por Marcos Wagner Jr. If !Empty(GFEA115BF(SubStr(cBuffer, 681, 14), .F.)) cCNPJDest := SubStr(cBuffer, 681, 14) EndIf cCdEmis := A118EMIT("1",cCNPJEmiss,aGXH) // Busca a Filial pelo CNPJ do Embarcador cFilCurr := GFEA115BF(cCNPJEmbarc, .F.) // Busca a filial pelo CNPJ do Destinatario If Empty(cFilCurr) cFilCurr := GFEA115BF(cCNPJDest, .F.) EndIf // Busca a filial pelo CNPJ do Emissor If Empty(cFilCurr) cFilCurr := GFEA115BF(cCNPJEmiss, .F.) EndIf cCNPJConsi := SubStr(cBuffer, 728, 14) // Busca a filial pelo CNPJ do Consignatario If Empty(cFilCurr) cFilCurr := GFEA115BF(cCNPJConsi, .T.) EndIf dbSelectArea("GU3") dbSetOrder(1) If dbSeek(xfilial("GU3")+ AllTrim(cCdEmis)) If GU3->GU3_APUICM == "2" If AllTrim(cUFRem) == 'SP' cFilNew := GFEA115BF(cCNPJEmbarc, .T.) Else If AllTrim(cUFDest) == 'SP' cFilNew := GFEA115BF(cCNPJDest, .T.) EndIF EndIf EndIf EndIf if !Empty(cFilNew) cFilCurr := cFilNew EndIf if Empty(cCdRem) cCdRem := "" EndIf dbSelectArea("GU3") dbSetOrder(11) If dbSeek(xfilial("GU3")+ AllTrim(cCNPJEmbarc)) cCdRem := GU3->GU3_CDEMIT Else dbSelectArea("GU3") dbSetOrder(11) If dbSeek(xfilial("GU3")+ Substr(AllTrim(cCNPJEmbarc),04,11)) cCdRem := GU3->GU3_CDEMIT EndIf EndIf aRet[1] := cFilCurr aRet[2] := cCdRem Return aRet |
//msginfo('cCNPJDest do buffer: '+cCNPJDest)//If empty(cCNPJDest) .Or. cCNPJDest == "" #Comentando por Marcos Wagner Jr.If !Empty(GFEA115BF(SubStr(cBuffer, 681, 14), .F.))cCNPJDest := SubStr(cBuffer, 681, 14)EndIF//msginfo('cCNPJDest apos o buffer: '+cCNPJDest)cCdEmis := A118EMIT("1",cCNPJEmiss,aGXH)//msginfo('cCNPJEmiss: '+cCNPJEmiss)// Busca a Filial pelo CNPJ do EmbarcadorcFilCurr := GFEA115BF(cCNPJEmbarc, .F.)//msginfo('cCNPJEmbarc: '+cCNPJEmbarc + ' filial retorno: '+cFilCurr)// Busca a filial pelo CNPJ do DestinatarioIf Empty(cFilCurr)cFilCurr := GFEA115BF(cCNPJDest, .F.)//msginfo('cCNPJDest: '+cCNPJDest + ' filial retorno: '+cFilCurr)EndIf// Busca a filial pelo CNPJ do EmissorIf Empty(cFilCurr)cFilCurr := GFEA115BF(cCNPJEmiss, .F.)//msginfo('cCNPJEmiss: '+cCNPJEmiss + ' filial retorno: '+cFilCurr)EndIF
cCNPJConsi := SubStr(cBuffer, 728, 14)// Busca a filial pelo CNPJ do ConsignatarioIf Empty(cFilCurr)cFilCurr := GFEA115BF(cCNPJConsi, .T.)//msginfo('cCNPJConsi: '+cCNPJConsi + ' filial retorno: '+cFilCurr)EndIFdbSelectArea("GU3")dbSetOrder(1)If dbSeek(xfilial("GU3")+ AllTrim(cCdEmis))If GU3->GU3_APUICM == "2"If AllTrim(cUFRem) == 'SP'cFilNew := GFEA115BF(cCNPJEmbarc, .T.)//msginfo('cCNPJEmiss SP: '+cCNPJEmbarc + ' filial retorno: '+cFilNew)ElseIf AllTrim(cUFDest) == 'SP'cFilNew := GFEA115BF(cCNPJDest, .T.)//msginfo('cCNPJDest SP: '+cCNPJEmbarc + ' filial retorno: '+cFilNew)EndIF EndIf EndIF EndIf if !Empty(cFilNew) cFilCurr := cFilNew EndIF if Empty(cCdRem) cCdRem := ""EndIf dbSelectArea("GU3")dbSetOrder(11)If dbSeek(xfilial("GU3")+ AllTrim(cCNPJEmbarc))cCdRem := GU3->GU3_CDEMITElsedbSelectArea("GU3")dbSetOrder(11)If dbSeek(xfilial("GU3")+ Substr(AllTrim(cCNPJEmbarc),04,11))cCdRem := GU3->GU3_CDEMITEndIfEndIf//msginfo('filial que vai ser gravada: '+cFilCurr) aRet[1] := cFilCurr aRet[2] := cCdRem Return aRet
Visão Geral
Import HTML Content
Conteúdo das Ferramentas
Tarefas