Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

A rotina MDTA695 permite a realização da entrega de Equipamentos de Proteção Individual (EPI) para os Funcionários de forma automática (ExecAuto).

Produto:

Protheus

Versões:

Todas

Ocorrência:

Rotina Automática (ExecAuto) - MDTA695 (Entrega de EPI por Funcionário)

Ambiente:

SIGAMDT - Medicina e Segurança do Trabalho

Descrição:

Rotina Automática que permite o registro de uma entrega de Equipamento de Proteção Individual para o Funcionário.

Informações

A entrega de EPI registrada pela execução automática corresponde a uma entrega de EPI realizada manualmente pela rotina de Funcionário x EPIs (MDTA695)

Parâmetros:
NomeTipoDescriçãoConteúdo Padrão
ExpA1ArrayChaves para identificar o funcionário a ser realizada a entrega do EPI.Nulo
ExpA2ArrayInformação dos EPIs a serem entregues ao funcionário.Nulo 
ExpA3NuméricoInforma qual ação a rotina automática irá tomar.Nulo 

Passo a passo:

Bloco de código
languagetext
titleExemplo
#Include "Protheus.ch"

User Function Auto695()

	Local aFunc := {}
	Local aItem := {}
	Local nOpcao := 4

	Private lMSHelpAuto := .T. // para nao mostrar os erro na tela
	Private lMSErroAuto := .F. // inicializa como .F., volta .T. se houver erro

	aAdd( aFunc, {"RA_MAT", '000002', Nil } )// Array com a chave, setando no funcionário a ser entregue o EPI.

	// Dados dos EPI a ser entregue ao funcionário, deve se preencher no mínimo os campos obrigatórios para que ocorra a entrega.
	aAdd( aItem, { {"TNF_CODEPI", '000000000000001' , Nil },;
	               {"TNF_FORNEC", '000001', Nil },;
 	               {"TNF_LOJA", '00', Nil },; 
	               {"TNF_MAT", '000002', Nil },;
	               {"TNF_DTENTR", Date(), Nil },;
	               {"TNF_HRENTR", Time(), Nil },;
	               {"TNF_QTDENT", 1, Nil }})

	dbSelectArea("SRA")
	dbSetOrder(1)
	dbSelectArea("TNF")
	MSExecAuto({|x,z,y,w| MDTA695(x,z,y,w)},, aFunc, aItem, nOpcao )

	If lMSErroAuto
		MostraErro()
	EndIf

Return
Informações

O Modelo acima está baseado em campos padrões sem nenhuma integração ativa ou campos adicionais. Sugere-se que o desenvolvedor efetue uma simulação manual, com as integrações ativas, e observe todos os campos que poderão ser obrigatórios e deverão ser adicionados em suas respectivas posições para evitar erro no momento da execução pela falta de campos. O modelo acima não necessariamente é funcional e trata-se apenas de um exemplo orientativo de utilização.