Hello,

Sign up to join our community!

Welcome Back,

Please sign in to your account!

Forgot Password,

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

You must login to ask a question.

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

ABAP

ABAP Programming

Share
Followers
2 Answers
109 Questions

SAP EWM Help Latest Questions

  • 0
DPM125

User enters Sales Order → goes to item screen. User enters Material + Quantity. SAP validates item → calls USEREXIT_CHECK_VBAP. Your enhancement runs. If xvbap-kwmeng < 10, show error/warning. If OK → continue. User clicks Save. SAP calls USEREXIT_SAVE_DOCUMENT_PREPARE → do final checks. SAP calls USEREXIT_SAVE_DOCUMENT → write ...

  • 0
DPM125
Beginner

You can build a new internal table with only selected entries and fields like this: *&---------------------------------------------------------------------* *& Report  ZREP_LCLCLASS *&---------------------------------------------------------------------* *& Demonstrates modern ABAP syntax: REDUCE, FILTER, FOR expressions *&---------------------------------------------------------------------* REPORT zrep_lclclass. *---------------------------- * Example 1: REDUCE Operator *---------------------------- TYPES: BEGIN OF ty_order,          id     TYPE i,          amount TYPE i,        END OF ty_order. DATA: lt_orders TYPE STANDARD TABLE OF ty_order WITH EMPTY KEY,       lv_total  TYPE i. lt_orders = VALUE #(   ( id = 1 amount = 100 )   ( id = 2 amount = 250 )   ( id = 3 amount = 150 ) ). lv_total = REDUCE i( INIT sum = 0                      FOR order IN lt_orders                      NEXT sum = sum + order-amount ). WRITE: / '--- REDUCE Example ---',        / 'Total Amount:', lv_total. *---------------------------- * Example 2: FILTER Operator *---------------------------- TYPES: BEGIN OF ty_user,          name   TYPE string,          status TYPE string,        END OF ty_user. DATA: lt_users TYPE STANDARD TABLE OF ty_user WITH EMPTY KEY,       lt_active_users TYPE STANDARD TABLE OF ty_user WITH EMPTY KEY. lt_users = VALUE #(   ( name = 'Alice'   status = 'ACTIVE' )   ( name = 'Bob'     status = 'INACTIVE' )   ( name = 'Charlie' status = 'ACTIVE' ) ). lt_active_users = FILTER #( lt_users WHERE status = 'ACTIVE' ). WRITE: / '--- FILTER Example ---'. LOOP AT lt_active_users INTO DATA(user).   WRITE: / user-name, user-status. ENDLOOP. *------------------------------------------------------ * Example 3: FOR Expression - Extract Specific Fields *------------------------------------------------------ DATA: lt_names TYPE STANDARD TABLE OF string WITH EMPTY KEY. lt_names = VALUE string_table(   FOR user IN lt_users   WHERE ( status = 'ACTIVE' )   ( user-name ) ). WRITE: / '--- FOR Expression Example ---'. LOOP AT lt_names INTO DATA(name).   WRITE: / name. ENDLOOP. This creates a new string table containing only the names of users whose status = 'ACTIVE'—short, clean, and readable. Output: — ...

The code handles EWM Outbound Delivery processing in SAP.It retrieves ERP delivery information, maps it to the EWM warehouse, locks and reads the delivery, updates extension fields (blocks, texts), and finally saves or rolls back changes with proper error handling.