Pular para o conteúdo principal

Entrada de Matéria-Prima

📌 Descrição do Processo

A entrada de matéria-prima consiste na sincronização dos pedidos de compra criados no SAP B1 com o recebimento físico executado no WMS. O SAP B1 é responsável pela criação e controle fiscal/contábil do pedido, enquanto o WMS controla a conferência, rastreabilidade de lotes e movimentação física do estoque.

A integração garante que as quantidades efetivamente recebidas no armazém sejam registradas no B1, mantendo os estoques consistentes entre os sistemas.


🔄 Fluxo de Integração

  1. Criação do Pedido de Compra (SAP B1)

    • O usuário registra no SAP B1 um novo PurchaseOrder (pedido de compra).
    • O pedido fica no status Open até ser atendido parcial ou totalmente.
  2. Consulta pelo WMS (GET)

    • O WMS consome a API PurchaseOrders do SAP B1 filtrando por:

      • Status: Open
      • Cancelado: false
    • Resultado: lista de pedidos pendentes de recebimento.

  3. Recebimento no WMS

    • O operador de armazém recebe fisicamente os itens.
    • São registradas quantidades efetivamente recebidas e lotes (quando aplicável).
    • O WMS valida divergências (ex.: pedido 100 unidades, recebidas 95).
  4. Retorno ao SAP B1 (POST)

    • O WMS envia um POST /PurchaseDeliveryNotes com os dados do recebimento:

      • Pedido base
      • Itens recebidos
      • Quantidade conferida
      • Identificação de lote
  5. Atualização no SAP B1

    • O SAP B1 gera uma nota de recebimento vinculada ao pedido original.
    • Caso o recebimento seja total, o pedido é encerrado (Closed).
    • Caso seja parcial, o pedido permanece Open até que a diferença seja atendida ou cancelada.
  6. Evolução contábil/fiscal

    • Opcionalmente, o SAP B1 pode evoluir o processo para PurchaseInvoices, consolidando movimentação de estoque e contas a pagar.

🖥️ APIs Envolvidas

  • SAP B1 → WMS (GET)

    • Endpoint: /PurchaseOrders
    • Filtros: status=Open, canceled=false
  • WMS → SAP B1 (POST)

    • Endpoint: /PurchaseDeliveryNotes
    • Dados enviados: pedido base, item, quantidade, lote

📦 Exemplo de Fluxo (Objeto Fictício)

Cenário:

  • Pedido de compra: PO-45001
  • Fornecedor: AçoBrasil Ltda.
  • Item: MP-123 – Aço Inox em Bobina
  • Quantidade solicitada: 100 unidades

1. Pedido no SAP B1

{
"DocEntry": 45001,
"CardCode": "F00045",
"CardName": "AçoBrasil Ltda.",
"DocumentStatus": "bost_Open",
"DocumentLines": [
{
"ItemCode": "MP-123",
"Quantity": 100,
"LineStatus": "bost_Open"
}
]
}

2. Recebimento físico no WMS

  • Conferido: 95 unidades
  • Lote: L2025-001

3. Retorno ao SAP B1 (POST /PurchaseDeliveryNotes)

{
"DocEntry": 45001,
"DocumentLines": [
{
"BaseType": 22,
"BaseEntry": 45001,
"ItemCode": "MP-123",
"Quantity": 95,
"BatchNumbers": [
{
"BatchNumber": "L2025-001",
"Quantity": 95
}
]
}
]
}

4. Atualização no SAP B1

  • Criada Nota de Recebimento nº 7801 vinculada ao pedido PO-45001.
  • Status do pedido: permanece Open (faltam 5 unidades).
  • Estoque atualizado: 95 unidades no depósito.

✅ Regras de Negócio

  • Recebimento total → Pedido fechado automaticamente (Closed).
  • Recebimento parcial → Pedido permanece aberto (Open) até complemento ou cancelamento.
  • Controle de lotes → obrigatório informar no retorno caso o item esteja configurado com ManageBatchNumbers = tYES.
  • Cancelamento → caso o pedido seja cancelado no B1, o WMS deve ser atualizado para evitar recebimento indevido.

Resumo

Esse fluxo assegura que o pedido de compra (ordem fiscal/contábil no SAP B1) e o recebimento físico (controle logístico no WMS) permaneçam sincronizados, com rastreabilidade de lotes e consistência de estoque.