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
| Campo | Qué contiene |
|---|---|
DocEntry | Clave interna. Se une con RDR1.DocEntry. |
DocNum | Número de pedido que ven los usuarios. |
DocDate | Fecha de contabilización del pedido. |
DocDueDate | Fecha de entrega solicitada. |
CardCode | Cliente. Se une con OCRD.CardCode. |
CardName | Nombre del cliente tal como aparece impreso en el pedido. |
DocTotal | Total del pedido con impuesto. |
DiscPrcnt | Porcentaje de descuento de cabecera. |
DocStatus | O = abierto, C = cerrado (entregado o facturado por completo, o cerrado manualmente). |
CANCELED | Y si el pedido fue cancelado. |
SlpCode | Empleado 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
- Pedidos de cliente abiertos con cantidad pendiente: Cada línea de pedido de cliente abierta que todavía tiene cantidad por entregar.
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
¿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.
