Módulo de Produção — Documentação Complementar

Central do módulo de Produção do ERP Spalla na API: como o módulo se organiza, o que a configuração da instância muda, e por onde começar cada fluxo

1. Introdução

Esta é a página central do módulo de Produção. Ela não ensina um fluxo específico: apresenta como o módulo se organiza, o que muda de instância para instância, e encaminha para as cinco páginas que cobrem cada fluxo em detalhe.

O módulo cobre o ciclo de fabricação do ERP Spalla, da Fórmula de Fabricação — a receita do que se produz — até o encerramento da Ordem de Produção com apontamento, custo apurado e documento fiscal emitido. Cobre também a Produção do Dia, que é o caminho simplificado para lançar produção já ocorrida.

Leia esta página antes das outras cinco. Três coisas aqui valem para o módulo inteiro e não se repetem em cada página: a regra de fronteira, que decide o que se grava direto e o que passa por rotina; a configuração da instância, que faz o mesmo fluxo se comportar de forma diferente em cada base; e o encadeamento, que mostra em que ordem os fluxos se apoiam.

2. Como a API funciona

A API do Spalla expõe objetos do ERP por HTTP. Cada requisição informa o objeto, o método e os parâmetros, e a resposta vem em JSON. O que o seu token alcança é definido no cadastro de API da sua instância — objeto a objeto, método a método.

Os métodos usados no módulo de Produção:

MétodoPara que serve no móduloExemplo de objeto
GET Consultar tabelas, views e rotinas de consulta. É como se lê a Ordem de Produção, a agenda dos processos e o saldo dos insumos. FAB_VIEW_ORDEMPRODUCAO
PATCH Executar as rotinas de ação do módulo. É como se cria a Ordem de Produção, se reserva estoque e se aponta produção. FAB_PRC_GERAROPFORMULA
PUT e POST Gravar direto nas tabelas que admitem gravação — a Fórmula de Fabricação e a Produção do Dia. FABFORMULA1

As rotinas do módulo respondem a PATCH, não a POST. É a convenção do produto para rotina de ação, e vale para as 44 rotinas de Produção. Se você montar a chamada com POST, ela é recusada mesmo com o objeto liberado.

3. Onde encontrar o dicionário oficial da sua API

Esta documentação é complementar. A fonte da verdade sobre parâmetros, tipos, domínios e exemplos é o dicionário da sua instância, gerado a partir do que o seu token alcança.

Cada empresa que opera o ERP Spalla expõe o seu próprio dicionário automático em um endereço próprio. Para acessá-lo, abra no navegador a URL no formato abaixo, substituindo os placeholders pelos valores da sua instância:

https://<host>:<porta>/root/dicionario?userToken=<token>

O dicionário lista cada objeto liberado com a descrição, os parâmetros de entrada, as colunas de retorno e um exemplo de uso pronto. Ele é o lugar certo para conferir a assinatura exata de uma rotina antes de chamá-la.

As cinco páginas de fluxo deste módulo remetem a esta seção — é aqui que o caminho até o dicionário está descrito por inteiro.

Confirme no dicionário da sua instância se o objeto que você precisa está disponível para o seu token. O escopo varia por instalação e por token: um objeto citado aqui pode não estar liberado na sua. Se faltar, peça ao gestor do ERP a revisão do cadastro de API.

4. A regra de fronteira do módulo

Esta é a regra mais importante do módulo, e a que mais se erra na primeira integração.

As tabelas da Ordem de Produção são de leitura. Toda alteração passa pelas rotinas FAB_PRC_*, que aplicam as validações e os efeitos em cadeia no servidor. Gravar nessas tabelas por outro caminho produz inconsistência que o sistema não detecta. Se o dicionário da sua instância mostrar escrita liberada nelas, peça ao gestor do ERP a revisão do cadastro de API.

O motivo é o encadeamento. Criar uma Ordem de Produção não é inserir uma linha em FABORDPRO1: é gerar o cabeçalho, os produtos a fabricar, os processos, os insumos previstos, a mão de obra prevista, as máquinas, os setups e os custos previstos de cada um — nove conjuntos de registros que precisam ser coerentes entre si. A rotina faz isso; a inserção direta cria um cabeçalho órfão que nenhuma outra rotina consegue operar.

Duas áreas do módulo admitem gravação direta, porque são cadastro e não movimento:

ÁreaTabelasComo se grava
Fórmula de Fabricação as treze FABFORMULA* gravação direta, dentro do ciclo de status descrito na página de Fórmula
Produção do Dia FABORDPRODIA1, FABORDPRODIA2, FABORDPRODIA3 gravação direta do cabeçalho, dos insumos e dos produtos, antes de gerar as Ordens de Produção
Ordem de Produção as vinte e uma FABORDPRO* somente leitura — use as rotinas

5. Aviso sobre liberação na retaguarda

