Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

POPostVld - Validar informações para criação da ordem de produção 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]Caracter

Json em formato String com os campos da ordem de produção que foram informados no formulário.

Além disso, também foi incluída a tag "FORMCODE" no Json, que identificará o código do formulário que está enviando o POST.




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 POPostVld é executado nas requisições de criação da ordem de produção da API ProdOrderApp. Com este ponto de entrada, é possível validar as informações que estão sendo enviadas para gravar a ordem de produção, e retornar uma mensagem personalizada impedindo a criação da ordem caso as informações sejam inválidas. Este ponto de entrada é executado antes do ponto de entrada POPostMnt.
Localização:

API ProdOrderApp, método POST prodOrders - Responsável por enviar os dados à classe de gravação da ordem de produção.

Eventos:

Não se aplica.

Programa Fonte:ProductionOrderAppAPI.PRW

Sintaxe:

POPostVld( ) --> oJson

Retorno:
NomeTipoDescriçãoObrigatório
aRetArray

Deverá retornar um array com duas posições, onde a primeira posição é do tipo lógica ( .F. / .T.) determinando se as informações são válidas, e a segunda posição é do caracter onde será possível inserir uma mensagem de erro pro caso da primeira posição do array ser falsa, conforme pode ser visto no exemplo abaixo documentado.

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.

Bloco de código
languagec#
firstline1
titleExemplo
linenumberstrue
#INCLUDE "TOTVS.CH"

User Function POPostVld()
    Local cJson     := PARAMIXB[1]
    Local oJson     := JsonObject():New()
    Local aRet      := {}

    oJson:FromJson(cJson)

    If oJson["FORMCODE"] == "FORMOP"
        If oJson["C2_TPPR"] == "I"
            aRet := {.T., ""}
        Else
            aRet := {.F., "Formulário habilitado somente para ordens de produção internas."}
        EndIf
    EndIf

    FREEOBJ( oJson )

Return aRet