SAP by Sali · Project NEO
טוען את נוף ה-SAP…
SAP by Sali · Project NEO
טוען את נוף ה-SAP…
Maintenance Order
רמת האמון והמקור — שקוף לחלוטין
לא ממציאים מספרי SAP Note או מקורות. סטטוס «מאומת» מוצג רק כאשר מקור אמיתי מאוחסן ברשומה.
מחושב מכללים מתועדים · אינו שיפוט איכות או חשיבות
הסיבות לרמה זו:
רמת המורכבות מציינת כמה ידע טכני ועסקי נדרש כדי להשתמש באובייקט נכון. היא אינה מציינת איכות או חשיבות.
שמירה, ROLLBACK וטיפול ב-RETURN
לאחר קריאה מוצלחת יש לבצע BAPI_TRANSACTION_COMMIT כדי לשמור את השינוי במסד הנתונים. ה-BAPI עצמו אינו שומר.
טעות נפוצה: שכחת COMMIT — ה-RETURN נראה תקין אך השינוי לא נשמר (מתגלה רק כשהנתון חסר בהמשך).
אין להניח שאובייקט מתנהג זהה ב-S/4HANA
יצירה/שינוי הזמנת אחזקה (PM) בשיטת methods table — Header/Operation/Component/Status בקריאה אחת. דורש COMMIT. מקבילת API ל-IW31/IW32.
Create/change a maintenance order (PM) via a methods table — header/operation/component/status in one call. Requires COMMIT. API equivalent of IW31/IW32.
מערכת CMMS/נייד יוצרת פקודת אחזקה מהודעה, מוסיפה פעולות ורכיבים, משחררת ומדווחת — הכול דרך קריאה אחת מונחית-מתודות.
IN: IT_METHODS + IT_HEADER/IT_OPERATION/IT_COMPONENT · OUT: RETURN, ES_HEADER (order number).
טיפול ב-BAPIRET2 · COMMIT / ROLLBACK
DATA: lt_methods TYPE TABLE OF bapi_alm_order_method,
lt_header TYPE TABLE OF bapi_alm_order_headers_i,
lt_return TYPE TABLE OF bapiret2,
lt_numbers TYPE TABLE OF bapi_alm_numbers.
APPEND VALUE #( refnumber = '1' objecttype = 'HEADER' method = 'CREATE' ) TO lt_methods.
APPEND VALUE #( refnumber = '1' objecttype = '' method = 'SAVE' ) TO lt_methods.
APPEND VALUE #( orderid = '%00000000001' order_type = 'PM01' planplant = '1000' ) TO lt_header.
CALL FUNCTION 'BAPI_ALM_ORDER_MAINTAIN'
TABLES it_methods = lt_methods it_header = lt_header
return = lt_return et_numbers = lt_numbers.
CALL FUNCTION 'BAPI_TRANSACTION_COMMIT' EXPORTING wait = 'X'.שאלות מהירות בהקשר הנוכחי: