Árvore de páginas

Versões comparadas

Chave

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

MATA712 - MRP Ordens de Produção

Linha de Produto:Protheus
Segmento:Manufatura
Módulo:SIGAPCP

Rotina:

MATA712

Versões:

Advanced Protheus 7.10, Microsiga Protheus 8.11, Protheus 10

Protheus 12

Compatível Países:

Todos

Sistemas Operacionais:

Todos

Compatível às Bases de Dados:

Todos

Nível de Acesso:

Nível 1 (Acesso Clientes)

Idiomas:Espanhol, Inglês

Objetivo:

O objetivo da função MATA712 (MRP) é gerar ordens de produção e solicitações de compras baseado em uma Demanda (Pedido/Previsão).

IMPORTANTE:

...

Sintaxe: MATA712 - Ordens de Produção ( PARAMIXB1PARAMIXB2 ) --> Nil

Retorno: Nil(nulo) 


Parâmetros:

O vetor PARAMIXB2 é composto pela estrutura abaixo:  

PARAMIXB2[1]   // Tipo de período 1=Diário;2=Semanal;3=Quinzenal;4=Mensal;5=Trimestral;6=Semestral;7=Diversos
PARAMIXB2[2]   // Quantidade de períodos
PARAMIXB2[3]   // Considera Pedidos em Carteira
PARAMIXB2[4]   // Array contendo Tipos  Tipos de produtos a serem considerados (se Nil, assume padrão)
PARAMIXB2[5]   // Array contendo Grupos de produtos a serem considerados (se Nil, assume padrão)
PARAMIXB2[6]   // Gera/Nao Gera OPs e SCs depois do cálculo da necessidade.
PARAMIXB2[7]   // Indica se monta log do MRP
PARAMIXB2[8]   // Número da Op Inicial
PARAMIXB2[9] // Database para inicio do cálculo
PARAMIXB2[10] // Números dos períodos para geração de OPs
PARAMIXB2[11] // Números dos períodos para geração de SCs
PARAMIXB2[12] // Máximo de 99 itens por OP
PARAMIXB2[13] // Datas para tipo de período diversos


No exemplo abaixo, existe a preparação do ambiente para rodar esta rotina, que é feita por meio do comando Prepare Environment.
// aemp[1] = Empresa (Caracter)
// aemp[2] = Filial  (Caracter)
// Administrador = Através de qual usuário irá executar a rotina. (Caracter)
// senha = Senha do usuário (Caracter)
PREPARE ENVIRONMENT EMPRESA aemp[1] ;
FILIAL aemp[2] ;
USER 'Administrador' ;
PASSWORD 'senha' ;
TABLES "SB1","SB2","SC2","SC3","SC4","SC6" ;
MODULO "PCP"


Exemplos:

User Function jobm712()

Local PARAMIXB1 := .T.            //-- .T. se a rotina roda em batch, senão .F.

Local PARAMIXB2 := {}

aAdd(PARAMIXB2,17)          //-- Tipo de período 1=Diário; 2=Semanal; 3=Quinzenal;                                         //   4=Mensal; 5=Trimestral; 6=Semestral; 7=Diversos

aAdd(PARAMIXB2,15)          //-- Quantidade de períodos

aAdd(PARAMIXB2,.T.)        //-- Considera Pedidos em Carteira

aAdd(PARAMIXB2,{})         //-- Array contendo Tipos de produtos a serem considerados                                       //  (, se Nil, assume padrão)

aAdd(PARAMIXB2,{})         //-- Array contendo Grupos de produtos a serem considerados                                        //  (, se Nil, assume padrão)

aAdd(PARAMIXB2,.T.)        //-- Gera/Não Gera OPs e SCs depois do cálculo da necessidade.

aAdd(PARAMIXB2,.T.)        //-- Indica se monta log do MRPaAdd(PARAMIXB2,"000001")                                        //-- Número da Op Inicial            

aAdd(PARAMIXB2,"98765")  //-- Número da Op Inicial

aAdd(PARAMIXB2,"02/10/2018")  //-- Database para inicio do cálculo

aAdd(PARAMIXB2,{1,3,5})  //-- Números dos períodos para geração de OPs

aAdd(PARAMIXB2,{1,3,5})  //-- Números dos períodos para geração de SCs

aAdd(PARAMIXB2,.F.)  //-- Máximo de 99 itens por OP

aAdd(PARAMIXB2,{"02/10/2018","04/10/2018","05/10/2018"})  //-- Datas para tipo de período diversos

aemp := {"99","01"}

Prepare Environment Empresa aemp[1] filial aemp[2] USER 'Administrador' PASSWORD '' Tables "SB1","SB2","SC2","SC3","SC4","SC6" Modulo "PCP"

...

RESET ENVIRONMENT

Return Nil 


Parâmetros:

 

Nome

  



Tipo

 

 


Descrição

 

 


Default

  


Obrigatório

  



Referência

  


PARAMIXB1

  



Lógico

  



.T. se a rotina roda em batch, senão .F.

  

   





X

     






PARAMIXB2

  



Vetor

 

 


(Vide Observações)

   

  





X

    

 






Para rodar em batch, exemplo:

...

Local nTipoPer  :=  1   -> Tipo de período 1=Diário;2=Semanal;                                          3=Quinzenal;4=Mensal;5=Trimestral;                                          6=Semestral;7=Diversos

Local nPeriodos := 20   -> Quantidade de períodos

...

Local aTipo     := Nil  -> Array contendo Tipos de produtos a serem                           considerados (, se Nil, assume padrão)

Local aGrupo    := Nil  -> Array contendo Grupos de produtos a serem                            considerados (, se Nil, assume padrão)

Local lGeraOpSc := .T.  -> Gera/Não Gera OPs e SCs depois do cálculo da necessidade.

...

Local cNumOpDig := "000001" -> Número da Op Inicial

Local cDatabase := "02/10/2018"

Local aPerOP := {1.3.5}

Local aPerSC := {1.3.5}

Local lMaxItemOp := .F.

Local aDataDiv := {}


Uso: MATA712(lBatch,{nTipoPer,nPeriodos,lPedidos,,,lGeraOpSc,lLogMRP,cNumOpDig,cDatabase,aPerOP,aPerSC,lMaxItemOp,aDataDiv})