У меня есть переменная, которая должна определять, какое поле структуры я использую в дальнейших компиляциях.
Поэтому предположим, что моя переменная называется валютой и может иметь значения «K», «T» и «H». После проверки, какое это значение, я хочу использовать соответствующие поля структуры, например, mystructure-fieldk, mystructure-fieldt, mystructure-fieldi.
На данный момент я просто использую IF..THEN, чтобы проверить значение моей переменной валюты, а затем просто использую соответствующее поле структуры, но поэтому я должен повторить кодирование моего цикла 3 раза, что просто уродливо .
LOOP AT itab ASSIGNING <fs>.
mystructure-fieldk = mystructure-fieldk + <fs>-otherfieldk.
ENDLOOP.
Есть ли способ, которым я могу использовать цикл с динамическим полем? Как в:
ЕСЛИ валюта = «К».
ДАННЫЕ (mydynamicfield) = fieldk.
ENDIF.
а затем используйте mydynamicfield в цикле:
LOOP AT itab ASSIGNING <fs>.
mystructure-mydynamicfield = mystructure-mydynamicfield + <fs>-otherfieldk.
ENDLOOP.
Или что-нибудь еще? Большое спасибо!