ALCVLDPOST - Validar informações na manutenção do empenho 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 ALCVLDPOST é executado nas requisições de manutenção do empenho. Com este ponto de entrada, é possível validar as informações que estão sendo enviadas para incluir, alterar ou excluir um empenho e retornar uma mensagem personalizada informando a inconsistência identificada, impedindo a inclusão, alteração ou exclusão do empenho, caso retorne conteúdo de erro. Este ponto de entrada é executado depois do ponto de entrada ALCMNTPOST, responsável pela manipulação dos dados para manutenção do empenho. | ||||||||
Localização: | API PCPAllocations, método POST ALLOCATION - Responsável por enviar os dados à rotina automática de manutenção de empenhos. | ||||||||
Eventos: | Não se aplica. | ||||||||
Programa Fonte: | PCPAllocations.PRW | ||||||||
Sintaxe: | ALCVLDPost( ) --> cErro | ||||||||
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 ALCVLDPOST() Local aItems := PARAMIXB[1] Local nOperacao := PARAMIXB[2] //3-inclusão;4-alteração;5-exclusão Local nPosPrd := aScan(aItems[1],{|x| AllTrim(x[1]) == "D4_COD"}) Local nPosLoc := aScan(aItems[1],{|x| AllTrim(x[1]) == "D4_LOCAL"}) Local cErro := "" If nOperacao == 4 If nPosPrd > 0 If AllTrim(aItems[1][nPosPrd][2]) == "PRODUTO" If nPosLoc > 0 .And. AllTrim(aItems[1][nPosLoc][2]) == "01" cErro := "O produto " + AllTrim(aItems[1][nPosPrd][2]) + " nao deve ser consumido do armazem " + AllTrim(aItems[1][nPosLoc][2]) + ". " EndIf EndIf EndIf EndIf Return cErro