Árvore de páginas


01. Priorização

O processo de priorização consiste em definir a prioridade em que as ordens de produção e suas operações serão consideradas no nivelamento da produção.

A prioridade será por data de entrega, priorizando as ordens de produção que devem ser entregues primeiro ou por data de início, priorizando as ordens de produção que devem iniciar primeiro. Considera o parâmetro "Priorização" da tela de configuração da programação, aba Nivelamento.



Para cada ordem encontrada deverá verificar se possui ordens filhas/intermediárias considerando o C2_SEQPAI (Seq. Pai), sendo que, se existir, as intermediárias devem ser priorizadas antes das ordens dos demais produtos que não possuem sequência da ordem pai (para que seja possível priorizar todas as ordens utilizadas para entregar o produto final). Quando existir o Seq. Pai será gerada a árvore de ordens de produção, ou seja, todas as ordens de produção utilizadas para atender determinada produção.


Importante

Nos casos onde uma árvore é "quebrada" por conta de algum filtro, a priorização será calculada como parte isolada do processo, ou seja, cada ordem de produção que não possua uma ordem pai (ordem principal ou intermediária cuja ordem pai foi excluída pelos filtros da programação) será uma árvore diferente.


Exemplo:

Estruturas:

PAINível 1Nível 2Nível 3
A



A1



Componente

A2



Componente

A3



A4



Componente
PaiNível 1Nível 2Nível 3
B



B1



B3



Componente

B2



Componente
PaiNível 1Nível 2Nível 3
C



C1



Componente

C2



C3



Componente


Cada produto e seus intermediários possuem as seguintes operações:

ProdutoOperaçãoRecurso
A;A1;A2;A3;A410REC1
A;A1;A2;A3;A420REC2
A;A1;A2;A3;A430REC3
B;B1;B2;B310REC4
B;B1;B2;B320REC5
C;C1;C2;C310REC6
C;C1;C2;C320REC7


Ordens de produção (as que possuem "Seq. Pai" fazem parte da mesma árvore):

OPProdutoData de EntregaData de inícioSeq. Pai
OP0101001A30/0630/06
OP0201001B30/0630/06
OP0101002A129/0629/06001
OP0101003A228/0628/06001
OP0101004A3270627/06001
OP0101005A425/0625/06004
OP0201002B129/0629/06001
OP0201003B328/0628/06002
OP0201004B229/0629/06001
OP0301001C29/0620/06
OP0401001C128/0619/06
OP0501001C228/0618/06
OP0601001C328/0620/06
OP0701001A25/0625/06
OP0701002A124/0624/06001
OP0701003A223/0623/06001
OP0701004A322/0622/06001
OP0701005A520/0620/06

004


Priorização conforme o parâmetro "Priorização" da tela de configuração da programação, aba Nivelamento:


Prioriza a ordem que precisa ser entregue primeiro, da última operação para a primeira.

As ordens de produção são ordenadas por data de entrega (ordem crescente), prioridade da ordem de produção, saldo da ordem de produção (ordem decrescente), data de início (ordem crescente), código do produto e número da ordem (Número + Item + Sequência + Item Grade).

Observação: O saldo da ordem de produção é considerado: C2_QUANT - C2_QUJE. Caso o parâmetro MV_PERDINF esteja configurado como .F., também é subtraído o valor da coluna C2_PERDA.

As operações das ordens principais e intermediárias são ordenadas decrescentemente.

A ordenação considera o "Seq. Pai" para que não seja priorizada uma ordem de produção filha antes da ordem de produção pai:


OPOperaçãoPrioridadeÁrvore/IDObservação
OP07010013011Priorizou a OP do produto acabado, com menor
data de entrega e considerando da última operação
para a primeira.
OP07010012021
OP07010011031
OP07010023041Priorizou a ordem filha pois está dentro da mesma árvore, devido ao Seq. Pai 
OP07010022051
OP07010021061
OP07010033071
OP07010032081
OP07010031091
OP070100430101
OP070100420111
OP070100410121
OP070100530131Priorizou a ordem filha pois está dentro da mesma árvore, devido ao Seq. Pai 
OP070100520141
OP070100510151





OP04010012016
Priorizou a OP do produto acabado, com menor
data de entrega e considerando da última operação
para a primeira.
Este produto não possui Seq. Pai.
OP04010011017

OP05010012018
Priorizou a OP do produto acabado, com menor
data de entrega e considerando da última operação
para a primeira .
Este produto não possui Seq. Pai.
OP05010011019