Antes de integrar, três coisas precisam estar cadastradas no ERP, e nenhuma delas se resolve pela API:

Equivalência de unidade é o pré-requisito que mais derruba integração nova. A Fórmula de Fabricação exige equivalência cadastrada em PRODEQUIV para a unidade de fabricação de cada produto a fabricar — sem condição alguma, independentemente de como os demais campos de unidade estejam configurados. Sem ela, a Fórmula não passa na validação de ativação, e a mensagem não aponta a causa de forma óbvia.

6. Configuração da instância

O mesmo fluxo se comporta de forma diferente conforme a configuração do módulo, guardada em FABCONFIG. Consulte esses campos antes de concluir que uma rotina falhou — em vários casos ela fez exatamente o que a configuração manda.

CampoEfeito medido
CFG_RESERVAPARCIAL Liga e desliga a reserva de estoque inteira. Com 0, as quatro rotinas de reserva e liberação — FAB_PRC_RESERVARESTOQUE, FAB_PRC_RESERVARESTOQUE2, FAB_PRC_LIBERARESTOQUE e FAB_PRC_LIBERARESTOQUE2retornam sem fazer nada e sem erro. A consequência atravessa duas páginas: sem reserva, FABORDPRO6 fica vazia, e a abertura do processo não consome insumo automático nenhum, porque é dessa tabela que ela lê.
CFG_VERINSUMOAPT Decide quais insumos a consulta de apontamento devolve. É o único consumidor FAB_RES_APTORDPRO61, com três ramos: 0 devolve os insumos já apontados, 1 os reservados, 2 os previstos mais os reservados que não estavam previstos. Governa o comportamento da página de apontamento, não desta. Lista vazia com o valor 1 significa que o processo ainda não teve estoque reservado.
CFG_TRAVAAPTINSUMOS Troca a mensagem de recusa, não libera nada. O comentário do campo sugere que ele permitiria apontar insumo fora da Fórmula; o único uso executável é em FAB_PRC_APTINSUMOS, e o efeito é apenas trocar o texto da recusa. A mensagem alternativa remete a uma tela do ERP; pela API o equivalente é acrescentar o insumo à previsão do processo com FAB_PRC_MANIPULARPREVISAO antes de apontar.
CFG_NFORMULAS Bloqueia a Produção do Dia quando ligado. Com 1 — múltiplas Fórmulas por produto —, FAB_PRC_GERAROPDIA recusa a geração, porque não teria como escolher qual Fórmula usar para cada produto acabado.
CFG_PERMANUTENCAO1 Data de corte que bloqueia alteração retroativa. Alcança a gravação dos processos da Ordem de Produção e a Produção do Dia. O corte é inclusivo: a data igual ao limite também é recusada — a operação precisa ser posterior ao corte, não a partir dele.
CFG_ST_COD Setor padrão da Produção do Dia por pedido. É de onde FAB_PRC_GERAROPPEDIDODIA tira o setor do cabeçalho, que por isso não é parâmetro da chamada.

Mais os quatro tipos de movimento, que definem como o estoque é movimentado pelo módulo:

CampoO que define
CFG_TM_CODSAIDASaída de matéria-prima e insumos
CFG_TM_CODENTRADAEntrada de produtos fabricados
CFG_TM_CODSAIDAPRODPROCSaída de produtos em processo
CFG_TM_CODENTRADAPRODPROCEntrada de produtos em processo

Os dois últimos só entram em uso quando a Fórmula trabalha com produto em processo — o item intermediário que sai de um processo e entra no seguinte. Sem essa configuração, o encadeamento entre processos não movimenta estoque.

7. Encadeamento do módulo

Os fluxos se apoiam nesta ordem. Cada um pressupõe o anterior concluído.

  1. Fórmula de Fabricação — a receita. Define os produtos a fabricar, os processos, os insumos, a mão de obra e as máquinas. Precisa estar Ativa para ser usada. Nenhuma Ordem de Produção existe sem uma Fórmula por trás.
  2. Criação da Ordem de Produção — a Fórmula é explodida numa Ordem concreta, com quantidade, filial, data e custos previstos.
  3. Preparação — programar os processos na agenda, firmar a Ordem e reservar o estoque dos insumos.
  4. Apontamento — abrir cada processo, apontar insumo consumido, mão de obra, setup de máquina e produto fabricado, e fechar o processo.
  5. Documentos e encerramento — emitir as notas fiscais, registrar a análise de qualidade e fechar a Ordem com o custo apurado.

A Produção do Dia é um atalho sobre esse ciclo, não um fluxo paralelo: ela executa os cinco passos numa chamada, para lançar produção que já ocorreu, sem apurar custo de máquina e mão de obra.

A janela de reversibilidade fecha no primeiro apontamento. Antes dele, a Ordem de Produção pode ter a quantidade alterada, ser desvinculada de pedidos e até ser excluída. Depois dele, cada uma dessas operações exige remover os apontamentos primeiro, na ordem inversa da que foram feitos.

