Tabela ODLN no SAP Business One (Entrega (cabeçalho))
ODLN é a tabela do SAP Business One que guarda o cabeçalho de cada entrega: cliente, datas, totais e status. As linhas ficam na DLN1, relacionadas por DocEntry, e o tipo de objeto é 15. Ao lançar uma entrega, o estoque sai do depósito.
Campos-chave da ODLN
| Campo | O que contém |
|---|---|
DocEntry | Chave interna. Relaciona com DLN1.DocEntry. |
DocNum | Número da entrega que os usuários veem. |
ObjType | Tipo de objeto, 15 = entrega. |
DocDate | Data de lançamento. |
DocDueDate | Data de vencimento. |
CardCode / CardName | Código e nome do cliente. CardCode relaciona com OCRD. |
DocTotal | Total do documento. |
VatSum | Total de impostos. |
DiscPrcnt | Percentual de desconto do cabeçalho. |
DocStatus | O = em aberto, C = fechado (por exemplo, totalmente faturado). |
InvntSttus | Status de estoque do documento. |
CANCELED | Y se a entrega foi cancelada. |
SlpCode | Vendedor. Relaciona com OSLP. |
Como a ODLN se relaciona com outras tabelas
ODLN é o cabeçalho e a DLN1 as linhas, relacionadas por DocEntry. Uma entrega copiada de um pedido de venda guarda BaseType = 17 e as chaves do pedido nas linhas da DLN1; uma nota fiscal copiada da entrega guarda BaseType = 15 e BaseEntry = ODLN.DocEntry nas linhas da INV1. DLN1.OpenQty é a quantidade ainda em aberto, ainda não faturada nem devolvida.
Joins mais comuns
ODLN T0 INNER JOIN DLN1 T1 ON T0.DocEntry = T1.DocEntry (linhas)ODLN T0 INNER JOIN OCRD T2 ON T0.CardCode = T2.CardCode (cliente)DLN1 T1 INNER JOIN RDR1 T3 ON T1.BaseType = 17 AND T1.BaseEntry = T3.DocEntry AND T1.BaseLine = T3.LineNum (linha do pedido)INV1 T4 ON T4.BaseType = 15 AND T4.BaseEntry = T1.DocEntry AND T4.BaseLine = T1.LineNum (nota fiscal a partir da entrega)
Quando usar a tabela ODLN
Use a ODLN e a DLN1 para listas de “entregue, mas não faturado”, histórico de expedições por cliente ou item e conferências de comprovante de entrega. Em empresas que sempre faturam a partir das entregas, as entregas em aberto são receita que ainda falta faturar.
Consulta de exemplo: linhas de entrega ainda não faturadas
SQL Server
SELECT T0.DocNum, T0.DocDate, T0.CardCode, T0.CardName, T1.ItemCode, T1.Dscription, T1.Quantity, T1.OpenQty, T1.WhsCode FROM ODLN T0 INNER JOIN DLN1 T1 ON T0.DocEntry = T1.DocEntry WHERE T0.CANCELED = 'N' AND T1.LineStatus = 'O' AND T1.OpenQty > 0 ORDER BY T0.DocDate, T0.DocNum
SAP HANA (nomes de colunas entre aspas duplas)
SELECT T0."DocNum", T0."DocDate", T0."CardCode", T0."CardName", T1."ItemCode", T1."Dscription", T1."Quantity", T1."OpenQty", T1."WhsCode" FROM ODLN T0 INNER JOIN DLN1 T1 ON T0."DocEntry" = T1."DocEntry" WHERE T0."CANCELED" = 'N' AND T1."LineStatus" = 'O' AND T1."OpenQty" > 0 ORDER BY T0."DocDate", T0."DocNum"
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: Contar entregas e notas fiscais como vendas duas vezes
Quando as notas fiscais são copiadas das entregas, a mesma mercadoria aparece uma vez na DLN1 e outra vez na INV1. Um relatório de vendas que soma ODLN e OINV duplica o valor. Reporte as vendas a partir da OINV (menos a ORIN) e use a ODLN apenas para o que foi entregue e ainda não faturado, como na consulta acima. Veja Por que os totais de vendas do SAP B1 não batem.
Tabelas relacionadas
ORDR (Pedido de venda (cabeçalho)) · RDR1 (Pedido de venda (linhas)) · OINV (Nota fiscal de saída (cabeçalho)) · 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.
