Tabla PDN1 en SAP Business One (Entrada de mercancías de compras (filas))

PDN1 es la tabla de SAP Business One que guarda las filas de una entrada de mercancías de compras: una fila por artículo recibido, con cantidad, precio, almacén, cantidad abierta y la fila del pedido de compra de la que proviene. Se une con la cabecera OPDN por DocEntry; BaseType 22 significa que la fila se copió de un pedido de compra.

Campos clave de PDN1

CampoQué contiene
DocEntryClave de la cabecera. Se une con OPDN.DocEntry.
LineNumNúmero de fila.
ItemCodeArtículo. Se une con OITM.ItemCode.
DscriptionDescripción del artículo.
QuantityCantidad recibida.
OpenQtyCantidad abierta restante (aún no copiada a una factura o devolución).
Price / CurrencyPrecio y moneda del precio.
LineTotalTotal de la fila.
WhsCodeAlmacén. Se une con OWHS.WhsCode.
BaseTypeTipo del documento base: 22 = pedido de compra, 540000006 = oferta de compra, y otros.
BaseEntry / BaseLineClave y fila del documento base.
TargetType / TrgetEntryDocumento destino (18 = factura de proveedores, 21 = devolución de mercancías) y su clave.

Cómo se relaciona PDN1 con otras tablas

Las filas de PDN1 pertenecen a una cabecera OPDN (DocEntry). BaseType 22 con BaseEntry y BaseLine apunta a la fila del pedido de compra en OPOR; TargetType y TrgetEntry apuntan hacia adelante a la factura de proveedores (OPCH) o a la devolución de mercancías.

Joins habituales

  • PDN1 T0 INNER JOIN OPDN T1 ON T1.DocEntry = T0.DocEntry (cabecera)
  • PDN1 T0 LEFT JOIN OPOR T2 ON T2.DocEntry = T0.BaseEntry AND T0.BaseType = 22 (pedido de compra)
  • PDN1 T0 LEFT JOIN OPCH T3 ON T3.DocEntry = T0.TrgetEntry AND T0.TargetType = 18 (factura de proveedores)

Cuándo se usa la tabla PDN1

Use PDN1 para comparar las cantidades recibidas con los pedidos de compra, listar las filas recibidas aún no facturadas y leer el último precio de entrada por artículo y proveedor.

Consulta de ejemplo: filas recibidas aún no facturadas, con su pedido de compra

SQL Server

SELECT T1.DocNum AS GrpoNum, T1.DocDate, T1.CardCode, T0.ItemCode, T0.Quantity,
  T0.OpenQty, T0.Price, T2.DocNum AS PoNum
FROM PDN1 T0
INNER JOIN OPDN T1 ON T1.DocEntry = T0.DocEntry
LEFT JOIN OPOR T2 ON T2.DocEntry = T0.BaseEntry AND T0.BaseType = 22
WHERE T0.OpenQty > 0 AND T1.CANCELED = 'N'
ORDER BY T1.DocDate

SAP HANA (nombres de columna entre comillas dobles)

SELECT T1."DocNum" AS "GrpoNum", T1."DocDate", T1."CardCode", T0."ItemCode", T0."Quantity",
  T0."OpenQty", T0."Price", T2."DocNum" AS "PoNum"
FROM PDN1 T0
INNER JOIN OPDN T1 ON T1."DocEntry" = T0."DocEntry"
LEFT JOIN OPOR T2 ON T2."DocEntry" = T0."BaseEntry" AND T0."BaseType" = 22
WHERE T0."OpenQty" > 0 AND T1."CANCELED" = 'N'
ORDER BY T1."DocDate"

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: BaseEntry sin BaseType

Una fila de entrada puede basarse en un pedido de compra, una oferta de compra u otro documento. BaseEntry por sí solo es solo un número, así que agregue siempre BaseType = 22 cuando una con OPOR. Vea Tabla OPOR (pedido de compra).

Consultas listas que usan PDN1

Preguntas sobre la tabla PDN1

¿Cómo vinculo PDN1 con el pedido de compra?

PDN1.BaseType = 22, PDN1.BaseEntry = OPOR.DocEntry y PDN1.BaseLine = el número de fila del pedido.

¿Qué significa OpenQty en PDN1?

La cantidad recibida que todavía no se ha copiado a un documento destino como una factura de proveedores o una devolución de mercancías.

¿Cómo encuentro la factura de proveedores de una fila de entrada?

PDN1.TargetType = 18 y PDN1.TrgetEntry = OPCH.DocEntry.

Tablas relacionadas

OPDN (Entrada de mercancías de compras (cabecera)) · OPOR (Pedido de compra (cabecera)) · OPCH (Factura de proveedores (cabecera)) · 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.