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): |
| ||||||||||||
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 informando a inconsistência identificada, impedindo a criação da ordem caso as informações sejam inválidas. Este ponto de entrada é executado depois do ponto de entrada POPostMnt, responsável pela manipulação dos dados para criação da Ordem de Produção. Formato dos Campos Os campos devem respeitar seus respectivos formatos, conforme são utilizados no Protheus. Ex.: Campos do tipo Numérico são referenciados sem as aspas (9999) e campos do tipo Lógico são atualizados no formato .T. ou .F. Campos Customizados Os campos customizados são referenciados a partir de seus respectivos nomes na tabela de Ordens de Produção (SC2). Ex.: oJson["C2_PREVEMB"] := DTOC(Date()) //Data atual no formato "DD/MM/AA" oJson["C2_VALINI"] := 100 oJson["C2_EMERG"] := .T. | ||||||||
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: |
| ||||||||
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. |
#INCLUDE "TOTVS.CH" User Function POPostVld() Local cJson := PARAMIXB[1] Local oJson := JsonObject():New() Local aRet := {} //Converte a string JSON para objeto JSON, para que seja possível manipular os dados. 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 //Limpa da memória o objeto Json utilizado. FREEOBJ( oJson ) Return aRet