Tabela OBTQ no SAP Business One (Quantidades de lotes (por depósito))
OBTQ é a tabela do SAP Business One que guarda a quantidade de cada lote por depósito: uma linha por lote e depósito, com Quantity, CommitQty e CountQty. Ela aponta para o cadastro de lotes OBTN por MdAbsEntry (ou ItemCode mais SysNumber) e para o depósito por WhsCode.
Campos-chave da OBTQ
| Campo | O que contém |
|---|---|
AbsEntry | Chave interna da linha. |
MdAbsEntry | Chave do cadastro de lotes. Relaciona com OBTN.AbsEntry. |
ItemCode | Item. Relaciona com OITM.ItemCode. |
SysNumber | Número do sistema do lote. Junto com ItemCode relaciona com a OBTN. |
WhsCode | Depósito. Relaciona com OWHS.WhsCode. |
Quantity | Quantidade do lote no depósito. |
CommitQty | Quantidade confirmada. |
CountQty | Quantidade contada. |
Como a OBTQ se relaciona com outras tabelas
A OBTQ é a camada de quantidades abaixo da OBTN. Um lote pode estar distribuído em vários depósitos, por isso tem uma linha na OBTQ por depósito. Faça o join OBTQ.MdAbsEntry = OBTN.AbsEntry para o número do lote e as datas, e OBTQ.WhsCode = OWHS.WhsCode para o depósito.
Joins mais comuns
OBTQ T0 INNER JOIN OBTN T1 ON T1.AbsEntry = T0.MdAbsEntry (número do lote e datas)OBTQ T0 INNER JOIN OWHS T2 ON T2.WhsCode = T0.WhsCode (depósito)OBTQ T0 INNER JOIN OITM T3 ON T3.ItemCode = T0.ItemCode (cadastro de itens)
Quando usar a tabela OBTQ
Use a OBTQ para o estoque por lote e depósito, para a quantidade livre de um lote (Quantity menos CommitQty) antes da separação (picking) e para conferir se os totais de lotes por depósito batem com o estoque do item.
Consulta de exemplo: estoque de lotes por depósito com quantidade confirmada e livre
SQL Server
SELECT T0.ItemCode, T1.DistNumber AS BatchNumber, T0.WhsCode, T0.Quantity, T0.CommitQty, T0.Quantity - T0.CommitQty AS FreeQty FROM OBTQ T0 INNER JOIN OBTN T1 ON T1.AbsEntry = T0.MdAbsEntry WHERE T0.Quantity > 0 ORDER BY T0.ItemCode, T1.DistNumber, T0.WhsCode
SAP HANA (nomes de colunas entre aspas duplas)
SELECT T0."ItemCode", T1."DistNumber" AS "BatchNumber", T0."WhsCode", T0."Quantity", T0."CommitQty", T0."Quantity" - T0."CommitQty" AS "FreeQty" FROM OBTQ T0 INNER JOIN OBTN T1 ON T1."AbsEntry" = T0."MdAbsEntry" WHERE T0."Quantity" > 0 ORDER BY T0."ItemCode", T1."DistNumber", T0."WhsCode"
Cole qualquer uma das duas versões em Ferramentas → Consultas → Gerador de consultas. Precisa do outro dialeto para a sua própria consulta? Use o conversor de SQL para HANA.
Erro comum: Somar a OBTQ sem o depósito
Um lote pode ter linhas em vários depósitos, e as linhas podem ter Quantity 0. Filtre Quantity > 0 e mantenha WhsCode no GROUP BY, senão o lote parecerá maior ou menor do que realmente é no depósito de onde você faz a separação. Veja Consulta de lotes próximos do vencimento.
Consultas prontas que usam a OBTQ (em inglês)
- Batches expiring in the next 60 days: Batch numbers with stock that expire within 60 days, per warehouse.
- Stock by warehouse: On hand, committed, ordered and available quantity per item and warehouse.
Perguntas sobre a tabela OBTQ
Qual é a diferença entre OBTN e OBTQ?
A OBTN é o cadastro de lotes (número do lote, datas, status). A OBTQ guarda a quantidade de cada lote por depósito.
Como relaciono a OBTQ com a OBTN?
Por OBTQ.MdAbsEntry = OBTN.AbsEntry, ou por ItemCode e SysNumber juntos.
Como obtenho a quantidade livre de um lote?
Quantity menos CommitQty na OBTQ, por depósito.
Tabelas relacionadas
OBTN (Números de lote (cadastro)) · OWHS (Depósitos) · OITW (Estoque do item por depósito) · pesquisar todas as tabelas do SAP Business One
Pronto para começar?
Diga do que você precisa. Você recebe uma resposta técnica clara, um escopo fechado e um preço, normalmente em até 24 horas.
