Árvore de páginas

PApAposAp - Executar uma ação após a efetivação do apontamento pelo APP Minha Produção

Linha de Produto:

Protheus

Segmento:

Manufatura

Módulo:

SIGAPCP - Planejamento e Controle da Produção

Parâmetro(s):

NomeTipoDescriçãoDefaultObrigatórioReferência
PARAMIXB[1]Integer

Recno do movimento de produção que acabou de ser realizado (SD3 - D3_CF = PR0)




PARAMIXB[2]ObjectObjeto contendo o Json com as informações do apontamento de produção que acabou de ser realizado


PARAMIXB[3]Caracter

Json em formato String com as informações do apontamento de produção que acabou de ser realizado




Idiomas:

Todos

País(es):

Todos

Banco(s) de Dados:

Todos

Sistema(s) Operacional(is):

Todos

Ponto de Entrada

Descrição:
O ponto de entrada PApAposAp é executado após a efetivação do apontamento simples (MATA250) pela API ProductionAppointment. Com este ponto de entrada é possível executar uma ação após a efetivação do apontamento simples. Como por exemplo, endereçar os produtos apontados.
Localização:

API ProductionAppointment, método POST MATA250 - Inclui novo apontamento na ordem de produção através do apontamento simplificado (mata250).

Eventos:

Não se aplica.

Programa Fonte:ProductionAppointment.PRW

Sintaxe:

PApAposAp( ) --> aArrayRet

Retorno:
NomeTipoDescriçãoObrigatório
aArrayRetArray

Variável do tipo array com as informações nas posições:

1.1 - Retorno do PE (.T. - True ou .F. - False)

         .T. (True) - A API será retornada com sucesso.

         .F. (False) - A API será retornada com erro.

1.2 - Resposta da API. Se o retorno da posição 1.1 for True, deve ser retornada a informação do parâmetro PARAMIXB[3]. Se o retorno da posição 1.2 for False, deve ser retornada a mensagem de inconsistência que será retornada pela API.

Sim
Observações:

Não é permitida a utilização de qualquer componente de interface gráfica nesse ponto de entrada, visto que a função será executada durante uma requisição REST.

A chamada deste PE é feito após a efetivação do apontamento de produção. Com isso, mesmo o PE retornando False o apontamento já foi efetivado na base de dados. Para reverter esse apontamento é necessário realizar um estorno desse apontamento no PE.

Se ocorrer alguma inconsistência no apontamento de produção, o PE não será chamado. O PE só é chamado quando o apontamento é realizado com sucesso.

Exemplo
#INCLUDE "TOTVS.CH"

User Function PApAposAp()

Local aArray     := {}
Local lRet       := .T.

Local cRecno     := PARAMIXB[1] //RECNO da SD3
Local oJson      := PARAMIXB[2] //Objeto do Json
Local cResponse  := PARAMIXB[3] //String do Json

//Se o lRet for False o cResponse deve conter a mensagem do problema para ser retornado na API
//Se o lRet for True o cResponse deve conter a String do Json para ser retornado na API

AADD (aArray, {lRet, cResponse})

Return aArray