Tuesday, 31 July 2018

MESH and Group by in Internal tabel examples

Mesh Program *&---------------------------------------------------------------------* *& Report YBTEST_MESH *&---------------------------------------------------------------------* *& *&---------------------------------------------------------------------* REPORT YBTEST_MESH. TYPES: BEGIN OF ty_customer, customer TYPE char10, NAME TYPE char30, city TYPE char30, route TYPE char30, END OF ty_customer. TYPES: tt_customers TYPE SORTED TABLE OF ty_customer WITH UNIQUE KEY customer. TYPES: BEGIN OF ty_orders, order TYPE char10, customer TYPE char10, END OF ty_orders. TYPES: tt_orders TYPE SORTED TABLE OF ty_orders WITH UNIQUE KEY order. TYPES: BEGIN OF MESH ty_rep_mesh, order_info TYPE tt_orders ASSOCIATION order_to_customer TO customer_info ON customer = customer, customer_info TYPE tt_customers, END OF MESH ty_rep_mesh. DATA(t_customres) = VALUE tt_customers( ( customer = 'C0001' NAME = 'Test Customer 1' city = 'NY' route = 'R0001' ) ( customer = 'C0002' NAME = 'Customer 2' city = 'LA' route = 'R0003' ) ( customer = 'C0003' NAME = 'Good Customer 3' city = 'DFW' route = 'R0001' ) ( customer = 'C0004' NAME = 'Best Customer 4' city = 'CH' route = 'R0003' ) ). DATA(t_orders) = VALUE tt_orders( ( order = '90001' customer = 'C0001' ) ( order = '90002' customer = 'C0002' ) ( order = '90003' customer = 'C0001' ) ( order = '90004' customer = 'C0001' ) ( order = '90005' customer = 'C0004' ) ( order = '90006' customer = 'C0004' ) ( order = '90007' customer = 'C0003' ) ). DATA t_mesh TYPE ty_rep_mesh. t_mesh-order_info = t_orders. t_mesh-customer_info = t_customres. LOOP AT t_mesh-order_info INTO DATA(ls_order). WRITE: / ls_order-order. DATA(ls_cust) = t_mesh-order_info\order_to_customer[ t_mesh-order_info[ order = ls_order-order ] ]. WRITE: ` `, ls_cust-customer, ls_cust-NAME. ENDLOOP. ______________________________________________________________________________________________________ Group by Program