Bestand pro Lager

Lagerbestand, bestätigte, bestellte und verfügbare Menge pro Artikel und Lager.

Tabellen: OITW, OITMEinsatz: Tägliche Bestandsprüfung und Lieferfähigkeit im Vertrieb.

Tool

SELECT T0.ItemCode, T1.ItemName, T0.WhsCode, T0.OnHand, T0.IsCommited, T0.OnOrder,
  T0.OnHand - T0.IsCommited + T0.OnOrder AS Available
FROM OITW T0
INNER JOIN OITM T1 ON T0.ItemCode = T1.ItemCode
WHERE T0.OnHand <> 0 OR T0.IsCommited <> 0 OR T0.OnOrder <> 0
ORDER BY T0.ItemCode, T0.WhsCode
Sie brauchen Ihre UDFs in diesem Bericht oder ein Dashboard? Wir erweitern ihn für Ihr Unternehmen.Anpassen lassen →

Welche Frage diese Abfrage beantwortet

Ein Vertriebsmitarbeiter hat einen Kunden am Telefon und muss wissen, ob ein Artikel zugesagt werden kann und aus welchem Lager. Die Abfrage zeigt, was physisch vorhanden ist, was bereits anderen Aufträgen zugesagt ist und was unterwegs ist.

Beispielausgabe

Beispielwerte zur Veranschaulichung. Die Spalten sind bei Ihnen dieselben, die Zahlen stammen aus Ihrem Mandanten.

ItemCodeItemNameWhsCodeOnHandIsCommitedOnOrderAvailable
A00001Laser Printer 1420011203050140
A00001Laser Printer 142002400040
A00002Inkjet Printer 600011520105
A00003Toner Cartridge Color01082517

SQL Server und SAP HANA im Vergleich

Das SQL bleibt bis auf die Anführungszeichen unverändert; die von SAP falsch geschriebene Spalte muss als "IsCommited" (mit einem t) in doppelten Anführungszeichen stehen. Die OR-Bedingungen und die Berechnung von Available funktionieren in HANA genauso.

Varianten

Nur disponible Lager

SQL Server

SELECT T0.ItemCode, T0.WhsCode, T0.OnHand, T0.IsCommited, T0.OnOrder,
  T0.OnHand - T0.IsCommited + T0.OnOrder AS Available
FROM OITW T0
INNER JOIN OWHS T2 ON T0.WhsCode = T2.WhsCode
WHERE T2.Nettable = 'Y'
  AND (T0.OnHand <> 0 OR T0.IsCommited <> 0 OR T0.OnOrder <> 0)
ORDER BY T0.ItemCode, T0.WhsCode

SAP HANA

SELECT T0."ItemCode", T0."WhsCode", T0."OnHand", T0."IsCommited", T0."OnOrder",
  T0."OnHand" - T0."IsCommited" + T0."OnOrder" AS "Available"
FROM OITW T0
INNER JOIN OWHS T2 ON T0."WhsCode" = T2."WhsCode"
WHERE T2."Nettable" = 'Y'
  AND (T0."OnHand" <> 0 OR T0."IsCommited" <> 0 OR T0."OnOrder" <> 0)
ORDER BY T0."ItemCode", T0."WhsCode"

Summe pro Artikel über alle Lager

SQL Server

SELECT T0.ItemCode, T1.ItemName, SUM(T0.OnHand) AS OnHand,
  SUM(T0.IsCommited) AS IsCommited, SUM(T0.OnOrder) AS OnOrder,
  SUM(T0.OnHand - T0.IsCommited + T0.OnOrder) AS Available
FROM OITW T0
INNER JOIN OITM T1 ON T0.ItemCode = T1.ItemCode
GROUP BY T0.ItemCode, T1.ItemName
ORDER BY T0.ItemCode

SAP HANA

SELECT T0."ItemCode", T1."ItemName", SUM(T0."OnHand") AS "OnHand",
  SUM(T0."IsCommited") AS "IsCommited", SUM(T0."OnOrder") AS "OnOrder",
  SUM(T0."OnHand" - T0."IsCommited" + T0."OnOrder") AS "Available"
FROM OITW T0
INNER JOIN OITM T1 ON T0."ItemCode" = T1."ItemCode"
GROUP BY T0."ItemCode", T1."ItemName"
ORDER BY T0."ItemCode"

Zeilen ohne Bestand ausblenden

SQL Server

