Histórico da Página
01. CN121ENC - Realizar operações ao final do processo de encerramento da Medição
Produto: |
| ||||||||
---|---|---|---|---|---|---|---|---|---|
Linha de Produto: |
| ||||||||
Segmento: |
| ||||||||
Módulo: | Gestão de Contratos | ||||||||
Função: | CNTA121 - Medições | ||||||||
Ponto de Entrada: | CN121ENC |
02. DETALHES
Descrição: | Possibilita ao desenvolvedor realizar operações após o estorno encerramento da medição que tenha ocorrido com sucesso, ou seja, esse ponto de entrada não é chamado caso a operação falhe. | ||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Eventos: | Executado uma vez ao fim do estorno encerramento ainda dentro da transação e mais uma vez após o fim da transação. | ||||||||||||||||||||
Programa Fonte: | CNTA121.PRW | ||||||||||||||||||||
Função: | CN121MedEnc | ||||||||||||||||||||
Parâmetros: |
Contêm os documentos que foram estornados durante o processamento. O vetor contêm a estrutura abaixo: Posição | Tipo | Descrição | 1 | Caractere | Tipo do Documento. Valores possíveis são:
2 | Caractere | Identificador do documento, ou seja, o número do pedido ou do título. | 3 | Variável | A terceira posição varia entre o tipo numérico para títulos, nesse caso armazena o RecNo da Medição(CND). Para pedidos de compra/venda, a terceira posição é do tipo caractere e armazena a filial da medição(CND_FILMED).
| ||||||||||
Retorno: |
|
Bloco de código | ||||
---|---|---|---|---|
| ||||
#INCLUDE "Protheus.ch" /*{Protheus.doc} CN121ESTCN121ENC() Possibilita ao desenvolvedor realizar operações após o estornoencerramento da medição que tenha ocorrido com sucesso. */ User Function CN121ESTCN121ENC() Local aDocumentslInTrans:= PARAMIXB[1] //Listagem de documentos estornados pela medição.Verdadeiro caso seja dentro da transação, Falso fora da transação Local lInTranslResult := PARAMIXB[2] //Verdadeiro caso sejaencerramento tenha dentroocorrido dacom transaçãosucesso, Falsofalso foracaso da transação Local nX := 0 Local cTipo := "" Local cIdDoc := "" Local xTemp := Nil Local cMensagem := ""tenha falhado por algum motivo. If lInTrans MsgInfo("Chamada dentro da transação." ,"U_CN121ESTCN121ENC") Else MsgInfo("Chamada fora da transação." ,"U_CN121ESTCN121ENC") EndIf for nX := 1 to Len(aDocuments) cMensagem := "" cTipo := aDocuments[nX, 1] cIdDoc:= aDocuments[nX, 2] xTemp := aDocuments[nX, 3]//Para pedidos, guarda a filial da medição. Para títulos, o RecNo da CND. Do Case Case(cTipo == "1")//Pedido de Compra cMensagem += "Pedido de Compra:"+cIdDoc cMensagem += ". Filial Medicao := "+ xTemp Case(cTipo == "2")//Pedido de Venda cMensagem += "Pedido de Venda:"+cIdDoc cMensagem += ". Filial Medicao := "+ xTemp Case(cTipo == "3")//Titulo a Pagar - SE2 cMensagem += "Titulo a Pagar:"+cIdDoc cMensagem += ". RecNo Medicao := "+ cValToChar(xTemp) Case(cTipo == "4")//Titulo a Receber - SE1 cMensagem += "Titulo a Receber:"+cIdDoc cMensagem += ". RecNo Medicao := "+ cValToChar(xTemp) EndCase MsgInfo(cMensagem , "U_CN121EST") next nX Return If lResult MsgInfo("Encerramento OK." ,"U_CN121ENC") Else MsgInfo("Encerramento Falhou." ,"U_CN121ENC") EndIf Return |
Aviso | ||
---|---|---|
| ||
Esse ponto de entrada será acionado exclusivamente para medições que foram incluídas pelo CNTA121. Medições que tenham sido incluídas pelo CNTA120, mesmo que sejam encerradas pela nova rotina(CNTA121), internamente o sistema identifica a origem da medição e a encerra utilizando a rotina antiga, nesse cenário o ponto de entrada CN121ENC não será acionado, e sim o antigo CN120ENCMD. |