Histórico da Página
GFEA841 - Ponto de entrada executado após a gravação do Frete Combinado (GFEA084), alternativo ao ponto de entrada padrão do MVC
Características do Requisito
Linha de Produto: | Protheus |
Segmento: | Distribuição e Logística |
Módulo: | SIGAGFE |
Ponto de Entrada - GFEA841
Descrição: | O objetivo desse ponto de entrada é tratar as informações salvas do Frete Combinado, no caso onde elas não estão armazenadas no Model da rotina GFEA084, e sim em arrays. O ponto de entrada é executado após a gravação, e foi projetado estritamente para substituir o evento MODELCOMMITNTTS do MVC, quando este não pode ser disparado. Motivo para a criação do ponto de entrada: ao resolver o problema da issue DLOGGFE-7357 (no qual o ponto de entrada MVC não executava), surgiu um bug de chave duplicada conforme a issue DLOGGFE-9573. Assim, para resolver os dois erros simultaneamente, foi desfeita a liberação da issue DLOGGFE-7357, e criado este ponto de entrada para atendê-la. | ||||||||||||||||
Localização: | Após a gravação do Frete Combinado | ||||||||||||||||
Programa Fonte: | GFEA084 - Frete Combinado | ||||||||||||||||
Parâmetros: |
Para todos os arrays, cada linha é composta por duas colunas, onde a primeira é o nome do campo e a segunda é o valor. Para os arrays das tabelas GWI e GWH, podem existir vários itens (linhas), e para cada item as duas colunas mencionadas acima. Exemplos de arrays: 1) GWF - Cálculo de Frete: PARAMIXB[1][1]: "GWF_FILIAL" 2) GWI - Componente do Cálculo de Frete PARAMIXB[2][5][1]: "GWI_CDCOMP" - Componente n: 3) GWH - Documento do Cálculo de Frete - Documento 1: | ||||||||||||||||
Retorno: |
|
Bloco de código | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||
#include "TOTVS.CH" //------------------------------------------------------------------- /*/{Protheus.doc} GFEA841 Ponto de entrada alternativo ao ponto de entrada padrão do MVC da rotina GFEA084 (Frete Combinado). Usado após a gravação. @author André Eduardo Pérez Álvarez @since 28.06.2019 @version 12.1.25 @example If ExistBlock("GFEA841") ExecBlock( "GFEA841", .F., .F., {aGWF, aGWI, aGWH} ) EndIf @description O objetivo desse ponto de entrada é tratar as informações salvas do Frete Combinado, no caso em que estas informações não estão armazenadas no Model da rotina GFEA084. @returns lRet @see GFEA084 @link http://jiraproducao.totvs.com.br/browse/DLOGGFE-9573 @link http://jiraproducao.totvs.com.br/browse/DLOGGFE-7357 @param PARAMIXB, Array, Array com as informações do Cálculo de Frete em 3 tabelas: PARAMIXB[1] - GWF - Cálculo de Frete PARAMIXB[2] - GWI - Componente do Cálculo de Frete PARAMIXB[3] - GWH - Documento do Cálculo de Frete /*/ //------------------------------------------------------------------- User Function GFEA841() Local nY := 0 Local nZ := 0 Local aLinha := {} Local aGWF := PARAMIXB[1] Local aGWI := PARAMIXB[2] Local aGWH := PARAMIXB[3] Local cCampo := "" Local cValor := "" Local lRet := .T. //------------------------------------------------- ConOut( "Acessando dados da GWF: ") //------------------------------------------------- For nY := 1 To Len(aGWF) cCampo := aGWF[nY,1] cValor := cValToChar(aGWF[nY,2]) ConOut( "Campo: " + cCampo + " Valor: " + cValor ) Next nY //------------------------------------------------- ConOut( "Acessando dados da GWI: ") //------------------------------------------------- For nY := 1 To Len(aGWI) ConOut( "Linha: " + AllTrim(Str(nY)) ) aLinha := aGWI[nY] For nZ := 1 To Len(aLinha) cCampo := aLinha[nZ,1] cValor := cValToChar(aLinha[nZ,2]) ConOut( "Campo: " + cCampo + " Valor: " + cValor ) Next nZ Next nY //------------------------------------------------- ConOut( "Acessando dados da GWH: ") //------------------------------------------------- For nY := 1 To Len(aGWH) ConOut( "Linha: " + AllTrim(Str(nY)) ) aLinha := aGWH[nY] For nZ := 1 To Len(aLinha) cCampo := aLinha[nZ,1] cValor := cValToChar(aLinha[nZ,2]) ConOut( "Campo: " + cCampo + " Valor: " + cValor ) Next nZ Next nY Return lRet |
Exemplo de execução: