Tabelle WTR1 in SAP Business One (Bestandsumlagerung (Zeilen))

WTR1 ist die Tabelle in SAP Business One, die die Zeilen einer Bestandsumlagerung speichert: eine Zeile pro bewegtem Artikel, mit Menge, Von-Lager (FromWhsCod), Nach-Lager (WhsCode) und dem Basisbeleg, aus dem sie kopiert wurde. Sie ist über DocEntry mit dem Kopf OWTR verknüpft.

Wichtige Felder der Tabelle WTR1

FeldInhalt
DocEntrySchlüssel des Kopfs. Verknüpft mit OWTR.DocEntry.
LineNumZeilennummer.
ItemCodeArtikel. Verknüpft mit OITM.ItemCode.
DscriptionArtikelbeschreibung.
QuantityBewegte Menge.
InvQtyMenge in der Lagermengeneinheit.
FromWhsCodVon-Lager. Verknüpft mit OWHS.WhsCode.
WhsCodeLager der Zeile (das Nach-Lager). Verknüpft mit OWHS.WhsCode.
BaseTypeBasisbelegtyp: 1250000001 = Umlagerungsanforderung, 20 = Wareneingang zur Bestellung, 59 = Wareneingang, 67 = Umlagerung.
BaseEntry / BaseLineSchlüssel und Zeile des Basisbelegs.
StockPriceLagerpreis der Zeile.
OcrCode / ProjectVerteilungsregel und Projektcode.

Wie WTR1 mit anderen Tabellen zusammenhängt

WTR1-Zeilen gehören zu genau einem OWTR-Kopf (DocEntry). BaseType, BaseEntry und BaseLine verweisen auf den Beleg, aus dem die Zeile kopiert wurde, meist eine Umlagerungsanforderung (BaseType 1250000001, OWTQ mit ihren Zeilen in WTQ1).

Typische Joins

  • WTR1 T0 INNER JOIN OWTR T1 ON T1.DocEntry = T0.DocEntry (Kopf)
  • WTR1 T0 LEFT JOIN OWTQ T2 ON T2.DocEntry = T0.BaseEntry AND T0.BaseType = 1250000001 (Umlagerungsanforderung)
  • WTR1 T0 INNER JOIN OWHS T3 ON T3.WhsCode = T0.FromWhsCod (Name des Von-Lagers)

Wann Sie die Tabelle WTR1 verwenden

Verwenden Sie WTR1 für die bewegte Menge pro Artikel und Lagerpaar, um eine Umlagerung bis zu ihrer Anforderung zurückzuverfolgen und um Bestandsbewegungen zwischen zwei Lagern für einen Zeitraum zu summieren.

Beispielabfrage: Bewegte Menge pro Artikel von einem Lager in ein anderes in diesem Monat

SQL Server

SELECT T0.ItemCode, T0.FromWhsCod, T0.WhsCode AS ToWhs, SUM(T0.Quantity) AS QtyMoved
FROM WTR1 T0
INNER JOIN OWTR T1 ON T1.DocEntry = T0.DocEntry
WHERE T1.CANCELED = 'N' AND YEAR(T1.DocDate) = YEAR(GETDATE()) AND MONTH(T1.DocDate) = MONTH(GETDATE())
GROUP BY T0.ItemCode, T0.FromWhsCod, T0.WhsCode
ORDER BY T0.ItemCode

SAP HANA (Spaltennamen in doppelten Anführungszeichen)

SELECT T0."ItemCode", T0."FromWhsCod", T0."WhsCode" AS "ToWhs", SUM(T0."Quantity") AS "QtyMoved"
FROM WTR1 T0
INNER JOIN OWTR T1 ON T1."DocEntry" = T0."DocEntry"
WHERE T1."CANCELED" = 'N' AND YEAR(T1."DocDate") = YEAR(CURRENT_TIMESTAMP) AND MONTH(T1."DocDate") = MONTH(CURRENT_TIMESTAMP)
GROUP BY T0."ItemCode", T0."FromWhsCod", T0."WhsCode"
ORDER BY T0."ItemCode"

Fügen Sie eine der beiden Versionen unter Extras → Abfragen → Abfragegenerator ein. Sie brauchen den anderen Dialekt für Ihre eigene Abfrage? Nutzen Sie den SQL-zu-HANA-Konverter.

Typischer Fallstrick: BaseEntry ohne BaseType

BaseEntry ist nur eine DocEntry-Nummer. Eine Umlagerungszeile kann aus einer Umlagerungsanforderung, einem Wareneingang zur Bestellung oder einem Wareneingang stammen; filtern Sie daher immer auch BaseType, sonst findet der Join einen anderen Beleg mit demselben DocEntry. Siehe OWTQ-Tabelle (Umlagerungsanforderung).

Fertige Abfragen, die WTR1 verwenden

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

Fragen zur Tabelle WTR1

Welche Spalte ist das Nach-Lager in WTR1?

WhsCode. FromWhsCod ist das Von-Lager.

Wie verknüpfe ich WTR1 mit der Umlagerungsanforderung?

WTR1.BaseType = 1250000001 und WTR1.BaseEntry = OWTQ.DocEntry; BaseLine ist die Zeile der Anforderung.

Was ist InvQty in WTR1?

Die Menge in der Lagermengeneinheit, neben Quantity in der Mengeneinheit der Zeile.

Verwandte Tabellen

OWTR (Bestandsumlagerung (Kopf)) · OWTQ (Umlagerungsanforderung (Kopf)) · OITW (Artikelbestand pro Lager) · alle SAP-Business-One-Tabellen durchsuchen

Quellen: Dokumentation und SDK zu SAP Business One (Referenz der DI-API-Datenbanktabellen), SAP Help Portal.

Bereit für den Start?

Sagen Sie uns, was Sie brauchen. Sie erhalten eine klare technische Antwort, einen festen Leistungsumfang und einen Preis, in der Regel innerhalb von 24 Stunden.