Ansicht
Dokumentation

F4_ALLOWED_QUANTITY_UNIT - F4-Hilfe für die Bestimmung der erlaubten ME

F4_ALLOWED_QUANTITY_UNIT - F4-Hilfe für die Bestimmung der erlaubten ME

ABAP Short Reference   PERFORM Short Reference  
Diese Dokumentation steht unter dem Copyright der SAP AG.
SAP E-Book

Funktionalität

Dieser Baustein bietet folgende Möglichkeiten:

  • Anzeige der erlaubten Mengeneinheiten (laut Funktionsbaustein ALLOWED_QUANTITY_UNIT) im Dialog (I_DIALOG = "X") für eine F4-Hilfe
  • Bestimmung der erlaubten Mengeneinheiten ohne Dialoganzeige (I_DIALOG = ' ') und Rückgabe der Daten in einer internen Tabelle.

In beiden Fällen werden die benötigten Daten von der Datenbank mit gepufferten Lesezugriffen bestimmt.

Dieser Baustein bietet für die Bestimmung der logistischen Mengeneinheit (ME) die gleichen Grundfunktionen wie der Funktionsbaustein ALLOWED_QUANTITY_UNIT:

  • Bestimmung einer Default-Mengeneinheit für die logistisch erlaubten ME
  • Bestimmung der erlaubten ME eines Lieferanten
  • Bestimmung der erlaubten ME eines Abnehmers
  • Bestimmung der erlaubten logistischen ME unter Berücksichtigung der erlaubten Lieferanten- und Abnehmer-ME

Die Auswahl dieser Grundfunktionen erfolgt über Flags der allgemeinen Eingabestruktur I_S_GENERAL (Wichtig: Für diese Struktur gibt es den Daten-Typ: mdr1p_s_in_allowed_qt_unit im Modul-Pool: MDR1P => Bei der Definition der Übergabeparameter sollte immer dieser Datentyp genutzt werden!!!):

  • DEFQTUNIT für die Bestimmung der Default-ME
  • VENQTUNIT für die Bestimmung der erlaubten ME eines Lieferanten
  • BUYQTUNIT für die Bestimmung der erlaubten ME eines Abnehmers
  • ALLQTUNIT Bestimmung der erlaubten logistischen ME unter Berücksichtigung der erlaubten Lieferanten- und Abnehmer-ME

Es muß mindestens eins dieser Flags gesetzt sein.

Die jeweilige Grundfunktionen können für verschiedene Unternehmenssichten genutzt werden:

  • Einkaufssicht bzw. Bestellsicht oder Abnehmersicht
  • Verkaufssicht bzw. Auftragssicht oder Lieferantensicht
  • Kundenindividuelle Sicht (kann nur bei kundenindividuellen Aufrufen des Bausteins genutzt werden)

Die Unternehmensicht wird über das Kennzeichen I_S_GENERAL-APPVIEW durch die Aufrufstelle belegt. Dieses Kennzeichen muß mit einem der folgenden gültigen Werten belegt sein:

  • 01 = Einkaufssicht
  • 02 = Verkaufssicht
  • X1 = kundenidividuelle Sicht

Allgemeiner Ablauf:

  1. Allgemeine Prüfung der Eingabeparameter, die unabhängig von der gewünschten Funktionalität und der jeweiligen Unternehmenssicht gefüllt sein müssen (siehe: Allgemeine Eingabeprüfung)
  2. Lesen der notwendigen Daten aus der Datenbank abhängig von der ausgewählten Funktionalität und unabhängig von der jeweiligen Sichtweise (siehe: Datenbeschaffung abhängig von der gewünschten Funktion)
  3. Lesen der notwendigen Daten aus der Datenbank abhängig von der ausgewählten Funktionalität und abhängig von der jeweiligen Sichtweise (siehe: Datenbeschaffung abhängig von der Unternehmenssicht)
  4. Bestimmung der gewünschten Werte mit Hilfe des FB: MD_ALLOWED_QUANTITY_UNIT (siehe FB-Dokumentation).
  5. Bei Dialoganzeige werden die gewünschten Werte (laut ausgewählter Funktionalität) als PopUp mit Hilfe des FB: F4IF_INT_TABLE_VALUE_REQUEST der Aufrufstelle zur Verfügung gestellt. Durch die Versorgung der Eingabeparameter I_DIALOG, I_DYNPPROG, I_DYNPNR, I_DYNPROFIELD und I_STEPL (nur bei Tabelle-Control-Feld notwendig) kann ein ausgewählte Mengeneinheit aus dem PopUp in das DynPro-Feld des aufrufenden Programms transportiert werden (weitere Infos hierzu in der FB-Dokumentation von FB: F4IF_INT_TABLE_VALUE_REQUEST)
  6. Bei einem Aufruf ohne Dialoganzeige werden die gewünschten Werte (laut ausgewählter Funktionalität) n in Tabelle O_T_QT_UNITS der Aufrufstelle zur Verfügung gestellt.

