ํ๋ก๊ทธ๋จ์ ๊ฐ๋ฐํ๋ค ๋ณด๋ฉด ๋ค๋ฅธ ํ๋ก๊ทธ๋จ์ ๊ฒฐ๊ณผ ๋ฐ์ดํฐ๋ฅผ ๊ทธ๋๋ก ๊ฐ์ ธ์ค๊ณ ์ถ์ ๊ฒฝ์ฐ๊ฐ ์๋ค.
ํด๋น ํ๋ก๊ทธ๋จ์ด Function์ด๋ Method ๋ก ๋ชจ๋ํ๊ฐ ์ ๋์ด ์๋ค๋ฉด ๊ทธ๋๋ก ๊ฐ์ ธ์ ์ฝ๊ฐ์ ์์ ์ผ๋ก ๋์ผํ ๊ฒฐ๊ณผ๋ฅผ ์ป์ ์ ์์ ๊ฒ์ด๋ค. ํ์ง๋ง ๋ถ์์กฐ์ฐจ ํ๋ ๋ณต์กํ๊ณ ๊ธด ๋ก์ง์ด๋ผ๋ฉด ์ฝ์ง ์์ ๊ฒ์ด๋ค. ABAP MEMORY( EXPORT / IMPORT )๋ฅผ ์ด์ฉํ์ฌ ๋ฐ์ดํฐ๋ฅผ ๊ฐ์ ธ์ค๊ธฐ๋ ํ๋๋ฐ, ๊ธฐ์กด ํ๋ก๊ทธ๋จ์๋ Export ๋ก์ง์ ์ถ๊ฐ ์์ ํด์ผ ํ๋ ๋ฒ๊ฑฐ๋ก์์ด ์๋ค.
๋ง์ฝ ๋ ํฌํธ ๊ฒฐ๊ณผ๋ฌผ์ด ALV ๋ก ๋ณด์ฌ์ง๋ค๋ฉด, CLASS cl_salv_bs_runtime_info ์ SUBMIT์ ์ด์ฉํด ์ฝ๊ฒ ALV์ ๊ฒฐ๊ณผ ๋ฐ์ดํฐ๋ฅผ ์ค๋ ์ท ํด์ฌ ์ ์๋ค.
์ฌ์ฉ๋ฐฉ๋ฒ์ ๋ค์๊ณผ ๊ฐ๋ค.
Step 1. ALV ๊ฒฐ๊ณผ ๋ฐ์ดํฐ์ ๋ฉํ ๋ฐ์ดํฐ ( ALV์ Fieldcatalog๋ Layout ์ ๋ณด ๋ฑ ), Display ์ฌ๋ถ ์ค์
Display ์ฌ๋ถ ( Display Parameter )
ALV ๊ฒฐ๊ณผ ๋ฐ์ดํฐ ๊ฐ์ ธ์ฌ์ง ์ฌ๋ถ ( DATA Parameter ),
ALV ๋ฉํ๋ฐ์ดํฐ ๊ฐ์ ธ์ฌ์ง ์ฌ๋ถ ( METADATA Parameter ),
cl_salv_bs_runtime_info=>set( EXPORTING
display = abap_off
metadata = abap_on
data = abap_on ).
Step 2. ALV ๋ฐ์ดํฐ๋ฅผ ๊ฐ์ ธ์ค๊ณ ์ ํ๋ ๋ ํฌํธ ํ๋ก๊ทธ๋จ ํธ์ถ
SUBMIT report program ~ AND RETURN
Step 3. Step 1์์ metadata๋ฅผ ๊ฐ์ ธ์ค๋ ๊ฒ์ผ๋ก( = 'X' ) ์ค์ ํ๋ค๋ฉด METHOD get_metadata ํธ์ถ
: Return ๊ฐ์ผ๋ก ALV metadata ์ ๋ณด๋ฅผ ๊ฐ์ ธ์ฌ ์ ์๋ค.
DATA(ls_meta) = cl_salv_bs_runtime_info=>get_metadata( ).
Step 4. Step 1์์ ALV output data๋ฅผ ๊ฐ์ ธ์ค๋ ๊ฒ์ผ๋ก( = 'X' ) ์ค์ ํ๋ค๋ฉด METHOD get_data_ref ํธ์ถ
: ํด๋น ๋ฐ์ดํฐ๋ ๋ฐ์ดํฐ ์ฐธ์กฐ ๋ณ์๋ก ๋ฐ๊ธฐ ๋๋ฌธ์ ํ๋ ์ฌ๋ณผ์ ํ ๋นํ์ฌ ๋ฐ์ดํฐ๋ฅผ ํ์ธํ ์ ์๋ค.
cl_salv_bs_runtime_info=>get_data_ref( IMPORTING r_data = DATA(lr_data) ).
ASSIGN lr_data->* TO <fs_itab>.
Step 5. ๊ฐ์ ธ์๋ ALV ๋ฐ์ดํฐ๋ฅผ ํด๋ฆฌ์ด
cl_salv_bs_runtime_info=>clear_all( ).
์ฅ์ ์ ๋ค์๊ณผ ๊ฐ์ด ์ ๋ฆฌํ ์ ์๋ค.
1. ๊ธฐ์กด ๋ ํฌํธ์ ๋ก์ง ๋ถ์ ์์ด ๊ฒฐ๊ณผ ๋ฐ์ดํฐ๋ฅผ ๊ทธ๋๋ก ๊ฐ์ ธ์ฌ ์ ์๋ค.
2. ๋ง์ง๋ง ๊ฒฐ๊ณผ ๋ฐ์ดํฐ๋ฅผ ์ค๋ ์ทํ๋ฏ๋ก ๊ธฐ์กด ๋ ํฌํธ์ ๋ก์ง ๋ณ๊ฒฝ์์ ๋ก์ง ์ด์ํ์ ๋ํ ๋ฆฌ์คํฌ๊ฐ ์๋ค.
3. ๊ธฐ์กด ๋ ํฌํธ์๋ ์์ ์ด ํ์ํ๋ ABAP MEMORY ๋ฐ์ดํฐ ์ธํฐํ์ด์ค ๋ฐฉ์์ ๋จ์ ์ ๋ณด์ํ ์ ์๋ค.
์ฌ์ฉํ๊ธฐ ์ ์ ๋ค์๊ณผ ์ ์ฝ์ฌํญ์ ์ฒดํฌํด ๋ด์ผ ํ๋ค.
1. Background ์ํ์ ๊ธฐ์กด ๋ ํฌํธ๊ฐ CLASS ALV ๊ฒฝ์ฐ์ ์ฌ์ฉํ์ง ๋ชปํ๋ ๊ฒฝ์ฐ๊ฐ ์์.
( CNTL_ERROR dump - Screen Container issue )
2. ๊ธฐ์กด ๋ ํฌํธ๊ฐ ALV ๋ ํฌํธ๊ฐ ์๋ ๋ ํฌํธ์๋ ์ฌ์ฉํ ์ ์์.
'ABAP Implimentation (๐ ๏ธ์ค๋ฌด) > ALV' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
|ALV| Event ๋ฉ์๋ ์์ 2๊ฐ ์ด์์ ALV GRID ์ ์ด ๋ฐฉ๋ฒ ( feat. SENDER ํ๋ผ๋ฏธํฐ ) (0) | 2023.11.08 |
---|---|
|ALV| ์ ํ ํ๋(Remark field) Checkbox ๊ตฌํ ์ ์ฃผ์ (3) | 2023.11.03 |
|ALV| Column Optimize ( After ALV Refresh ) (1) | 2023.11.01 |
|ALV| Event DATA_CHANGED์ DATA_CHANGED_FINISHED ์ฐจ์ด (3) | 2022.08.09 |
|ALV| EDIT ๋ชจ๋ (0) | 2022.07.25 |