SELECT T0.ItemCode, T1.ItemName, T0.WhsCode, T0.OnHand
FROM OITW T0
INNER JOIN OITM T1 ON T0.ItemCode = T1.ItemCode
WHERE T0.OnHand > 0
ORDER BY T0.ItemCode, T0.WhsCode

SAP HANA

SELECT T0."ItemCode", T1."ItemName", T0."WhsCode", T0."OnHand"
FROM OITW T0
INNER JOIN OITM T1 ON T0."ItemCode" = T1."ItemCode"
WHERE T0."OnHand" > 0
ORDER BY T0."ItemCode", T0."WhsCode"

Bestand auf Lagerplatzebene (Lagerplätze aktiviert)

SQL Server

SELECT T0.ItemCode, T1.WhsCode, T1.BinCode, T0.OnHandQty
FROM OIBQ T0
INNER JOIN OBIN T1 ON T0.BinAbs = T1.AbsEntry
WHERE T0.OnHandQty <> 0
ORDER BY T0.ItemCode, T1.BinCode

SAP HANA

SELECT T0."ItemCode", T1."WhsCode", T1."BinCode", T0."OnHandQty"
FROM OIBQ T0
INNER JOIN OBIN T1 ON T0."BinAbs" = T1."AbsEntry"
WHERE T0."OnHandQty" <> 0
ORDER BY T0."ItemCode", T1."BinCode"

Häufige Fehler und Lösungen

  • Der Bestand wirkt höher als das, was das Lager verkaufen kann: Nicht disponible Lager (zum Beispiel für beschädigte Ware oder Konsignation) sind enthalten. Verknüpfen Sie OWHS und filtern Sie auf Nettable = 'Y'.
  • Die Summen stimmen nicht mit OITM.OnHand pro Lager überein: OITM.OnHand ist die Summe über alle Lager. Die Menge pro Lager steht nur in OITW.
  • Invalid column name 'IsCommitted': SAP B1 schreibt die Spalte für die bestätigte Menge IsCommited, mit einem einzigen t. Verwenden Sie T0.IsCommited.
  • Available wirkt für eilige Aufträge zu hoch: Available addiert OnOrder, und darin sind Bestellungen enthalten, die womöglich erst in Wochen eintreffen. Verwenden Sie OnHand - IsCommited für das, was heute versendet werden kann.
  • Serviceartikel fehlen in der Liste: Nur Lagerartikel haben Zeilen in OITW. Nicht lagergeführte Artikel und Serviceartikel erscheinen nie, das ist so gewollt.
Lager

Verwandte Abfragen

Tabellenreferenz: Tabelle OITW (Artikelbestand pro Lager) · Tabelle OITM (Artikel (Artikelstamm))

So funktioniert es

Drei Schritte, ohne Anmeldung

1

Die passende Version kopieren

Nutzen Sie den Tab SQL Server für MS-SQL-Datenbanken und den Tab HANA für SAP B1 auf HANA.

2

Abfragegenerator öffnen

Öffnen Sie in SAP Business One Extras → Abfragen → Abfragegenerator, fügen Sie die Abfrage ein und klicken Sie auf Ausführen.

3

Speichern und teilen

Klicken Sie auf Sichern, wählen Sie eine Kategorie und geben Sie der Abfrage einen Namen. Ihr Team kann sie dann über den Abfrage-Manager ausführen.

FAQ

Fragen zu diesem Tool

Wie führe ich die Abfrage „Bestand pro Lager“ in SAP Business One aus?

Kopieren Sie die Version, die zu Ihrer Datenbank passt, öffnen Sie Extras → Abfragen → Abfragegenerator, fügen Sie sie in das SQL-Feld ein und klicken Sie auf Ausführen. Speichern Sie die Abfrage, um sie später wiederzuverwenden.

Welche Tabellen verwendet diese Abfrage?

Sie liest OITW, OITM aus dem Standardschema von SAP Business One. Benutzerdefinierte Felder sind nicht erforderlich.

Lässt sich daraus ein Dashboard oder eine Warnung machen?

Ja. Wir machen aus Abfragen Crystal Reports, Excel-Berichte, die sich selbst aktualisieren, SAP-B1-Warnungen oder WhatsApp-Nachrichten für Führungskräfte.

Brauchen Sie das direkt in SAP Business One?

Wir entwickeln Add-ons, Berichte und Integrationen für SAP B1 auf SQL Server und HANA. Beschreiben Sie Ihren Bedarf und erhalten Sie einen Festpreis, meist innerhalb von 24 Stunden.