Анализируя поисковые запросы по которым приходят люди выяснилось, что очень часто ищут как вызвать ФМ динамически. Данный пример взят из официальной документации.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 |
DATA: LINE TYPE C LENGTH 80, text_tab LIKE STANDARD TABLE OF LINE, filename TYPE STRING, filetype TYPE C LENGTH 80, fleng TYPE I. DATA: func TYPE STRING, ptab TYPE abap_func_parmbind_tab, ptab_line TYPE abap_func_parmbind, etab TYPE abap_func_excpbind_tab, etab_line TYPE abap_func_excpbind. func = 'GUI_DOWNLOAD'. filename = 'c:\temptext.txt'. filetype = 'ASC'. ptab_line-NAME = 'FILENAME'. ptab_line-KIND = abap_func_exporting. GET REFERENCE OF filename INTO ptab_line-VALUE. INSERT ptab_line INTO TABLE ptab. ptab_line-NAME = 'FILETYPE'. ptab_line-KIND = abap_func_exporting. GET REFERENCE OF filetype INTO ptab_line-VALUE. INSERT ptab_line INTO TABLE ptab. ptab_line-NAME = 'DATA_TAB'. ptab_line-KIND = abap_func_tables. GET REFERENCE OF text_tab INTO ptab_line-VALUE. INSERT ptab_line INTO TABLE ptab. ptab_line-NAME = 'FILELENGTH'. ptab_line-KIND = abap_func_importing. GET REFERENCE OF fleng INTO ptab_line-VALUE. INSERT ptab_line INTO TABLE ptab. ... etab_line-NAME = 'OTHERS'. etab_line-VALUE = 10. INSERT etab_line INTO TABLE etab. CALL FUNCTION func PARAMETER-TABLE ptab EXCEPTION-TABLE etab. CASE sy-subrc. WHEN 1. ... ... ENDCASE. |
Спасибо, чуток помогло
хочу обратить внимание что понятия
exporting, importing инвертированы