Árvore de páginas

PA200PRD - Validação do produto na estrutura de produtos

Linha de Produto:

Protheus

Segmento:

Manufatura

Módulo:

SIGAPCP - Planejamento e Controle da Produção

Parâmetro(s):

NomeTipoDescriçãoDefaultObrigatórioReferência
PARAMIXB[1]CaracterCódigo do produto Pai. 


PARAMIXB[2]CaracterCódigo do produto Componente.


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 PA200PRD é executado após as validações padrões do código do produto PAI e do código do produto Componente no cadastro de estruturas (PCPA200).
Localização:

Function P200VLDPAI - Função de validação do código do produto Pai da estrutura.

Function P200ValCpo - Função de validação das informações dos componentes da estrutura.

Eventos:

Durante a manipulação do código do produto no cadastro de estrutura.

Programa Fonte:PCPA200.PRW

Sintaxe:

PA200PRD( [ cPrdPai ], [ cPrdComp] ) --> lRet

Retorno:

lRet - Indica se o código do produto está válido ou não. Retorno obrigatório do tipo Lógico.

  • .T. → Produto é válido. A rotina permitirá informar o produto.
  • .F. → Produto não é válido. A rotina não permitirá continuar o cadastro com o produto informado.
Observações:

Este ponto de entrada é chamado tanto para validar o código do produto pai informado em tela, tanto para validar o código dos componentes informados.

Quando o ponto de entrada estiver sendo chamado pela validação do produto pai, o código do produto componente será enviado em branco.

Quando o ponto de entrada estiver sendo chamado pela validação do produto componente, será enviado tanto o código do produto pai, quanto o código do produto componente.

Exemplo
#INCLUDE "TOTVS.CH"

User Function PA200PRD()
	Local lRet     := .T.
	Local aAreaB1  := SB1->(GetArea())
	Local cPrdPai  := PARAMIXB[1]
	Local cPrdComp := PARAMIXB[2]
	
	//Validações do produto PAI
	SB1->(dbSetOrder(1))
	If SB1->(dbSeek(xFilial("SB1")+cPrdPai))
		If SB1->B1_TIPO == "MP"
			Help(,,'Help',, "Produto PAI não pode ser do tipo MP.",1,0,,,,,,{"Informe um produto PAI que não seja do tipo MP."}) 
			lRet := .F.
		EndIf
	EndIf

	//Validações do produto COMPONENTE
	If lRet .And. !Empty(cPrdComp)
		If SB1->(dbSeek(xFilial("SB1")+cPrdComp))
			If SB1->B1_TIPO == "PA"
				Help(,,'Help',, "Produto COMPONENTE não pode ser do tipo PA.",1,0,,,,,,{"Informe um produto COMPONENTE que não seja do tipo PA."}) 
				lRet := .F.
			EndIf
		EndIf
	EndIf
	
	SB1->(RestArea(aAreaB1))
Return lRet