AMDP with Case statement Example

 

CLASS zvb_amdp_class DEFINITION

PUBLIC

  FINAL

  CREATE PUBLIC .

 

  PUBLIC SECTION.

    TYPES:BEGIN OF ty_stu,

            id   TYPE numc10,

            name TYPE char20,

            dep type char20,

          END OF ty_stu.

    TYPES:tt_stu TYPE STANDARD TABLE OF ty_stu.

    INTERFACES:if_amdp_marker_hdb.

    CLASS-METHODS:fetch_data IMPORTING

                               VALUE(iv_id)  TYPE zvb_stu-id

                             EXPORTING

                               VALUE(et_stu) TYPE tt_stu.

ENDCLASS.

 

CLASS zvb_amdp_class IMPLEMENTATION.

  METHOD fetch_data BY DATABASE PROCEDURE

                    FOR HDB

                    LANGUAGE SQLSCRIPT

                    OPTIONS READ-ONLY

                    USING zvb_stu.

    et_stu = select id,

                    name,

                    case name

                    when 'VASU'

                    THEN 'CSE'

                    WHEN 'SAKHI'

                    THEN 'ECE'

                    END AS dep

     from zvb_stu WHERE id = :iv_id;

  ENDMETHOD.

ENDCLASS.

 

Call AMDP in Program:

REPORT zvb_amdp_program.
PARAMETERS:p_id TYPE zvb_stu-id.

zvb_amdp_class=>fetch_data(
  EXPORTING iv_id p_id
  IMPORTING et_stu DATA(lt_stu).

cl_demo_output=>display_dataname 'Student Details' value lt_stu ).

 

Output: 

 

 

Comments

Popular posts from this blog

CDS Views: Table Functions with Example

Passing Dynamic Variables to SO10 TEXT

Adobe Form/PDF Form Introduction