Tabla ORDR en SAP Business One (Pedido de cliente (cabecera))

ORDR es la tabla de SAP Business One que guarda la cabecera de cada pedido de cliente: cliente, fechas, totales y estado. Sus líneas están en RDR1, unidas por DocEntry, y su tipo de objeto es 17.

Campos clave de ORDR

CampoQué contiene
DocEntryClave interna. Se une con RDR1.DocEntry.
DocNumNúmero de pedido que ven los usuarios.
DocDateFecha de contabilización del pedido.
DocDueDateFecha de entrega solicitada.
CardCodeCliente. Se une con OCRD.CardCode.
CardNameNombre del cliente tal como aparece impreso en el pedido.
DocTotalTotal del pedido con impuesto.
DiscPrcntPorcentaje de descuento de cabecera.
DocStatusO = abierto, C = cerrado (entregado o facturado por completo, o cerrado manualmente).
CANCELEDY si el pedido fue cancelado.
SlpCodeEmpleado del departamento de ventas. Se une con OSLP.

Cómo se relaciona ORDR con otras tablas

ORDR es la cabecera y RDR1 las líneas, unidas por DocEntry. En las líneas, OpenQty es la cantidad que falta entregar y LineStatus indica si la línea está abierta. Cuando una entrega o una factura se copia del pedido, las líneas de destino guardan BaseType = 17 y BaseEntry = ORDR.DocEntry.

Joins habituales

  • ORDR T0 INNER JOIN RDR1 T1 ON T0.DocEntry = T1.DocEntry (líneas)
  • ORDR T0 INNER JOIN OCRD T2 ON T0.CardCode = T2.CardCode (cliente)
  • INV1 T3 ON T3.BaseType = 17 AND T3.BaseEntry = T1.DocEntry AND T3.BaseLine = T1.LineNum (facturas creadas desde el pedido)

Cuándo se usa la tabla ORDR

Use ORDR y RDR1 para listas de pedidos pendientes, planificación de despachos, entrada de pedidos por período y revisión del stock comprometido. Para "lo que todavía falta despachar", trabaje con las líneas (RDR1.OpenQty) en lugar del estado de la cabecera, porque un pedido puede estar entregado parcialmente.

Los pedidos de una tienda online o de un portal entran por la DI API (objeto Documents, oOrders) o por el Service Layer (Orders). Editar un pedido cerrado desde código devuelve -1029 "Field cannot be updated" (el campo no se puede actualizar), por ejemplo en ORDR.VatSum, así que revise DocStatus antes de ofrecer una edición. Vea -1029 y otros errores de la DI API.

Consulta de ejemplo: líneas de pedidos de cliente abiertas con cantidad pendiente

SQL Server

SELECT T0.DocNum, T0.DocDueDate, T0.CardCode, T0.CardName,
  T1.ItemCode, T1.Dscription, T1.Quantity, T1.OpenQty, T1.WhsCode
FROM ORDR T0
INNER JOIN RDR1 T1 ON T0.DocEntry = T1.DocEntry
WHERE T0.DocStatus = 'O' AND T1.LineStatus = 'O' AND T1.OpenQty > 0
ORDER BY T0.DocDueDate, T0.DocNum

SAP HANA (nombres de columna entre comillas dobles)

SELECT T0."DocNum", T0."DocDueDate", T0."CardCode", T0."CardName",
  T1."ItemCode", T1."Dscription", T1."Quantity", T1."OpenQty", T1."WhsCode"
FROM ORDR T0
INNER JOIN RDR1 T1 ON T0."DocEntry" = T1."DocEntry"
WHERE T0."DocStatus" = 'O' AND T1."LineStatus" = 'O' AND T1."OpenQty" > 0
ORDER BY T0."DocDueDate", T0."DocNum"

Pegue cualquiera de las dos versiones en Herramientas → Consultas → Generador de consultas. ¿Necesita el otro dialecto para su propia consulta? Use el conversor de SQL a HANA.

Error frecuente: El estado de la cabecera no basta con entregas parciales

Un pedido sigue con DocStatus = 'O' mientras alguna línea esté abierta, así que un reporte solo de cabecera muestra el pedido completo como pendiente. Use RDR1.LineStatus y OpenQty para ver lo que realmente falta entregar. Vea Consulta de pedidos de cliente abiertos.

Consultas listas que usan ORDR

Tablas relacionadas

RDR1 (Pedido de cliente (líneas)) · ODLN (Entrega (cabecera)) · OINV (Factura de clientes (cabecera)) · OITW (Stock de artículos por almacén) · OCRD (Socios de negocios) · buscar todas las tablas de SAP Business One

Fuentes: Documentación y SDK de SAP Business One (referencia de tablas de base de datos de DI API), SAP Help Portal.

¿Listo para empezar?

Cuéntenos lo que necesita. Recibirá una respuesta técnica clara, un alcance definido y un precio fijo, normalmente en 24 horas.