Dear Ranjit,
Its not that complicated. Try it this way.
loop at<dyn_table> ASSIGNING<dyn_wa>.
MOVE-CORRESPONDING <dyn_wa> to<dyn_mainwa>.
append<dyn_mainwa> to<dyn_maintable>.
endloop.
loop at<dyn_maintable> ASSIGNING<dyn_mainwa>.
ASSIGNCOMPONENT'MATNR'OFSTRUCTURE<dyn_mainwa> TO<dyn_field>.
READTABLE<dyn_table1> INTO<dyn_wa1> WITHKEY ('MATNR') = <dyn_field>.
MOVE-CORRESPONDING <dyn_wa1> to<dyn_mainwa>.
endloop.
loopat<dyn_maintable> ASSIGNING<dyn_mainwa>.
write :/ <dyn_mainwa>.
endloop.
Note: Ensure <dyn_wa1> is already assigned to work area of second internal table and <dyn_mainwa> is assigned to work are of final main table