8. As cinco páginas do módulo

Fórmula de Fabricação

O ciclo de status Em EdiçãoAtiva, a ordem de gravação das treze tabelas, as exigências de equivalência de unidade e as validações da ativação.

Abrir guia →
Ordem de Produção: Criação e Preparação

Os três caminhos de criação, como descobrir a Ordem gerada, a programação dos processos, o firmar e a reserva de estoque — em chamada única ou decomposta.

Abrir guia →
Ordem de Produção: Apontamento

Abrir e fechar processo, apontar insumo, mão de obra, setup e produto fabricado, e o que cada remoção exige para ser aceita.

Abrir guia →
Ordem de Produção: Documentos e Encerramento

Quando a nota fiscal sai sozinha e quando exige chamada, a captação de documentos, a análise de qualidade e as validações do fechamento.

Abrir guia →
Produção do Dia

O caminho simplificado para lançar produção já ocorrida: cabeçalho, acabados, insumos sugeridos pela Fórmula e a geração das Ordens de Produção.

Abrir guia →

9. Termos do módulo

Ordem de Produção
O documento que representa uma produção concreta: o que se vai fabricar, quanto, em qual filial, com quais processos e insumos. Identificada por OPD_COD. Abreviada como O.P. nas mensagens do servidor.
Fórmula de Fabricação
A receita reutilizável de que a Ordem de Produção é gerada. Identificada por FRM_COD. Define processos, insumos, mão de obra e máquinas — a Ordem os herda no momento da criação.
Produção do Dia
Forma simplificada de lançar produção já ocorrida, gerando as Ordens de Produção com o ciclo completo numa chamada. Identificada por PDD_COD.
Processo
Cada etapa da fabricação dentro da Ordem de Produção, com ordem de execução, janela prevista e horas previstas. É a unidade que se abre, aponta e fecha.
Insumo
Produto consumido na fabricação. Tem quantidade prevista na Fórmula, quantidade reservada no estoque e quantidade apontada no consumo real — três números distintos que não devem ser confundidos.
Produto fabricado
O que a Ordem de Produção produz. Uma Ordem pode ter mais de um, com percentuais de rateio do custo entre eles.
Apontamento
O registro do que de fato aconteceu: insumo consumido, horas trabalhadas, setup de máquina, produto produzido e perdas. É o que transforma previsão em realizado.
Status da Ordem de Produção
O estado do documento, em OPD_STATUS. Governa o que é permitido: Simulação admite alteração ampla, Firmada é pré-requisito da reserva e do apontamento, Fechada encerra o ciclo.
Tipo de produção
Em FABORDPRO1.OPD_TIPO: 1 Própria Interna, 2 Própria em Terceiros, 3 Para Terceiros. Muda quais validações se aplicam e como o fluxo de nota fiscal funciona.
Finalidade e fracionamento
Em FABORDPRO1.OPD_FINALIDADE: 0 Ordem de Produção comum, 1 fracionamento ou reembalagem. Não confundir com o tipo de produção — são eixos diferentes, e a confusão entre eles é frequente.

10. Dica — identificar a tabela e o campo a partir da interface do ERP

Quando você souber o que quer gravar mas não souber onde, use a própria interface do ERP para descobrir. Posicione o cursor no campo da tela e pressione F1: a Ajuda embutida mostra a tabela e o campo correspondentes.

Com o nome da tabela e do campo em mãos, procure-os no dicionário da sua instância para confirmar o tipo, o domínio e se estão liberados para o seu token.

11. Relação com outros domínios

DomínioComo se relaciona com Produção
Estoque A reserva abate o saldo previsto; o apontamento de insumo movimenta a saída; o apontamento de produto fabricado movimenta a entrada. Lote e número de série são controlados aqui e rastreados até a Ordem de Produção.
Pedido de Venda Ordens de Produção podem ser geradas a partir de itens de pedido e vinculadas a eles. O vínculo atualiza o acompanhamento de status de venda. Ver Pedido de Venda.
Nota Fiscal O módulo emite nota de saída de insumos e de entrada de produto acabado, e capta documentos de entrada para rateio de despesa ou produção em terceiros.
Cadastro de Produto Unidades, equivalências, controle de lote e de número de série vêm do produto e determinam o que a Produção exige em cada apontamento. Ver Cadastro de Produto.

12. Onde aprofundar

O dicionário da sua instância é a referência autoritativa: assinatura de cada rotina, domínio de cada campo e exemplo de uso pronto, sempre limitado ao que o seu token alcança.

Para os fluxos, siga pelas cinco páginas do módulo, na ordem do encadeamento. Se você está integrando do zero, comece pela Fórmula de Fabricação: sem ela ativa, nenhum dos outros fluxos tem por onde começar.