단순화하는 방법에 대한 아래의 코드에 대한 아이디어가 필요합니다. 아래의 코드는 훌륭하게 작동하지만 코드를 동적으로 만드는 코드를 향상 시키거나 단축 할 수있는 방법이 있습니까?동적 구조에 값 할당
TYPES: BEGIN OF lty_dates,
yesterday TYPE string,
today TYPE string,
tomorrow TYPE string,
END OF lty_dates.
DATA: it_table TYPE TABLE OF lty_dates.
DO 3 TIMES.
CASE lv_count.
WHEN 1.
it_table[ 1 ]-zyesterday = 'Result Yesterday'.
it_table[ 2 ]-zyesterday = 'Result Yesterday'.
it_table[ 3 ]-zyesterday = 'Result Yesterday'.
WHEN 2.
it_table[ 1 ]-ztoday = 'Result Today'.
it_table[ 2 ]-ztoday = 'Result today'.
it_table[ 3 ]-ztoday = 'Result Today'.
WHEN 3.
it_table[ 1 ]-ztommorrow = 'Result Tomorrow'.
it_table[ 2 ]-ztommorrow = 'Result Tomorrow'.
it_table[ 3 ]-ztommorrow = 'Result Tomorrow'.
ENDCASE.
lv_count = lv_count + 1.
ENDDO.
제 아이디어는 아래의 의사 코드와 같습니다. it_table의 필드가 100 개 (필드)에 도달하면 CASE를 여러 번 특수 수행하는 것을 원하지 않습니다.
DO 3 TIMES.
ASSIGN 'ZTODAY' TO <dynamic_fieldname>.
it_table[ 1 ]-<dynamic_fieldname> = <dynamic_result>.
it_table[ 2 ]-<dynamic_fieldname> = <dynamic_result>.
it_table[ 3 ]-<dynamic_fieldname> = <dynamic_result>.
ENDDO.
제발 도와주세요.
정확히 동적으로 만들고 싶습니까? – vwegert
@vwegert 비슷한 매핑 1을 사용하여 row1에 대한 결과 (어제, 오늘, 내일)를 가져옵니다. 또 다른 mapping2는 row2에 대한 결과를 얻고, 다른 mapping3은 row3에 대한 결과를 얻습니다. 그래서 모든 행에 대해 결과를 얻기 위해 서로 다른 매핑을 갖지만 각 매핑은 어제, 오늘 및 내일의 행당 값을 가져 오는 데 적용 가능합니다. 내 생각에, 제공된 코드는 내 디자인을 만족하지 않는 어제 열, 오늘 열 및 내일 열에 대한 유사한 매핑을 가정합니다. ASSIGN COMPONENT 구문에 수행 할 작업이있을 수 있습니다. 나는 그것에 대해서도 놀아야한다. – Czarinaaaaa29