Detail-Beschreibung

Allgemeine Eingabeprüfung

Bei allen Aufrufen werden die folgenden Prüfung der Eingabeparameter unabhängig von der gewählten Grundfunktion und der jeweiligen Sichtweise durchgeführt:

  • Mindestens eines der folgenden Flags zur Auswahl der Funktionalität muß mit X (= Durchführen) belegt sein:
    - I_S_GENERAL-DEFQTUNIT
    - I_S_GENERAL-VENQTUNIT
    - I_S_GENERAL-BUYQTUNIT
    - I_S_GENERAL-ALLQTUNIT
    Bei negativer Prüfung bricht der Funktionsbaustein mit einer Fehlermeldung und der Ausnahme BAD_PARAMS ab.
  • Der Eingabeparameter für die Unternehmenssicht I_S_GENERAL-APPVIEW muß mit einem der folgenden gültigen Werte belegt sein:
    - 01 = Einkaufssicht
    - 02 = Verkaufssicht
    - X1 = kundenindividuelle Sicht
    Bei negativer Prüfung bricht der Funktionsbaustein mit einer Fehlermeldung und der Ausnahme BAD_PARAMS ab.
  • Der Eingabeparameter für das Material I_S_GENERAL-MATNR muß mit einer gültigen Materialnummer (<> LEER) versorgt werden.
    Bei negativer Prüfung bricht der Funktionsbaustein mit einer Fehlermeldung und der Ausnahme BAD_PARAMS ab.

Datenbeschaffung abhängig von der gewünschten Funktion

Bei der Bestimmung der logistischen Default-Mengeneinheit, der erlaubten Lieferanten-Mengeneinheit und der erlaubten logistischen Mengeneinheit werden die MARA-Daten mit Hilfe des FB: MATERIAL_READ gepuffert gelesen. Existiert kein Eintrag in der MARA bricht der Baustein mit einer Fehlermeldung und dem Setzen der Ausnahme ERROR ab.

Datenbeschaffung abhängig von der Unternehmenssicht

Bei der Datenbeschaffung wird zwischen den folgenden Unternehmenssichten unterschieden:

Beschreibung der Datenbeschaffung für die Einkaufssicht:

In der Einkaufssicht werden für die jeweilig gewünschter Funktionalität die folgend Daten aus der Datenbank gelesen:

  • Bestimmung des Einkaufsinfosatzdaten aus EINA und EINE mit Hilfe des FB ME_READ_INFORECORD (mit Pufferung) bei:
  • Default-Bestell-ME

  • erlaubten Lieferanten-ME

  • erlaubten logistischen Bestell-ME

Hierzu sollten die folgenden Eingabeparameter von der Aufrufstelle versorgt werden:
  • I_S_GENERAL-LIFNR =Lieferant

  • I_S_GENERAL-EKORG (muß <> LEER sein, sonst => kein Zugriff) = Einkaufsorganisation

  • I_S_GENERAL-WERKS = Werk (als Abnehmer)

  • I_S_GENERAL-MATNR = Materialnummer

  • I_S_GENERAL-INFNR = Nummer des Einkaufsinfosatz = EINA-INFNR (wenn bekannt => erleichtert den Zugriff)

  • Bestimmung der MARC-Daten mit Hilfe des FB: MATERIAL_READ (mit Pufferung) bei:
  • erlaubten Abnehmer-ME

  • erlaubten logistischen Bestell-ME

Hierzu sollten die folgenden Eingabeparameter von der Aufrufstelle versorgt werden:
  • I_S_GENERAL-WERKS = Werk (als Abnehmer)

  • I_S_GENERAL-MATNR = Materialnummer