OP06010012020
Priorizou a OP do produto acabado, com menor
data de entrega e considerando da última operação
para a primeira. 
Este produto não possui Seq. Pai.
OP06010011021

OP03010012022
Priorizou a OP do produto acabado, com menor
data de entrega e considerando da última operação
para a primeira.
Este produto não possui Seq. Pai.
OP03010011023






OP010100130242Priorizou a OP do produto acabado, com menor data
de entrega e considerando da última operação
para a primeira.
OP010100120252
OP010100110262
OP010100230272Priorizou a ordem filha pois está dentro da mesma árvore, devido ao Seq. Pai 
OP010100220282
OP010100210292
OP010100330302Priorizou a ordem filha pois está dentro da mesma árvore, devido ao Seq. Pai 
OP010100320312
OP010100310322
OP010100430332Priorizou a ordem filha pois está dentro da mesma árvore, devido ao Seq. Pai 
OP010100420342
OP010100410352
OP010100530362Priorizou a ordem filha pois está dentro da mesma árvore, devido ao Seq. Pai 
OP010100520372
OP010100510382





OP020100120393Priorizou a OP do produto acabado, com menor
data de entrega e considerando da última
operação para a primeira.
OP020100110403
OP020100220413Priorizou a ordem filha pois está dentro da mesma árvore, devido ao Seq. Pai 
OP020100210423
OP020100420433Priorizou a ordem filha pois está dentro da mesma árvore, devido ao Seq. Pai 
OP020100410443
OP020100320453Priorizou a ordem filha pois está dentro da mesma árvore, devido ao Seq. Pai 
OP020100310463

Prioriza a ordem que precisa ser iniciada primeiro, da primeira operação para a última.

As ordens de produção são ordenadas por data de início (ordem crescente), prioridade da ordem de produção, saldo da ordem de produção (ordem decrescente), data de entrega (ordem crescente), código do produto e número da ordem (Número + Item + Sequência + Item Grade).

Observação: O saldo da ordem de produção é considerado: C2_QUANT - C2_QUJE. Caso o parâmetro MV_PERDINF esteja configurado como .F., também é subtraído o valor da coluna C2_PERDA.

As operações das ordens principais são ordenadas crescentemente e das intermediárias são ordenadas decrescentemente.

A ordenação considera o "Seq. Pai" para que não seja priorizada uma ordem de produção filha antes da ordem de produção pai:


OPOperaçãoPrioridadeÁrvore/IDObservação
OP0501001101
Priorizou a OP do produto acabado, com menor
data de início e considerando a primeira operação
para a última.
Este produto não usa Seq. Pai.
OP0501001202

OP0401001103
Priorizou a OP do produto acabado, com menor
data de início e considerando a primeira operação
para a última.
Este produto não usa Seq. Pai.
OP0401001204

OP0601001105
Priorizou a OP do produto acabado, com menor
data de início e considerando a primeira operação
para a última.
Este produto não usa Seq. Pai.
OP0601001206

OP0301001107
Priorizou a OP do produto acabado, com menor
data de início e considerando a primeira operação
para a última.
Este produto não usa Seq. Pai.
OP0301001208






OP07010011091Priorizou a OP do produto acabado, com menor
data de início e considerando a primeira operação
para a última.
Como possui Seq. Pai para as ordens filhas,
prioriza antes das filhas
OP070100120101
OP070100130111
OP070100430121Priorizou a ordem filha pelo Seq. Pai. 
Iniciou pela última operação .
OP070100420131
OP070100410141
OP070100330151Priorizou a ordem filha pelo Seq. Pai. 
Iniciou pela última operação .
OP070100320161
OP070100310171
OP070100230181Priorizou a ordem filha pelo Seq. Pai. 
Iniciou pela última operação .
OP070100220191
OP070100210201
OP070100530211Priorizou a ordem filha pelo Seq. Pai. 
Iniciou pela última operação .
OP070100520221
OP070100510231





OP010100110242Priorizou a OP do produto acabado, com menor
data de início e considerando a primeira operação
para a última.
Como possui Seq. Pai para as ordens filhas,
prioriza antes das filhas
OP010100120252
OP010100130262
OP010100430272Priorizou a ordem filha pelo Seq. Pai. 
Iniciou pela última operação ..
OP010100420282
OP010100410292
OP010100330302Priorizou a ordem filha pelo Seq. Pai. 
Iniciou pela última operação .
OP010100320312
OP010100310322
OP010100230332Priorizou a ordem filha pelo Seq. Pai. 
Iniciou pela última operação .
OP010100220342
OP010100210352
OP010100530362Priorizou a ordem filha pelo Seq. Pai. 
Iniciou pela última operação .
OP010100520372
OP010100510382





