1. Open SQL ABAP’s database-independent SQL. Works on all supported DBs (HANA, Oracle, MSSQL, DB2, …). ABAP converts Open SQL statements into the database-specific SQL automatically. Ensures portability → same ABAP program runs regardless of underlying DB. Supports buffering (e.g., table buffers in SAP). Only a ...
SAP EWM Help Latest Questions
*&———————————————————————* *& Report ZTEST_BDC_FI01_1 *& *&———————————————————————* *& *& *&———————————————————————* REPORT ztest_bdc_fi01_1. types: begin of ty_error, msg type string, lineno type i, end of ty_error. * Batchinputdata of single transaction DATA: bdcdata LIKE bdcdata OCCURS 0 WITH HEADER LINE. PARAMETERS : p_data TYPE ibipparms-path. DATA : it_tab TYPE truxs_t_text_data, lv_filename TYPE rlgrap-filename, it_msg type table of bdcmsgcoll, lv_msg type string, lt_error type table of ty_error, ls_error type ty_error. TYPES: BEGIN OF record, * data element: BANKS banks(003), * data element: BANKK bankl(015), * data element: BANKA banka(060), * data element: REGIO provz(003), * data element: ORT01_GP ort01(035), * data element: BRNCH brnch(040), ** data element: BANKA * banka_007(060), ** data element: REGIO * provz_008(003), ** data element: ORT01_GP * ort01_009(035), ** data element: BRNCH * brnch_010(040), END OF record. DATA: lt_record TYPE STANDARD TABLE OF record,
GET CURSOR → to capture the position of the cursor in a list/report. HIDE → to store values “hidden” behind a line for later retrieval. USER COMMAND (AT USER-COMMAND) → to react to user actions (e.g., double-clicks, buttons, PF keys). 1. GET CURSOR This ...
*&———————————————————————* *& Report ZCLASS_TEST_DP_1 *& *&———————————————————————* *& *& *&———————————————————————* REPORT zclass_test_dp_1. *pillars of oop ” abstraction –> hiding the data. ” encapsulation –> variable + methods. –> capsule -> 1 + 1 == ” inheritance –> parent child relation. ” –> child calss will inherit the property of parent class ” polymorphism ” multiple forms –> 1 method — same name and differe param parent ==> child class but with different paremeters. –> method overriding. ” method overloading is not there –> same 2 same name and different parameters. PARAMETERS: p_num TYPE i. DATA: lv_tot TYPE i. CLASS lcl_main DEFINITION. PUBLIC SECTION. METHODS: get_data EXPORTING iv_num TYPE i. METHODS: set_data IMPORTING ev_num TYPE i. PROTECTED SECTION. PRIVATE SECTION. DATA : lv_num1 TYPE i. ENDCLASS. CLASS lcl_main IMPLEMENTATION. METHOD set_data. lv_num1 = ev_num. ENDMETHOD. METHOD get_data. iv_num = lv_num1. ENDMETHOD. ENDCLASS. ” inheritance class lcl_child DEFINITION INHERITING FROM lcl_main. PUBLIC SECTION. METHODS: get_data REDEFINITION. METHODS: set_data REDEFINITION. PROTECTED SECTION. PRIVATE SECTION. data lv_child type i value 4. ENDCLASS. class lcl_child IMPLEMENTATION. method get_Data. ” method overriding * ev_tot = iv_num + iv_num2. ” child will gor the child methods first then to parent method. super->get_data( IMPORTING iv_num = iv_num ). ” way to calling the parent method ENDMETHOD. method set_Data. * ev_tot = iv_num + iv_num2. ” child will gor the child methods first then to parent method. super->set_data( EXPORTING ev_num = ev_num ). ” way to calling the parent method ENDMETHOD. ENDCLASS. START-OF-SELECTION. DATA(lo_obj) = NEW lcl_main( ). DATA(lo_obj_child) = NEW lcl_child( ). lo_obj_child->set_data( EXPORTING ev_num = p_num ).
Aspect DDIC View (ABAP Dictionary View) CDS View (Core Data Services View) Definition Tool Created using SE11 (Graphical interface) Created using ADT (Eclipse) with SQL-like DDL syntax Technology Base Classic SAP NetWeaver Modern SAP HANA / S/4HANA Definition Style GUI-based definition (drag-and-drop style) Text-based, code-centric with annotations Join Support Basic joins (Inner, Outer) Advanced ...
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: — ...
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 ...
The Enhancement Category in SAP defines how a structure or table can be enhanced with custom fields by a developer or customer without breaking system integrity or compatibility. In SE11, when you create or display a table or structure, under the ...