Saltar al contenido
Mostrando las entradas con la etiqueta SQL Server. Mostrar todas las entradas
Mostrando las entradas con la etiqueta SQL Server. Mostrar todas las entradas

Inventario por almacén en SAP Business One 10: consulta SELECT para SQL Server

Inventario por almacén en SAP Business One 10: consulta SELECT para SQL Server

Si necesitas ver la existencia actual de cada artículo por almacén, puedes partir de OITW y añadir el nombre del artículo desde OITM y el del almacén desde OWHS. Esta consulta de solo lectura está planteada para SAP Business One 10.x sobre Microsoft SQL Server.

Consulta de inventario por artículo y almacén

SELECT
    w.ItemCode,
    i.ItemName,
    w.WhsCode,
    h.WhsName,
    w.OnHand AS EnStock,
    w.IsCommited AS Comprometido,
    w.OnOrder AS Pedido,
    w.OnHand + w.OnOrder - w.IsCommited AS Disponible
FROM OITW AS w
INNER JOIN OITM AS i
    ON i.ItemCode = w.ItemCode
INNER JOIN OWHS AS h
    ON h.WhsCode = w.WhsCode
ORDER BY w.ItemCode, w.WhsCode;

La referencia del SDK de SAP Business One 10.0 documenta OITW como tabla de artículos por almacén, con los códigos y cantidades usados aquí. También documenta OITM.ItemName y OWHS.WhsName. Las uniones relacionan cada código de artículo y almacén con su nombre correspondiente. Consulta las referencias de OITW, OITM y OWHS.

Cómo interpretar el resultado

  • EnStock muestra OITW.OnHand: la cantidad en stock del artículo en ese almacén.
  • Comprometido y Pedido muestran, respectivamente, OITW.IsCommited y OITW.OnOrder.
  • Disponible es un cálculo añadido en esta consulta: OnHand + OnOrder - IsCommited. No es sinónimo de EnStock ni se presenta aquí como una fórmula oficial de un informe estándar.

Como ejemplo orientativo, si una fila tuviera 10 unidades en stock, 2 comprometidas y 3 pedidas, las columnas mostrarían EnStock = 10 y Disponible = 11. Son cifras ilustrativas, no resultados de una compañía.

Filtros opcionales y límites

Para consultar un único almacén, añade antes de ORDER BY una condición como WHERE w.WhsCode = N'CODIGO_REAL', sustituyendo el texto por un código comprobado en tu compañía. Si solo interesan existencias positivas, puedes usar WHERE w.OnHand > 0; ese criterio excluye tanto los ceros como los saldos negativos. Si necesitas ambos filtros, combínalos con AND. En compañías con muchos artículos y almacenes, acotar la consulta puede reducir el volumen de filas devueltas; no se dispone de un plan de ejecución para estimar su rendimiento.

El resultado esperado es una fila por combinación artículo–almacén presente en OITW que encuentre sus registros relacionados en OITM y OWHS. La consulta sin filtros no elimina las filas cuya existencia sea cero, pero tampoco genera combinaciones que no estén en OITW. No reconstruye inventario a una fecha anterior ni ofrece valoración, lotes, números de serie o existencias por ubicación dentro del almacén.

Esta versión usa sintaxis de SQL Server; no debe trasladarse sin adaptación a SAP HANA. Si tu instalación utiliza ese motor, consulta el artículo independiente sobre inventario por almacén para HANA.

Fecha de referencia editorial: 4 de noviembre de 2026, 07:00:30 −05:00. Validación técnica: revisión documental y estática. Se recomienda comprobar la consulta y sus resultados en un entorno de pruebas antes de utilizarla operativamente; el build concreto y el rendimiento no están verificados.

Fecha de revision documental: 2026-11-04.