Reservas de estoque

Dúvida: o que é reserva, quem cria, e por que o ATP some com o pedido em aberto.

Dúvida: como funciona a reserva de estoque?

Ambiente: Estoque → Operações → Movimentação → Reservas (/apps/stock/reservations). Tabela FARES01.

A reserva não é um FAPOB. Ela empenho quantidade para um documento. Disponível para nova venda = físico (ou lotes ACTIVE) − reservas ACTIVE.

Quem cria reserva

Origem (originType)Quando
SALES_ORDERcreate/update de pedido (não orçamento)
PRODUCTION_ORDEROP com empenho de MP (flag de lote: lot_id)
TRANSFERquando o fluxo empenha origem
MANUALbotão Nova nesta tela

Campos na tela / grade

CampoSignificado
Produtocódigo
QuantidadereservedQuantity
Localarmazém
LotelotCode / lot_id (FEFO)
Origemtipo + originDocument
StatusACTIVE · CONSUMED · CANCELLED · EXPIRED
Expira emexpirationDate — vencida deve ser cancelada (job); libera saldo

Também existem consumedQuantity e backordered_quantity (pedido acima do físico, só se a filial permitir backorder).

Passo a passo (reserva manual)

  1. Nova → produto, quantidade, local, validade.
  2. Grava ACTIVE.
  3. Consumir / Cancelar na linha (a UI chama o context consumeReservation / cancelReservation).

Pedido: ao faturar, a reserva é consumida na baixa. Ao cancelar o pedido, a reserva é liberada. Orçamento não reserva. Conversão orçamento → pedido aplica estoque se validateStockOnQuoteConversion (default true). Pedido → orçamento libera reserva.

Relação com ATP

Fórmula completa: Saldo e ATP. Pedido aberto de 200 UN com estoque 180: disponível 0 (ou backorder se política permitir). FEFO reserva com lot_id quando industrial.lot-enforcement está on.

Erros comuns

SintomaCausa
Tem saldo no kardex e o pedido recusareserva de outro PV/OP no mesmo SKU+local
Orçamento “comeu” estoquenão deveria; se reservou, o documento já era PEDIDO
Lote errado no faturamentoreserva sem lot_id com flag de lote ligada

Saiba mais

Pedido de venda · OP