OP020100110393Priorizou a OP do produto acabado, com menor
data de início e considerando a primeira operação
para a última.
Como possui Seq. Pai para as ordens filhas,
prioriza antes das filhas
OP020100120403
OP020100220413Priorizou a ordem filha pelo Seq. Pai. 
Iniciou pela última operação .
OP020100210423
OP020100420433Priorizou a ordem filha pelo Seq. Pai. 
Iniciou pela última operação ..
OP020100410443
OP020100320453Priorizou a ordem filha pelo Seq. Pai. 
Iniciou pela última operação .
OP020100310463



Exemplo comparativo dos tipos de programação:


02. Nivelamento

O processo de nivelamento consiste em alocar as ordens de produção e suas operações nos recursos, de forma que não haja estouro da capacidade. Isto é, duas ou mais operações alocadas a um recurso durante o mesmo período.

A etapa de nivelamento será executada após a etapa de distribuição, quando o parâmetro "Nivelamento automático?" estiver desativado, por meio da opção continuar programação. Caso o parâmetro estiver ativo, a etapa de nivelamento será executada automaticamente após a etapa de priorização da ordens.

As operações serão niveladas de acordo com a prioridade calculada na etapa anterior. A forma de nivelamento será definida pelos parâmetros "Data nivelamento" e "Priorização", onde será possível escolher entre a data de inicio ou data de entrega, da ordem de produção ou da programação.

Caso uma ordem de produção não seja completamente nivelada durante esta etapa, sua árvore será desfeita e reprocessada a partir da data de inicio da programação. Caso durante o reprocessamento uma ordem de produção ainda não consiga ser nivelada completamente, será gerada disponibilidade adicional para o recurso até a ordem ser nivelada por completo.


Alocação das operações

As alocações das operações serão feitas sempre considerando a ultima operação nivelada da árvore. Exceto quando não houver operação nivelada na árvore, neste caso irá utilizar a data de inicio ou a data de entrega da ordem de produção, de acordo com o parâmetro "priorização".

As alocações podem ser feitas de duas formas:

  • Crescente: Irá alocar a operação no recurso nos tempos disponíveis a partir da finalização da operação anterior, de forma que a operação seja alocada após a finalização da operação anterior. Ou seja, se não houver tempo disponível após a finalização da operação anterior, irá alocar em datas posteriores.
  • Decrescente: Irá alocar a operação no recurso de forma que ela seja entregue antes da operação anterior, buscando sempre períodos com disponibilidade anteriores a data que iniciou a ultima operação nivelada. Ou seja, se não houver tempo disponível antes da operação nivelada anteriormente, irá buscar tempos disponíveis retrocedendo a data.

Exemplo:

Considerando a disponibilidade:

IdDataInicioFimDisponível
0118/0907:0012:00Sim
0218/0913:0018:00Sim
0319/0907:0012:00Sim
0419/0913:0018:00Não
0520/0907:0012:00Não
0620/0913:0018:00Não
0721/0907:0012:00Não
0821/0913:0018:00Sim
0922/0907:0012:00Sim
1022/0913:0018:00Sim

Considerando que a ultima operação alocou o recurso no dia 20/09 das 07:00 até 12:00 e 20/09 das 13:00 até 18:00, a próxima operação será nivelada da seguinte forma.

De forma crescente: Irá buscar tempos disponíveis a partir de 20/09 as 18:00. Ou seja, irá alocar a operação no dia 21/09 a partir das 13:00 finalizando até 18:00, pois a disponibilidade 07 não está disponível. Caso necessário um tempo maior para conclusão, irá buscar a data posterior.

De forma decrescente: Irá buscar tempos disponíveis antes de 20/09 as 07:00. Ou seja, irá alocar a operação no dia 19/09, pois a disponibilidade 04 não está disponível, finalizando as 12:00 iniciando após as 07:00. Caso necessário um tempo maior para conclusão, irá buscar a data anterior.

Nivelamento pela data da ordem de produção

Caso no parâmetro "Data nivelamento" seja selecionada a opção "Data da ordem de produção", o nivelamento será realizado considerando a data de inicio ou a data de entrega da ordem de produção, de acordo com o parâmetro "priorização".

  • Data de inicio: Quando selecionado o nivelamento por data de inicio da ordem de produção, será feito o nivelamento alocando as operações da ordem pai da árvore de forma crescente da primeira a ultima operação, a partir da data de inicio da ordem. Em seguida, as ordens intermediarias serão niveladas alocando as operações da ultima para a primeira de forma decrescente, para serem entregues antes do inicio da ordem pai.
  • Data de entrega: Quando selecionado o nivelamento por data de entrega, todas as ordens terão suas operações alocadas da ultima para a primeira, de forma decrescente a partir da data de entrega da ordem pai da árvore.

