Application Development and Automation Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 
Read only

fetching data from multiple table

Former Member
0 Likes
2,479

Hello Experts,

I am new to ABAP development. i am trying to display few fields from multiple table.

I have extracted data from both the table, now i want to display the output, can you please suggest how can I display the output for the same


TABLES: but000,

         bbpm_but_frg0061.

TYPES : BEGIN OF ty_vend_det,

   partner TYPE bu_partner,

   partner_guid TYPE bu_partner_guid,

   END OF ty_vend_det.

TYPES: BEGIN OF ty_vend_org,

   partner_guid TYPE bu_partner_guid,

   purchase_org TYPE bbp_proc_org,

   END OF ty_vend_org.

DATA: it_vend_det TYPE STANDARD TABLE OF ty_vend_det WITH HEADER LINE,

       it_vend_org TYPE STANDARD TABLE OF ty_vend_org WITH HEADER LINE,

       fname TYPE char15.

DATA: wa_vend_det TYPE ty_vend_det,

       wa_vend_org TYPE ty_vend_org.

SELECT-OPTIONS: s_vend FOR it_vend_det-partner NO-EXTENSION

                                                NO INTERVALS.

START-OF-SELECTION.

   SELECT partner

          partner_guid

     FROM but000

     INTO TABLE it_vend_det

     WHERE partner IN s_vend.

   SELECT partner_guid

          purchase_org

     FROM bbpm_but_frg0061

     INTO TABLE it_vend_org

     FOR ALL ENTRIES IN it_vend_det

     WHERE partner_guid = it_vend_det-partner_guid.


in output screen there will be 3 fields, partner, partner_guid and purchase organization.

Regards,

Sarnava

1 ACCEPTED SOLUTION
Read only

pavanm592
Contributor
0 Likes
1,887

Hi

Please find the below code

TABLES: but000,

          bbpm_but_frg0061.

TYPES : BEGIN OF ty_vend_det,
   partner TYPE bu_partner,
   partner_guid TYPE bu_partner_guid,
   END OF ty_vend_det.


TYPES: BEGIN OF ty_vend_org,
   partner_guid TYPE bu_partner_guid,
   purchase_org TYPE bbp_proc_org,
   END OF ty_vend_org.

  data : wa_ven_det like line of it_ven_det.
   data : wa_ven_org like line of it_ven_org.
   types : begin of ty_final,
           partner TYPE bu_partner,
           partner_guid TYPE bu_partner_guid,
           purchase_org type bbp_proc_org,
           end of ty_final.

   data : it_final type standard table of ty_final,
          wa_final type ty_final.

DATA: it_vend_det TYPE STANDARD TABLE OF ty_vend_det WITH HEADER LINE,
       it_vend_org TYPE STANDARD TABLE OF ty_vend_org WITH HEADER LINE,
       fname TYPE char15.

DATA: wa_vend_det TYPE ty_vend_det,
       wa_vend_org TYPE ty_vend_org.

SELECT-OPTIONS: s_vend FOR it_vend_det-partner NO-EXTENSION
                                                NO INTERVALS.

START-OF-SELECTION.

   SELECT partner
          partner_guid
     FROM but000
     INTO TABLE it_vend_det
     WHERE partner IN s_vend.
   if it_vend_det is not initial.  " use the if condition when your using the For all entries
     SELECT partner_guid
         purchase_org
       FROM bbpm_but_frg0061
       INTO TABLE it_vend_org
       FOR ALL ENTRIES IN it_vend_det
       WHERE partner_guid = it_vend_det-partner_guid.
   endif.
 
 
   loop at it_ven_det into WA_ven_det.
     wa_final-partner = WA_ven_det-partner.
     wa_final-partner_guid = WA_ven_det-partner_guid.

     read table it_vend_org into wa_ven_org with key partner_guid = WA_ven_det-partner_guid.
     if sy-subrc eq 0.
       wa_final-purchase_org = wa_ven_org-purchase_org.
     endif.
 
     append wa_final to it_final.
     clear : wa_final.
   Endloop.

,

7 REPLIES 7
Read only

Former Member
0 Likes
1,887

Hi, look at abap program SALV_DEMO_TABLE_REAL_SIMPLE

it's real simple

Read only

Former Member
0 Likes
1,887

Create a final table for out put as per your requirement and there must be some common field in both tables, on the basis of common field append the data to your final table.

Regards

Neeraj

Read only

0 Likes
1,887

Hello Neeraj,

i have created two structure in my report one is ty_vend_det (BUT000 fields) and ty_vend_org (bbpm_but_frg0061 fields), can you please show how i am going to define my final data structure.

Thanks in advance,

Sarnava

Read only

pavanm592
Contributor
0 Likes
1,888

Hi

Please find the below code

TABLES: but000,

          bbpm_but_frg0061.

TYPES : BEGIN OF ty_vend_det,
   partner TYPE bu_partner,
   partner_guid TYPE bu_partner_guid,
   END OF ty_vend_det.


TYPES: BEGIN OF ty_vend_org,
   partner_guid TYPE bu_partner_guid,
   purchase_org TYPE bbp_proc_org,
   END OF ty_vend_org.

  data : wa_ven_det like line of it_ven_det.
   data : wa_ven_org like line of it_ven_org.
   types : begin of ty_final,
           partner TYPE bu_partner,
           partner_guid TYPE bu_partner_guid,
           purchase_org type bbp_proc_org,
           end of ty_final.

   data : it_final type standard table of ty_final,
          wa_final type ty_final.

DATA: it_vend_det TYPE STANDARD TABLE OF ty_vend_det WITH HEADER LINE,
       it_vend_org TYPE STANDARD TABLE OF ty_vend_org WITH HEADER LINE,
       fname TYPE char15.

DATA: wa_vend_det TYPE ty_vend_det,
       wa_vend_org TYPE ty_vend_org.

SELECT-OPTIONS: s_vend FOR it_vend_det-partner NO-EXTENSION
                                                NO INTERVALS.

START-OF-SELECTION.

   SELECT partner
          partner_guid
     FROM but000
     INTO TABLE it_vend_det
     WHERE partner IN s_vend.
   if it_vend_det is not initial.  " use the if condition when your using the For all entries
     SELECT partner_guid
         purchase_org
       FROM bbpm_but_frg0061
       INTO TABLE it_vend_org
       FOR ALL ENTRIES IN it_vend_det
       WHERE partner_guid = it_vend_det-partner_guid.
   endif.
 
 
   loop at it_ven_det into WA_ven_det.
     wa_final-partner = WA_ven_det-partner.
     wa_final-partner_guid = WA_ven_det-partner_guid.

     read table it_vend_org into wa_ven_org with key partner_guid = WA_ven_det-partner_guid.
     if sy-subrc eq 0.
       wa_final-purchase_org = wa_ven_org-purchase_org.
     endif.
 
     append wa_final to it_final.
     clear : wa_final.
   Endloop.

,

Read only

Former Member
0 Likes
1,887

Hello pavan,

Thanks for your reply. when i debugged the report it is giving correct data, but i want to display the output can you please help me with the coding.

Thanks in advance,

Sarnava

Read only

Former Member
0 Likes
1,887

Hello Pavan,

Thanks for your help. I got my desired output

regards,

Sarnava.

Read only

0 Likes
1,887

Which way you want to display the data is it a  classical report or by using ALV's