Produto: | |
---|---|
Linha de Produto: | |
Segmento: | |
Módulo: | SIGAOMS - Gestão de Distribuição |
Função: | TMSXWS - Processamento de integrações |
País: | Todos Países |
Ticket: | 14791141 |
Requisito/Story/Issue (informe o requisito relacionado) : | DLOGWMSMSP-14378 |
Ponto de Entrada para não incluir e alterar os dados relacionados com a integração de liberação de viagens do TOTVS Otimização Logística (TOL).
Com a ativação e retorno do valor verdadeiro (.T.) do Ponto de Entrada, ao liberar uma viagem no TOL os processos relacionados a liberação de viagem no Protheus não serão processados. Mesmo que a viagem não seja não processada no Protheus, será enviado "S" para o TOL, para responder como recebida e liberada.
Se o Ponto de Entrada retornar Falso (.F.), o processamento da viagem ocorrerá de forma padrão. Da mesma forma, será necessário finalizar toda a regra de negócio no Protheus para devolver "N" ou "S" ao TOL.
Localizado após o recebimento do XML de liberação de viagens.
Funções chamadoras do Ponto de entrada:
Nome | Tipo | Descrição |
---|---|---|
oXmlBody | Objeto | Objeto da integração. |
cConteudo | Objeto | XML em formato Caractere. |
cNameFunc | Caracter | Nome da Função Chamadora do PE ("PublishReleasedTrip", "ReprogramService" e "CancelService") |
Nome | Tipo | Descrição |
---|---|---|
aRet | Array | aRet [1] - Retorno Logico (boolean) ".T." ou ".F.". Retorne ".T." para não realizar o processamento padrão. aRet [2] - Retorno Logico (boolean) ".T." ou ".F.". Retorne ".T." para indicar se executa ou ".F." para não o Nó XML. aRet [3] - Objeto de Retorno a ser executado no Nó XML. aRet [4] - Retorno Logico (boolean) ".T." ou ".F.". Indica para o TOL, se a Viagem será ".T." recebida e liberada ou ".F." não recebida. |
Protheus 12.1.33 ou superiores.
É importante reforçar que não haverá desbloqueio de viagem automático (MV_CPLLVA) e a geração automática de carga (MV_CPLAUT), caso o Ponto de Entrada retorne Verdadeiro (.T.). O processo será direcionado para resposta ao TOL, sobre o recebimento da integração pelo Protheus.
Se o Ponto de Entrada retornar Verdadeiro (.T) e caso seja necessário gravar o XML de recebimento de liberação de viagem do TOL em disco, execute dentro do PE o seguinte comando, passando o ID da mensagem:
OMSXGRVXML("PublishReleasedTrip",@cConteudo,"DK0",cValToChar("NUMERO DA MENSAGEM QUE VEIO NO XML NO ELEMENTO messageId"))
O Ponto de Entrada recebe o XML para que sejam executadas regras customizadas ao processar ou realizar o retorno, conforme necessidade.
O ponto de entrada é executado em três funções diferentes por essa razão informamos no terceiro parâmetro "cNameFunc" a função que está executando o PE no momento.
#Include "PROTHEUS.CH" #Include "FWMVCDEF.CH" User Function OMSTOL01() Local oXmlBody := PARAMIXB[1] Local cConteudo := PARAMIXB[2] Local cOrigem := PARAMIXB[3] Local lRet := .T. Local oResponse := Nil Local aRet := {} Private XMLREC := oXmlBody If cOrigem == "ReprogramService" oResponse := RepTrip(oXmlBody,@cConteudo) ElseIf cOrigem == "CancelService" oResponse := CanTrip(oXmlBody,@cConteudo) ElseIf cOrigem == "PublishReleasedTrip" lRet := RecTrip(oXmlBody,@cConteudo) EndIf aRet := { lRet,; //Protheus executa processo padrão? Sim = Retornar .F., Não = Retornar .T. .T.,; //Retorno Logico (boolean) ".T." ou ".F.". Retorne .T. para indicar se executa ou não o Nó XML. oResponse,; //Objeto de Retorno a ser executado no Nó XML. .T. } //Retorno Logico (boolean) ".T." ou ".F.". Indica para o TOL, se a Viagem será ".T." recebida e liberada ou ".F." não recebida. Return aRet //Regra de negocio |
<style> div.theme-default .ia-splitter #main { margin-left: 0px; } .ia-fixed-sidebar, .ia-splitter-left { display: none; } #main { padding-left: 10px; padding-right: 10px; overflow-x: hidden; } .aui-header-primary .aui-nav, .aui-page-panel { margin-left: 0px !important; } .aui-header-primary .aui-nav { margin-left: 0px !important; } .aui-tabs.horizontal-tabs>.tabs-menu>.menu-item.active-tab a::after { background: #FF9900; !important } .menu-item.active-tab { border-bottom: none !important; } </style> |