adesso orange🍊Stellenangebote:
Software Engineer Trainee · Senior
| (Senior) Cloud Software Engineer BTP
(Senior) Consultant Technologie · Consultant ABAP
Werkstudent Softwareentwicklung · Fiori / UI5 · Consulting · Application Management
ZCL MM UTILITIES
Die in Freizeit erstellte Z-Klasse bietet verschiedene Methoden für den MM-Bereich an.
Diese Klasse benötigt die Z-Klasse für Konvertierungen.
ADD_PO_CONFIRMATION
Diese Instanzmethode nutzt den SAP internen Funktionsbaustein "ME_PO_CONFIRM", s. wichtige Hinweise hier.
Durch den Konstruktur muss eine interne EKPO Tabelle und optional eine EKES Tabelle mitgegeben werden. Wenn keine EKES Tabelle mitgegeben wird, baut die Methode sich eine eigene interne EKES Tabelle anhand der Positionsdaten auf.
GET_PO_CHANGE_DOCUMENTS
Die statische Methode nutzt den Funktionsbaustein "ME_READ_CHANGES_EINKBELEG". In der Methode sind noch sinnvolle Prüfungen vorhanden z.B. ob die EKKO Struktur im Feld EBELN eine Bestellnummer hat.
GET_GENERAL_DATA_FROM_MAT
Gibt die allgemeinen Materialdaten als Rückgabeparameter zurück.
Als Importparameter wird eine Referenz von TYPE REF TO DATA erwartet.
"relevante Daten kommen direkt aus Programmselektion SELECT-OPTIONS: s_matnr FOR mard-matnr. "Aus SELECT-OPTION oder andersweitig eine Range aufgebaut, wird eine Referenz erzeugt. GET REFERENCE OF s_matnr[] INTO DATA(lr_matnr). DATA(lt_mard) = zcl_mm_utilities=>get_storage_loc_data( ir_materials = lr_matnr ).
GET_PLANT_DATA_FROM_MAT
Gibt die Werksdaten von Materialien als Rückgabeparameter zurück.
Als Importparameter werden Referenzen von TYPE REF TO DATA erwartet.
S. Referenz-Erzeugung: GET_GENERAL_DATA_FROM_MAT
GET_STORAGE_LOC_DATA
Gibt die Lagerortdaten von Materialien als Rückgabeparameter zurück.
Als Importparameter werden Referenzen von TYPE REF TO DATA erwartet.
S. Referenz-Erzeugung: GET_GENERAL_DATA_FROM_MAT
CREATE_STOCK_RECONCILIATION
Diese statische Methode erstellt ein "einfachen" Bestandsabgleich mit einem Partner. Aktuell wird ein Vergleich zwischen frei verfügbaren Bestand, QS und gesperten Bestand unterstützt.
Es ist möglich ein Mapping mitzugeben in Falle, dass der Partner die Bestände nicht so speichert wie in einem SAP System. Wenn der Partner Bestände durch ein Kennzeichen und nur einer Mengenangabe differenziert, kann das zuvor im Mapping aufgeschlüsselt werden. Ebenso ist ein Mapping für Werk und Lagerort möglich.
Mapping festlegen
DATA: ls_mapping TYPE zcl_mm_utilities=>ts_partner_sap_mapping, lt_mapping TYPE zcl_mm_utilities=>tt_partner_sap_mapping.
Beispiel: Partner liefert Bestandskennzeichen und eine Mengenangabe
"ls_partner_stocks-partner_bstar = 'FREE'. "partner delivers only stock identifier "ls_mapping-partner_bstar = ls_partner_stocks-partner_bstar. "add bstar to mapping and the equivalent to SAP "ls_mapping-sap_bstar_understanding = 'LABST'.
Bestandsabgleich durchführen
zcl_mm_utilities=>create_stock_reconciliation( EXPORTING it_partner_sap_mapping = lt_mapping it_partner_stocks = lt_partner_stocks it_sap_stocks = lt_sap_stocks iv_test_output = abap_true IMPORTING et_delta = DATA(lt_delta) ).
GET_QUAN_FROM_TARGET_UOM
- Diese statische Methode berechnet mit Hilfe des Funktionsbausteines "MD_CONVERT_MATERIAL_UNIT die Menge einer Quellenmengeneinheit in eine Zielmengeneinheit um.
- Zuvor wird die Materialnummer auf internes Format konvertiert, wenn die Materialnummer < 18 ist.
- Wenn ein Fehler auftaucht, wird eine Exception geworfen.
DATA(lv_bstm) = zcl_mm_utilities=>GET_QUAN_FROM_TARGET_UOM( iv_matnr = '100' "Konv. in internes Format iv_source_quan = '50' iv_source_quan_uom = 'ST' iv_target_quan_uom = 'PAL' ). "lv_bstm ist 5.000 s.u. Zusatzdaten
Zusatzdaten Material
Nenner | Alternative Mengeneinheit | Zähler | Basismengeneinheit | |
1 | ST | <=> | 1 | ST |
1 | PAL | <=> | 10 | ST |