Bestimme die LFA1-Daten mit Hilfe des FB: WY_LFA1_SINGLE_READ (mit Pufferung) bei:
  • Default-Bestell-ME

  • erlaubten logistischen Bestell-ME

Hierzu sollten die folgenden Eingabeparameter von der Aufrufstelle versorgt werden: I_S_GENERAL-LIFNR =Lieferant
Existiert zu dem vorgegebenen Lieferanten (I_S_GEMERAL-LIFNR <> LEER) kein Eintrag in der LFA1, so bricht der Baustein mit einer Fehlermeldung und dem Setzen der Ausnahme ERROR ab.
  • Bestimmung der MARC-Daten bei einem internen Lieferanten (LFA1-WERKS <> LEER) mit Hilfe des FB: MATERIAL_READ (mit Pufferung) bei:
  • Default-Bestell-ME

  • erlaubten logistischen Bestell-ME

Hierzu sollten die folgenden Eingabeparameter von der Aufrufstelle versorgt werden:
  • I_S_GENERAL-LIFNR = Lieferant (= Lieferwerk, um aus der LFA1 WERKS zu bestimmen)

  • I_S_GENERAL-MATNR = Materialnummer

Beschreibung der Datenbeschaffung für die Verkaufssicht:

In der Verkaufssicht werden für die jeweilig gewünschter Funktionalität die folgend Daten aus der Datenbank gelesen:

  • Bestimmund der KNMT-Daten bei Berücksichtigung (I_S_GENERAL-INFLS = 'X') mit Hilfe des FB: RV_CUSTOMER_MATERIAL_READ (ohne Puffer) bei:
  • erlaubten Abnehmer-ME

  • erlaubten logistischen Bestell-ME

Hierzu sollten die folgenden Eingabeparameter von der Aufrufstelle versorgt werden:
  • I_S_GENERAL-INFLS = Berücksichtige KNMT ja/nein

  • I_S_GENERAL-KUNNR = Kundenummer (= externer Kunde)

  • I_S_GENERAL-VKORG = Verkaufsorganisation

  • I_S_GENERAL-VTWEG = Vertriebsweg

  • I_S_GENERAL-SPART = Sparte

  • I_S_GENERAL-MATNR = Materialnummer

  • Bestimmung der MVKE-Daten mit Hilfe des FB: MVKE_SINGLE_READ (mit Pufferung) bei:
  • Default-Verkaufs-ME

  • erlaubten Lieferanten-ME

  • erlaubten logistischen Bestell-ME

  • Hierzu sollten die folgenden Eingabeparameter von der Aufrufstelle versorgt werden:

  • I_S_GENERAL-VKORG = Verkaufsorganisation

  • I_S_GENERAL-VTWEG = Vertriebsweg

  • I_S_GENERAL-MATNR = Materialnummer

  • Bestimmung der KNVV-Daten mit Hilfe des FB: KNVV_SINGLE_READ (mit Pufferung) bei:
  • Default-Verkaufs-ME

  • erlaubten Lieferanten-ME

  • erlaubten logistischen Bestell-ME

Hierzu sollten die folgenden Eingabeparameter von der Aufrufstelle versorgt werden:
  • I_S_GENERAL-KUNNR = Kundenummer

  • I_S_GENERAL-VKORG = Verkaufsorganisation

  • I_S_GENERAL-VTWEG = Vertriebsweg

  • I_S_GENERAL-SPART = Sparte

Beschreibung der Datenbeschaffung für die kundenindividuellen Sicht:

Zu dieser Unternehmenssicht werden lediglich die MARA-Daten bestimmt.





Parameter

I_DIALOG
I_DISPLAY
I_DYNPNR
I_DYNPPROG
I_DYNPROFIELD
I_STEPL
I_S_GENERAL
I_TITEL
O_T_QT_UNITS

Ausnahmen

BAD_PARAMS
ERROR

Funktionsgruppe

MDR1

Fill RESBD Structure from EBP Component Structure   Vendor Master (General Section)  
Diese Dokumentation steht unter dem Copyright der SAP AG.

Length: 13881 Date: 20240523 Time: 133119     sap01-206 ( 131 ms )