Join two tables without using read statement (Using updated for loop syntax).

Report program.

REPORT zab_for_join.
TABLES:zstu,zstu1.

TYPESBEGIN OF ty_zstu,
         zstu_id   TYPE zstu-zstu_id,
         zstu_name TYPE zstu-zstu_name,
         zstu_dep  TYPE zstu-zstu_dep,
         zstu_fee  TYPE zstu-zstu_fee,
       END OF ty_zstu.
TYPESBEGIN OF ty_zstu1,
         zstu_id    TYPE zstu1-zstu_id,
         zstu_marks TYPE zstu1-zstu_marks,
       END OF ty_zstu1.
TYPES:BEGIN OF ty_final,
        zstu_id    TYPE zstu-zstu_id,
        zstu_name  TYPE zstu-zstu_name,
        zstu_dep   TYPE zstu-zstu_dep,
        zstu_fee   TYPE zstu-zstu_fee,
        zstu_marks TYPE zstu1-zstu_marks,
      END OF ty_final.

TYPESty_t_f TYPE STANDARD TABLE OF ty_final WITH DEFAULT KEY.
DATA:it_zstu  TYPE TABLE OF ty_zstu,
     it_zstu1 TYPE TABLE OF ty_zstu1,
     it_final TYPE TABLE OF ty_final.

SELECT-OPTIONSs_id FOR zstu-zstu_id.

IF s_id IS NOT INITIAL.
  SELECT zstu_id
          zstu_name
          zstu_dep
          zstu_fee
          FROM zstu
          INTO TABLE it_zstu
          WHERE zstu_id IN s_id.
  SORT it_zstu BY zstu_id.
  IF it_zstu IS NOT INITIAL.
    SELECT zstu_id
            zstu_marks
          FROM zstu1
          INTO TABLE it_zstu1
          WHERE zstu_id IN s_id.
    SORT it_zstu1 BY zstu_id.

  ENDIF.

ENDIF.

DATA(gt_o
VALUE ty_t_f(
                   FOR wa_zstu IN it_zstu
                   FOR wa_zstu1 IN it_zstu1
                   WHERE zstu_id wa_zstu-zstu_id )
                    zstu_id wa_zstu1-zstu_id zstu_marks wa_zstu1-zstu_marks
                    zstu_name wa_zstu-zstu_name  zstu_dep wa_zstu-zstu_dep 
                    zstu_fee wa_zstu-zstu_fee ).

cl_demo_output=>displaygt_o ).

Input


Output



Comments

Popular posts from this blog

New syntax for append- VALUE (new syntax 7.4+) in ABAP

Read statement new syntax in ABAP. (7.4+).

Concatenation new syntax( 7.4+ ).