MATA250 - Produção

Linha de Produto:

Protheus

Segmento:

Manufatura

Módulo:

SIGAPCP - Planejamento e Controle da Produção

Parâmetro(s):


Nome
Tipo
Descrição
Obrigatório Referência

aVetor
Array of Record
Array contendo os campos que serão enviados para a Produção.
X



nOpc
Numérico
Opção escolhida: 3) Inclusão5) Estorno7) Encerramento
X


Descrição:

Esta rotina possibilita a execução do apontamento de produção, estorno do apontamento de produção e encerramento da ordem de produção, na rotina Produção, de forma automática.

Observações:

O parâmetro AUTPRTOTAL pode ser preenchido na execução da rotina automática de Encerramento, quando o MV_PRODPR0 estiver configurado como 3, para definir se o campo D3_PARCTOT será atualizado com o conteúdo T no encerramento.

Para encerramentos manuais, é apresentada uma pergunta para confirmação ou não da alteração do campo para apropriação de custo.

O parâmetro deve ser preenchido com:

"S" -> Altera o conteúdo do campo D3_PARCTOT para T
"N" -> Não altera o conteúdo do campo D3_PARCTOT, deixando o campo preenchido com P

O parâmetro ABREOP pode ser preenchido na rotina automática de Estorno, possibilitando estornar o apontamento da produção e permitindo ao usuário estornar ou não o empenho gerado na SD4.
O parâmetro deve ser preenchido como:

"N" -> Estornará o apontamento da produção, porem, não estornará o empenho do SD4
"S" -> Fara o estorno do apontamento e o estorno do empenho gerado no SD4

Abrangência:

Protheus 10
Para que o sistema faça a baixa dos empenhos na chamada via ExecAuto, mesmo com o parâmetro Atu. Empenho está igual a Não, deve-se enviar um campo extra no array chamado "ATUEMP", com valor "T".
Quando receber este campo no array, o sistema fará a baixa do empenho, simulando a resposta da pergunta "O tipo de movimento da producao esta configurado para nao atualizar empenhos.No encerramento devem ser atualizados ?".

Sintaxe:

MATA250 - Produção ( < aVetor>, < nOpc> ) --> Nil

Retorno:

NIL (Nulo)

User Function RMATA250() Local aVetor := {}          Local dDataLocal nOpc   := 3 //-Opção de execução da rotina, informado nos parametros quais as opções possiveislMsErroAuto := .F.          RpcSetEnv( "99","01",,,,,,,,,)dData:=dDataBaseaVetor := {;                {"D3_OP" ,"00000501001  "  ,NIL},;{"D3_TM" ,"010" ,NIL}}                                                      MSExecAuto({|x, y| mata250(x, y)},aVetor, nOpc )  If lMsErroAuto    Mostraerro()else    Alert("Ok")EndifReturn

{"D3_OP" , "00018001001 " , NIL},;

{"D3_TM" , "020" , NIL},;

{"D3_QUANT" , 10 , NIL},;

{"D3_PERDA" , 0 , NIL},;

{"D3_PARCTOT", "T" , NIL},;

{"ATUEMP" , "T" , NIL};

}