Histórico da Página
LAPostVld - Validar informações no apontamento de perda 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 LAPostVld é executado na requisição de apontamento da perda da API ProductionAppointment. Com este ponto de entrada, é possível validar as informações que estão sendo enviadas para gravar o apontamento de perda e retornar uma mensagem personalizada informando a inconsistência identificada, impedindo a persistência do apontamento de perda caso as informações sejam inválidas. Este ponto de entrada é executado depois do ponto de entrada LAPostMnt, responsável pela manipulação dos dados para o apontamento de perda.
| ||||||||
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. |
Dica | ||
---|---|---|
| ||
Os campos customizados são referenciados a partir de seus respectivos nomes na tabela de Apontamento de Perda (SBC). Ex.: oJson["BC_DATACSTDATA"] := Date(CTOD("01/06/24") //Data atual no formato "DD/MM/AA" oJson["BC_QUANTCSTNUME"] := 100 oJson["BC_CSTLOGI"] := .T. |
API ProductionAppointment, método POST lossAppointment - Responsável por enviar os dados ao programa MATA685 para persistir o apontamento da perda.
Não se aplica.
Sintaxe:
LAPostVld( ) --> oJson
Nome | Tipo | Descrição | Obrigatório |
---|---|---|---|
aRet | Array | 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 tipo 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 |
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 | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
#INCLUDE "TOTVS.CH" User Function LAPostVld() Local aRetVld := {.T.,""} Local cBodyParam := PARAMIXB[1] Local oJsRet := JsonObject():New() //Converte a string JSON para objeto JSON, para que seja possível manipular os dados. oJsRet:FromJson(cBodyParam) If oJsRet["BC_OPERAC"] == "10" aRetVld := {.F.,"Não é permitido apontar perda na operação 10!"} EndIf conout("arrtokstr: " + arrtokstr(aRetVld)) //Limpa da memória o objeto Json utilizado. FreeObj(oJsRet) Return aRetVld |