Árvore de páginas

MTI650UTTP - Alterar o valor da tag UnitTimeType da mensagem ProductionOrder

Ponto de Entrada

Linha de Produto:

Protheus

Segmento:

Manufatura

Módulo:

SIGAPCP - Planejamento e Controle da Produção

Parâmetro(s):

PARAMIXB (Array) -> Possui as informações da ordem/operação que está sendo enviada.

  • PARAMIXB[1] - Número da ordem de produção - (SC2.C2_NUM+SC2.C2_ITEM+SC2.C2_SEQUEN);
  • PARAMIXB[2] - Código do produto da ordem - (SC2.C2_PRODUTO);
  • PARAMIXB[3] - Código do roteiro (SG2.G2_CODIGO OU SHY.HY_ROTEIRO OU SH8.H8_ROTEIRO);
  • PARAMIXB[4] - Código da operação (SG2.G2_OPERAC OU SHY.HY_OPERAC OU SH8.H8_OPER).

Ponto de Entrada:

MTI650UTTP - Alterar o valor da tag UnitTimeType da mensagem ProductionOrder

País(es):

Todos

Idioma:Português(Brasil)

Banco(s) de Dados:

Todos

Tabelas utilizadas:


Sistema(s) operacional(is):

Todos

Versões/Release:

Microsiga_Protheus 12.1.20

Descrição:

Permite que o valor enviado na tag UnitTimeType da mensagem ProductionOrder seja alterado, antes da mensagem ser enviada.

Localização:

Function MATI650 -> Adapter de ordem de produção

Programa Fonte:MATI650.prw
Retorno:cTimeType - Tipo de unidade de tempo. Valor que será enviado na tag UnitTimeType. Os valores podem ser: 1->Horas; 2->Minutos; 3->Segundos; 4->Dias
Observações:

Este ponto de entrada é utilizado quando é necessário enviar o tipo de unidade de tempo diferente do valor 1 (Horas).

Por padrão, o sistema sempre irá enviar a tag UnitTimeType com o valor 1 (Horas), e se for necessário tratar o tempo das operações em outra unidade de tempo, este ponto de entrada será utilizado para alterar a unidade de tempo. Os valores que indicam a unidade de tempo são: 1 (Horas), 2 (Minutos), 3 (Segundos) ou 4 (Dias).

Exemplo:
#Include 'Protheus.ch'

User Function MTI650UTTP()
	Local cOrdem    := PARAMIXB[1] //Número da ordem de produção (SC2.C2_NUM+SC2.C2_ITEM+SC2.C2_SEQUEN)
	Local cProduto  := PARAMIXB[2] //Código do produto (SC2.C2_PRODUTO)
	Local cRoteiro  := PARAMIXB[3] //Código do roteiro (SG2.G2_CODIGO OU SHY.HY_ROTEIRO OU SH8.H8_ROTEIRO)
	Local cOperacao := PARAMIXB[4] //Código da operação (SG2.G2_OPERAC OU SHY.HY_OPERAC OU SH8.H8_OPER)
	
	Local cTimeType := "1" //Retorno do ponto de entrada. 1->Horas; 2->Minutos; 3->Segundos; 4->Dias

	/*
		Exemplo de regra: Se o código do produto da ordem for igual a TST-PA1 e o código da operação
		for 10, irá enviar a tag UnitTimeType com o valor 4 (Dias). Caso contrário, envia como 1 (Horas).
	*/
	If AllTrim(cProduto) == "TST-PA1" .And. AllTrim(cOperacao) == "10"
		cTimeType := "4"
	EndIf

Return cTimeType