Example on AMDP with Instance Method
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 Class in Report Program:
REPORT zvb_amdp_program.
data:lo_stu type ref to zvb_amdp_class1.
PARAMETERS:p_id TYPE zvb_stu-id.
create OBJECT lo_stu.
lo_stu->fetch_data(
EXPORTING iv_id = p_id
IMPORTING et_stu = DATA(lt_stu)
et_stu1 = data(lt_stu1) ).
cl_demo_output=>display_data( name = 'Student Details' value = lt_stu ).
Output:
Comments
Post a Comment