May 12, 2026

Essential SAP IDoc transaction codes

Essential SAP IDoc transaction codes are primarily located under the WE transaction prefix, focused on monitoring, testing, and administration. Key tcodes include WE02/WE05 for displaying IDoc lists, WE19 for testing/debugging, and BD87 for reprocessing failed IDocs. 

Key IDoc Transaction Codes
  • WE02 / WE05: Display/List IDocs (Most commonly used)
  • WE19: IDoc Test Tool (Create/edit/debug)
  • BD87: Reprocess failed IDocs (Status Monitor)
  • WE20: Partner Profiles (Configure EDI/ALE)
  • WE09: Search for IDocs by content/segment
  • WE11: Delete IDocs
  • WE21: Ports definition 
IDoc Administration & Development
  • WE30: IDoc Types (Define structure)
  • WE31: Create IDoc Segments
  • WE81: Define Logical Message Types
  • WE82: Assign Message Type to IDoc Type
  • WE41/42: Inbound/Outbound Process Codes
  • WE57: Assign FM to Log. Message and IDoc Type 
Master Data Sending (ALE) 
  • BD10: Send Material
  • BD12: Send Customer
  • BD14: Send Vendor
  • BD21: Create IDoc for Change Pointers
  • BD64: Maintain Distribution Model 
Other Useful Tcodes
  • WE06: Monitor Active IDocs
  • WE07: IDoc Statistics
  • WE60: Documentation for IDoc Type
  • SALE: ALE Implementation Guide

May 8, 2026

ABAP Debugging Tips

Some useful ABAP Debugging tricks.
Check this out:



Ref: https://www.youtube.com/@ERP-UP

Apr 20, 2026

Shortcut to Find/search in Eclipse

The primary shortcuts for finding and searching in the Eclipse IDE depend on whether you are searching within a single file or across your entire workspace.

Searching Within a File
  • Find/Replace: Ctrl + F (Windows/Linux) or Cmd + F (Mac). Opens the standard find and replace dialog for the current editor.
  • Find Next: Ctrl + K. Quickly jumps to the next occurrence of the selected text without opening a dialog.
  • Find Previous: Ctrl + Shift + K. Jumps to the previous occurrence.
  • Incremental Find: Ctrl + J. Start typing to jump to matches instantly as you type; use arrow keys to navigate.
  • Quick Outline: Ctrl + O. Opens a searchable popup of all methods and variables in the current class.
Searching Across Workspace/Project
  • Global Search Dialog: Ctrl + H. Opens the comprehensive Search Dialog, which includes tabs for File SearchJava Search, and more.
  • Quick Search (Newer Versions): Ctrl + Shift + L. Provides a fast, incremental text search across the entire workspace (similar to "Find in Files").
  • Search for References: Ctrl + Shift + G. Finds all workspace references to the selected method, class, or variable.
  • Open Resource: Ctrl + Shift + R. Quickly find and open any file (XML, text, etc.) by name.
  • Open Type: Ctrl + Shift + T. Quickly find and open a Java class, interface, or enum.
Navigation & Quick Access
  • Quick Access Search: Ctrl + 3. A universal search bar to find any Eclipse command, view, or preference.
  • Show Key Assist: Ctrl + Shift + L (when no search plugin is active). Displays a list of all currently active keyboard shortcuts in Eclipse.

Mar 26, 2026

Running an ATC Check with Variant for a Z Program

Option 1: From SE38 (Most Direct)

  1. Open SE38, enter your Z program name
  2. Menu: Program → Check → ATC Check
  3. A dialog appears — select your Check Variant
  4. Confirm → results go to the ATC worklist

Option 2: From ATC Cockpit (Correct Flow)

  1. Go to transaction ATC
  2. Click "Schedule Run" (not "Run Check")
  3. In the next screen:
    • Define or select an Object Set containing your Z program
    • Select the Check Variant
  4. Set execution as "Immediately"
  5. Execute → view results under "Worklist"

Option 3: From SATC

  1. Go to SATC
  2. Button: "Create" a new run
  3. Specify:
    • Object Set → add your Z program (PROG / ZMYPROGRAM)
    • Check Variant
  4. Run immediately or schedule in background

Quickest Method

For a single Z program, SE38 → Program → Check → ATC Check is the fastest — it prompts for the variant inline and runs immediately without needing to define object sets.

Would you like help interpreting the results or configuring a specific check variant?

Mar 24, 2026

Function Module to Run a Simple ALV Report

Codes:

FUNCTION z_very_simple_alv.
*"----------------------------------------------------------------------
*"*"Local interface:
*"  IMPORTING
*"    REFERENCE(I_START_COLUMN) TYPE  I DEFAULT 25
*"    REFERENCE(I_START_LINE) TYPE  I DEFAULT 6
*"    REFERENCE(I_END_COLUMN) TYPE  I DEFAULT 100
*"    REFERENCE(I_END_LINE) TYPE  I DEFAULT 10
*"    REFERENCE(I_TITLE) TYPE  STRING DEFAULT 'ALV'
*"    REFERENCE(I_POPUP) TYPE  FLAG DEFAULT ' '
*"  TABLES
*"      IT_ALV TYPE  STANDARD TABLE
*"----------------------------------------------------------------------

  DATA go_alv TYPE REF TO cl_salv_table.

  TRY.
      cl_salv_table=>factory(
        IMPORTING
          r_salv_table = go_alv
        CHANGING
          t_table      = it_alv[] ).

    CATCH cx_salv_msg.
  ENDTRY.

  DATA: lr_functions TYPE REF TO cl_salv_functions_list.

  lr_functions = go_alv->get_functions( ).
  lr_functions->set_all( 'X' ).

  IF go_alv IS BOUND.
    IF i_popup = 'X'.
      go_alv->set_screen_popup(
        start_column = i_start_column
        end_column  = i_end_column
        start_line  = i_start_line
        end_line    = i_end_line ).
    ENDIF.

    go_alv->display( ).

  ENDIF.

ENDFUNCTION. 


Sample program to call the Function:

REPORT z_very_simple_alv.

DATA gt_tab TYPE STANDARD TABLE OF sflights.

SELECT * FROM sflights INTO TABLE gt_tab.

CALL FUNCTION 'Z_VERY_SIMPLE_ALV'
  TABLES
    it_alv = gt_tab.


Result