Tabela INV1 no SAP Business One (Nota fiscal de saída (linhas))
INV1 é a tabela do SAP Business One que guarda as linhas das notas fiscais de saída: item, quantidade, preço, total da linha e depósito. Ela não tem dados de cabeçalho próprios, então é relacionada com a OINV por DocEntry para obter datas, cliente e status.
Campos-chave da INV1
| Campo | O que contém |
|---|---|
DocEntry | Chave da nota fiscal. Relaciona com OINV.DocEntry. |
LineNum | Número da linha dentro da nota fiscal, começa em 0. |
ItemCode | Item vendido. Relaciona com OITM.ItemCode. Vazio em notas de serviço. |
Dscription | Descrição da linha (escrita com um i só e sem e depois do s). |
Quantity | Quantidade na unidade de venda. |
Price | Preço unitário após o desconto da linha. |
PriceBefDi | Preço unitário antes do desconto da linha. |
LineTotal | Valor da linha em moeda local, antes do imposto e antes do desconto do cabeçalho. |
WhsCode | Depósito de onde saiu o estoque. Relaciona com OWHS.WhsCode. |
SlpCode | Vendedor da linha. |
BaseType / BaseEntry / BaseLine | Documento de origem do qual a linha foi copiada (por exemplo 15 = entrega, 17 = pedido de venda). |
Como a INV1 se relaciona com outras tabelas
INV1 é a tabela de linhas da OINV. Cada linha pertence a exatamente uma nota fiscal por meio do DocEntry, e DocEntry + LineNum é a chave única de uma linha. Datas, cliente, status de cancelamento e desconto do cabeçalho ficam na OINV, por isso quase toda consulta sobre a INV1 também faz join com a OINV.
Joins mais comuns
INV1 T1 INNER JOIN OINV T0 ON T1.DocEntry = T0.DocEntry (cabeçalho)INV1 T1 LEFT JOIN OITM T2 ON T1.ItemCode = T2.ItemCode (cadastro de itens)INV1 T1 LEFT JOIN OWHS T3 ON T1.WhsCode = T3.WhsCode (depósito)
Quando usar a tabela INV1
Use a INV1 para tudo que for por item: mais vendidos, itens de baixo giro, vendas por grupo de itens ou por depósito e quantidades vendidas em um período. Para valores, lembre-se do desconto do cabeçalho; para quantidades, as linhas são a fonte correta.
Consulta de exemplo: quantidade e valor líquido vendidos por item
SQL Server
SELECT T1.ItemCode, T1.Dscription, SUM(T1.Quantity) AS QtySold, SUM(T1.LineTotal * (1 - T0.DiscPrcnt / 100.0)) AS NetValue FROM OINV T0 INNER JOIN INV1 T1 ON T0.DocEntry = T1.DocEntry WHERE T0.CANCELED = 'N' AND T0.DocDate >= '20260101' GROUP BY T1.ItemCode, T1.Dscription ORDER BY NetValue DESC
SAP HANA (nomes de colunas entre aspas duplas)
SELECT T1."ItemCode", T1."Dscription", SUM(T1."Quantity") AS "QtySold", SUM(T1."LineTotal" * (1 - T0."DiscPrcnt" / 100.0)) AS "NetValue" FROM OINV T0 INNER JOIN INV1 T1 ON T0."DocEntry" = T1."DocEntry" WHERE T0."CANCELED" = 'N' AND T0."DocDate" >= '20260101' GROUP BY T1."ItemCode", T1."Dscription" ORDER BY "NetValue" DESC
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 LineTotal infla as vendas
LineTotal é anterior ao desconto do cabeçalho registrado em OINV.DiscPrcnt. Se os seus usuários dão descontos no cabeçalho, SUM(LineTotal) fica maior que o relatório de análise de vendas. Multiplique por (1 - T0.DiscPrcnt / 100) como na consulta acima e subtraia as linhas das devoluções de nota fiscal de saída (RIN1) com o mesmo fator. Veja Corrigir a diferença causada pelo desconto do cabeçalho.
Consultas prontas que usam a INV1 (em inglês)
- Top 20 selling items: Best-selling items by sales value, with quantity sold, for a date range.
- Slow-moving items (no sales in 90 days): Items with stock on hand that have not been invoiced in the last 90 days.
Tabelas relacionadas
OINV (Nota fiscal de saída (cabeçalho)) · ORIN (Devolução de nota fiscal de saída (cabeçalho)) · OITM (Itens (cadastro de itens)) · 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.