Nivelamento pela data da programação

Caso no parâmetro "Data nivelamento" seja selecionada a opção "Data da programação", o nivelamento será realizado considerando a data de inicio da programação. Ou seja, todas as árvores serão niveladas considerando como inicio, a data inicial da programação.

  • Ordem de processamento: No processamento por data da programação as árvores serão processadas da menor prioridade para a maior prioridade, já as ordens das árvores serão processadas do último nível da árvore para o primeiro, levando em consideração a prioridade quando houver mais de uma ordem em um mesmo nível.

Exemplo ordem de processamento das árvores:

Considerando as árvores:

ÁrvorePrioridade
12280001
12290003
12450002
42630004

Teremos como ordem de processamento: 1228, 1245, 1229 e 4263.

Exemplo ordem de processamento das ordens de produção:

Considerando a estrutura:

PA

PI-01

PI-02

PI-03

PI-04

PI-05

PI-06

Temos as seguintes ordens de produção:

OrdemProdutoPrioridade
00000101001PA00001
00000101002PI-0100002
00000101003PI-0200004
00000101004PI-0300006
00000101005PI-0400007
00000101006PI-0500005
00000101007PI-0600003

Teremos como ordem de processamento das ordens de produção: 00000101004 (PI-03), 00000101005 (PI-04), 00000101003 (PI-02), 00000101006 (PI-05), 00000101002 (PI-01), 00000101007 (PI-01) e 00000101001 (PA).

  • Processamento: Todas as ordens de produção da árvore terão suas operações alocadas de forma crescente a partir da data de inicio da programação. Ou seja, para cada nova árvore que for processada, será iniciado novamente a alocação na data de inicio da programação, alocando no primeiro período disponível nos recursos.

Reprocessamento

Caso uma árvore possua uma ordem de produção com operações que não tenham sido alocadas ou alocadas parcialmente durante a etapa de nivelamento, ela terá todo seu nivelamento desfeito. Ou seja, as alocações das ordens dessa árvore serão desfeitas, liberando o tempo disponível novamente no recurso.

Após ter suas ordens desfeitas, a árvore será reprocessada a partir da data de inicio da programação, onde terá suas ordens processadas seguinte as regras do nivelamento pela data da programação. Ou seja, as ordens serão processadas do ultimo nível da árvore para o primeiro, tendo suas operações alocadas de forma crescente a partir da data de inicio da programação.

O reprocessamento é executado apenas quando o parâmetro "Data nivelamento" for selecionado com a opção "Data da programação".

Disponibilidade adicional

Caso uma ordem de produção que esteja sendo alocada pela data da programação não possua disponibilidade para ser alocada completamente será gerado disponibilidade adicional para atender ordem. A geração da disponibilidade adicional será feita até atender completamente a operação que está sendo alocada, ou até a quantidade de dias adicionais atingir o valor do parâmetro MV_DISPADC (padrão = 365). Caso a disponibilidade adicional atingir o valor limite de dias, a árvore da ordem de produção terá seu nivelamento desfeito e os dias adicionais para atender as operações das ordens dessa árvore serão desconsiderados.

Após o nivelamento, caso um recurso tenha gerado disponibilidade adicional, será gerado a disponibilidade adicional para todos os recursos que não possuem disponibilidade até a ultima data gerada.

Exemplo: Considerando recursos onde a disponibilidade encerra dia 18/01. Caso durante o nivelamento um dos recursos tenha gerado disponibilidade adicional até 25/01, todos os outros recursos terão sua disponibilidade calculada até o dia 25/01.

As ordens de produção com alocação em disponibilidade adicional podem ser identificadas pela ocorrência 04 - Alocação após a data final.

03. Efetivação


O processo de efetivação consiste em sacramentar as ordens de produções niveladas ou distribuídas da programação.

A etapa de efetivação  é executada via boatão "Outras Ações" opção "Efetivar programação".

Ao efetivar uma programação as ordens sacramentadas serão exibidas conforme legenda de "Efetivada".



Existe a possibilidade de refazer o processo de efetivação das ordens utilizando o parâmetro "Replaneja sacramentadas?" no folder de "Ordem de produção".

Se a programação não considerar as ordens sacramentadas, as horas utilizadas por essas ordens serão diminuídas da disponibilidade.





  • Sem rótulos