Tabla OPOR en SAP Business One (Pedido de compra (cabecera))

OPOR es la tabla de SAP Business One que guarda la cabecera de cada pedido de compra: proveedor, fechas, totales y estado. Sus líneas están en POR1, unidas por DocEntry, y su tipo de objeto es 22. Las entradas de mercancías (OPDN/PDN1) y las facturas de proveedores (OPCH/PCH1) copiadas del pedido apuntan a él mediante BaseType, BaseEntry y BaseLine.

Campos clave de OPOR

CampoQué contiene
DocEntryClave interna. Se une con POR1.DocEntry.
DocNumNúmero del pedido de compra que ven los usuarios.
DocDateFecha de contabilización del pedido.
DocDueDateFecha de entrega prevista.
CardCodeProveedor. Se une con OCRD.CardCode.
DocTotalTotal del pedido con impuesto.
DocStatusO = abierto, C = cerrado (recibido por completo o cerrado manualmente).
CANCELEDY si el pedido fue cancelado.
POR1.ItemCodeArtículo pedido. Se une con OITM.ItemCode.
POR1.QuantityCantidad pedida en la línea.
POR1.OpenQtyCantidad que falta recibir.
POR1.LineStatusO = abierta, C = cerrada.
POR1.WhsCodeAlmacén de recepción. Se une con OWHS.

Cómo se relaciona OPOR con otras tablas

OPOR es la cabecera y POR1 las líneas, unidas por DocEntry e identificadas por LineNum. Cuando se crea una entrada de mercancías o una factura de proveedores a partir del pedido, cada línea de destino guarda BaseType = 22, BaseEntry = el POR1.DocEntry y BaseLine = el POR1.LineNum. En la dirección contraria, POR1.TargetType y TrgetEntry muestran el documento al que se copió la línea (20 = entrada de mercancías, 18 = factura de proveedores).

Joins habituales

  • OPOR T0 INNER JOIN POR1 T1 ON T0.DocEntry = T1.DocEntry (líneas)
  • PDN1 T2 ON T2.BaseType = 22 AND T2.BaseEntry = T1.DocEntry AND T2.BaseLine = T1.LineNum (entradas de mercancías creadas desde el pedido)
  • PCH1 T3 ON T3.BaseType = 22 AND T3.BaseEntry = T1.DocEntry AND T3.BaseLine = T1.LineNum (facturas de proveedores copiadas directamente del pedido)
  • OPOR T0 INNER JOIN OCRD T4 ON T0.CardCode = T4.CardCode (proveedor)

Cuándo se usa la tabla OPOR

Use OPOR y POR1 para el seguimiento de proveedores, las recepciones previstas por almacén, el valor de los compromisos abiertos y la revisión de precios de compra. Trabaje con las líneas para todo lo relacionado con cantidades, porque un pedido de compra suele recibirse en varias entregas.

Consulta de ejemplo: líneas de pedidos de compra abiertas con valor pendiente de recibir

SQL Server

SELECT T0.DocNum, T0.DocDueDate, T0.CardCode, T0.CardName,
  T1.ItemCode, T1.Dscription, T1.Quantity, T1.OpenQty, T1.WhsCode,
  T1.OpenQty * T1.Price AS OpenValue
FROM OPOR T0
INNER JOIN POR1 T1 ON T0.DocEntry = T1.DocEntry
WHERE T0.DocStatus = 'O' AND T0.CANCELED = 'N' AND T1.LineStatus = 'O'
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",
  T1."OpenQty" * T1."Price" AS "OpenValue"
FROM OPOR T0
INNER JOIN POR1 T1 ON T0."DocEntry" = T1."DocEntry"
WHERE T0."DocStatus" = 'O' AND T0."CANCELED" = 'N' AND T1."LineStatus" = 'O'
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: La cabecera sigue abierta mientras haya una línea abierta

OPOR.DocStatus sigue en 'O' hasta que todas las líneas estén cerradas, así que un reporte solo de cabecera muestra un pedido recibido al 90 % como totalmente pendiente. Use POR1.OpenQty y LineStatus. Y cuando rastree recepciones, compare los tres campos base (BaseType, BaseEntry, BaseLine): BaseEntry por sí solo también coincide con otros tipos de documento que usan el mismo número. Vea Consulta de pedidos de compra abiertos.

Consultas listas que usan OPOR

Tablas relacionadas

OPCH (Factura de proveedores (cabecera)) · OITM (Artículos (maestro de artículos)) · OITW (Stock de artículos por almacén) · 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.