Tabelle DRF1 in SAP Business One (Belegentwürfe (Zeilen))

DRF1 ist die Tabelle in SAP Business One, die die Zeilen der Belegentwürfe speichert: eine Zeile pro Artikel oder Service in einem Entwurf, mit Menge, Preis, Lager und Basisbeleg. Sie ist über DocEntry mit dem Kopf ODRF verknüpft; der Belegtyp des Entwurfs steht im Kopf (ODRF.ObjType).

Wichtige Felder der Tabelle DRF1

FeldInhalt
DocEntrySchlüssel des Kopfs. Verknüpft mit ODRF.DocEntry.
LineNumZeilennummer.
ItemCodeArtikel. Verknüpft mit OITM.ItemCode.
DscriptionArtikel- oder Servicebeschreibung.
QuantityMenge.
Price / CurrencyPreis und Preiswährung.
LineTotalZeilensumme.
WhsCodeLager. Verknüpft mit OWHS.WhsCode.
BaseTypeBasisbelegtyp, zum Beispiel 15 = Lieferung, 13 = Ausgangsrechnung, 20 = Wareneingang zur Bestellung.
BaseEntry / BaseLineSchlüssel und Zeile des Basisbelegs.
ObjTypeObjekttyp der Zeile, 112 (das Entwurfsobjekt).

Wie DRF1 mit anderen Tabellen zusammenhängt

DRF1-Zeilen gehören zu genau einem ODRF-Kopf (DocEntry). Anders als bei anderen Zeilentabellen ist DRF1.ObjType in jeder Zeile das Entwurfsobjekt (112); der Belegtyp, zu dem der Entwurf wird, muss daher aus ODRF.ObjType gelesen werden.

Typische Joins

  • DRF1 T0 INNER JOIN ODRF T1 ON T1.DocEntry = T0.DocEntry (Kopf)
  • DRF1 T0 INNER JOIN OITM T2 ON T2.ItemCode = T0.ItemCode (Artikelstamm)

Wann Sie die Tabelle DRF1 verwenden

Verwenden Sie DRF1, um zu sehen, welche Artikel in offenen Entwürfen stehen (zum Beispiel Lieferentwürfe, die auf Genehmigung warten), und um Mengen zu prüfen, bevor ein Entwurf gebucht wird.

Beispielabfrage: Artikel in offenen Entwürfen von Ausgangsrechnungen

SQL Server

SELECT T1.DocEntry AS DraftEntry, T1.CardCode, T0.ItemCode, T0.Quantity, T0.Price,
  T0.LineTotal, T1.WddStatus
FROM DRF1 T0
INNER JOIN ODRF T1 ON T1.DocEntry = T0.DocEntry
WHERE T1.ObjType = '13' AND T1.DocStatus = 'O'
ORDER BY T1.DocEntry, T0.LineNum

SAP HANA (Spaltennamen in doppelten Anführungszeichen)

SELECT T1."DocEntry" AS "DraftEntry", T1."CardCode", T0."ItemCode", T0."Quantity", T0."Price",
  T0."LineTotal", T1."WddStatus"
FROM DRF1 T0
INNER JOIN ODRF T1 ON T1."DocEntry" = T0."DocEntry"
WHERE T1."ObjType" = '13' AND T1."DocStatus" = 'O'
ORDER BY T1."DocEntry", T0."LineNum"

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: Den Entwurfstyp über DRF1.ObjType filtern

DRF1.ObjType hat in jeder Zeile den Standardwert 112, egal wofür der Entwurf ist. Filtern Sie den Belegtyp im Kopf, ODRF.ObjType (zum Beispiel '13' für Entwürfe von Ausgangsrechnungen). Siehe ODRF-Tabelle (Entwürfe).

Fertige Abfragen, die DRF1 verwenden

Fragen zur Tabelle DRF1

Woher weiß ich, zu welchem Belegtyp eine DRF1-Zeile gehört?

Verknüpfen Sie ODRF über DocEntry und lesen Sie ODRF.ObjType; DRF1.ObjType ist für jede Entwurfszeile 112.

Liegen die Entwurfszeilen aller Belege in derselben Tabelle?

Ja. DRF1 enthält die Zeilen der Entwürfe aller Belegtypen.

Wie verknüpfe ich DRF1 mit dem Kopf?

Über DRF1.DocEntry = ODRF.DocEntry.

Verwandte Tabellen

ODRF (Belegentwürfe (Kopf)) · INV1 (Ausgangsrechnung (Positionen)) · RDR1 (Kundenauftrag (Positionen)) · 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.