<aside> 📌
Objetivo: explicar, de forma técnica, como o sistema calcula as datas das Ordens de Produção (OPs) pai e filhas ao gerar manualmente o Programa de Produção pelo item pai, considerando o Lead Time de cada produto da estrutura.
</aside>
Abaixo segue a explicação técnica detalhada baseada nas packages PCKG_PRODUCAO e PCKG_PROG_PRODUCAO.
Quando o usuário gera manualmente o Programa de Produção pelo item pai (sem origem MPS/MRP), o sistema invoca internamente a função de geração de OPs.
A package PCKG_PROG_PRODUCAO possui o parâmetro vGERAOPFILHOS que, quando ativo, dispara a criação automática das ordens filhas conforme a estrutura (ENESTCOMPONENTES) e o roteiro (ENESTROTINAS) do produto pai.
A definição do comportamento depende do parâmetro PDPARAMESTAB.LEADTIMEOP, lido logo no início da geração.

Se o parâmetro estiver “S – Sim”, o sistema passa a considerar o Lead Time (FSPRODUTOPCP.LEADTIME) de cada produto para determinar as datas das OPs.
Durante a criação das ordens filhas, a rotina percorre a hierarquia de PDORDEMPROD.NIVELORDPROD e ajusta as datas:
OP Pai: usa a data de início informada manualmente no Programa.
OP Filha: tem seu término calculado para coincidir com o início da OP pai.
O início da filha é recuado em dias conforme o campo FSPRODUTOPCP.LEADTIME.
Exemplo: se o filho possui 3 dias de lead time, a OP filha inicia 3 dias antes do início do pai.
Esse cálculo percorre todos os níveis (1, 1.1, 1.1.1, etc.), garantindo o encadeamento temporal.