My opinion!
- Inner join on MARA,MVKE and MARC
- get the texts by using for all entries and withe key fields (it_tvmkt, it_maktx)
* if you use the filed symbols not required to write the modify statement
LOOP AT dt_materialsassigning <ds_materials>.
* read the table it_makt
if sy-subrc = 0.
<ds_materials>-maktx = wa_makt-maktx.
endif.
same way for tvmvkt.
end loop.