728x90
๋ฐ์ํ
FIELD-SYMBOLS ๋?
`FIELD-SYMBOLS` ๋ ABAP์์ ๋ฉ๋ชจ๋ฆฌ ์์ ํน์ ๋ฐ์ดํฐ๋ฅผ ์ฐธ์กฐํ๊ธฐ ์ํ ํฌ์ธํฐ(Pointer) ๊ฐ๋ ์ ๋๋ค.
์ฆ, `FIELD-SYMBOLS`๋ ์ด๋ค ๋ณ์๋ ์ธํฐ๋ ํ ์ด๋ธ์ ํ, ๊ตฌ์กฐ, ํ๋ ๋ฑ์ ์ง์ ์ ๊ทผํ๊ธฐ ์ํ "๋ณ์นญ(alias)" ์ญํ ์ ํฉ๋๋ค.
SAP์ ๊ณต์ ์ ์์ ๋ฐ๋ฅด๋ฉด:
"Field symbols are placeholders or symbolic names for other fields."
์ ์ฌ์ฉํ๋๊ฐ?
| ๋ชฉ์ | ์ค๋ช |
| ์ฑ๋ฅ ํฅ์ | ๋ฐ์ดํฐ ๋ณต์ฌ ์์ด ์ฐธ์กฐ๋ก ์ ๊ทผํ์ฌ ์๋ ํฅ์ |
| ์๋ณธ ๋ฐ์ดํฐ ์์ | ์ฐธ์กฐ๋ ๋ฐ์ดํฐ๋ฅผ ์ง์ ๋ณ๊ฒฝ ๊ฐ๋ฅ |
| ์ ์ฐํ ํ๋ก๊ทธ๋๋ฐ | ์คํ ์์ (๋ฐํ์)์ ์ด๋ค ํ๋๋ฅผ ์ฐธ์กฐํ ์ง ๊ฒฐ์ ๊ฐ๋ฅ |
| ๋ณต์กํ ๊ตฌ์กฐ ๋ค๋ฃจ๊ธฐ | ๋์ ํ๋๋ช , ๋์ ํ ์ด๋ธ ์ ๊ทผ ๋ฑ์์ ์ ์ฉ |
์ ์ธ ๋ฐฉ์
FIELD-SYMBOLS: <fs> TYPE sflight. " ๊ตฌ์กฐ ์ฐธ์กฐ
FIELD-SYMBOLS: <lv> TYPE any. " ์์ ํ์
์ฐธ์กฐ
FIELD-SYMBOLS: <line> TYPE LINE OF itab. " ์ธํฐ๋ ํ
์ด๋ธ ํ ์ฐธ์กฐ
๊ธฐ๋ณธ ์ฌ์ฉ๋ฒ
1. ๋จ์ผ ๋ณ์ ์ฐธ์กฐ
DATA LV_NAME TYPE STRING VALUE 'Lee'.
FIELD-SYMBOLS: <FS_NAME> TYPE STRING.
ASSIGN LV_NAME TO <FS_NAME>.
<FS_NAME> = 'SAP Developer'.
WRITE: <FS_NAME>.

2. ์ธํฐ๋ ํ ์ด๋ธ ํ ์ฐธ์กฐ
DATA: LT_FLIGHTS TYPE STANDARD TABLE OF SFLIGHT.
FIELD-SYMBOLS: <FS_ROW> TYPE SFLIGHT.
SELECT * INTO TABLE LT_FLIGHTS FROM SFLIGHT.
LOOP AT LT_FLIGHTS ASSIGNING <FS_ROW>.
WRITE: / <FS_ROW>-CARRID.
ENDLOOP.

ASSIGN ๋ฌธ๋ฒ
ASSIGN source TO <fs> [CASTING] [TYPE type] [RANGE CHECKING].
ASSIGN ์ ์ฃผ์์ฌํญ
- ASSIGN ์คํจ ์ `<FS>`๋ `assigned ์ํ`๊ฐ ์๋๋๋ค.
- ์ด๋ฐ ๊ฒฝ์ฐ ๋ฐ๋์ ๋ฐฉ์ด ์ฝ๋๋ฅผ ๋ฃ์ด์ผ ํฉ๋๋ค.
ASSIGN lv_value TO <fs_val>.
IF <fs_val> IS ASSIGNED.
WRITE <fs_val>.
ENDIF.
FIELD-SYMBOLS vs WORK AREA ๋ฐฉ์
`INTO` vs `ASSIGNING`
| ํญ๋ชฉ | `INTO` ์ฌ์ฉ | `ASSIGNING` + `FIELD-SYMBOLS` |
| ๋์ ๋ฐฉ์ | ๋ฐ์ดํฐ ๋ณต์ฌ | ์ฐธ์กฐ (๋ฉ๋ชจ๋ฆฌ ๊ณต์ ) |
| ์ฑ๋ฅ | ์ผ๋ฐ์ | ๋์ฉ๋์ผ์๋ก ์ ๋ฆฌ |
| ์๋ณธ ๋ณ๊ฒฝ | ๋ถ๊ฐ | ๊ฐ๋ฅ |
| ์์ ์ฑ | ๋์ | ๋ฎ์(IS ASSIGNED ์ฒดํฌ ํ์) |
| ์ฌ์ฉ ๋ชฉ์ | ์ฝ๊ธฐ | ์์ ๋๋ ๋์ฉ๋ ์ฒ๋ฆฌ |
ํน์ ํ๋ ๋์ ์ ๊ทผ ์ง์ ์์
`CARRID` ํ๋๊ฐ `LH`์ธ ๊ฐ์ `??`์์ ํ๋ ์ฝ๋์ ๋๋ค.
FIELD-SYMBOLS: <FS_DATA> TYPE SFLIGHT.
DATA: LT_DATA TYPE STANDARD TABLE OF SFLIGHT.
SELECT *
INTO TABLE LT_DATA
FROM SFLIGHT.
WRITE: / '- ์์ ์ : ์ ์ฒด ๋ฐ์ดํฐ ์ถ๋ ฅ - '.
LOOP AT LT_DATA ASSIGNING <FS_DATA>.
WRITE: / <FS_DATA>-CARRID, <FS_DATA>-CONNID .
ENDLOOP.
WRITE: / '- ์์ ์ค - '.
LOOP AT LT_DATA ASSIGNING <FS_DATA>.
IF <FS_DATA>-CARRID = 'LH'.
<FS_DATA>-CARRID = '??'.
* WRITE: / <FS_DATA>-CARRID, <FS_DATA>-CONNID .
ENDIF.
ENDLOOP.
WRITE: / '- ์์ ํ: ์ ์ฒด ๋ฐ์ดํฐ ์ถ๋ ฅ - '.
LOOP AT LT_DATA ASSIGNING <FS_DATA>.
WRITE: / <FS_DATA>-CARRID, <FS_DATA>-CONNID .
ENDLOOP.

728x90
๋ฐ์ํ
'๐งโ๐ผ SAP > ABAP' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
| [SAP ABAP] ๊ตฌ์กฐ์ฒด(Structure) ์์ฑ ๋ฐฉ๋ฒ (0) | 2025.09.04 |
|---|---|
| [SAP ABAP] ๋ ํฌํธ ์ด๋ฒคํธ ์์ (2) | 2025.08.06 |
| [SAP ABAP] ๋ฌธ์์ด ํน์ ์๋ฆฌ ๋ฌธ์ ์ถ์ถ ๋ฐฉ๋ฒ (OFFSET) (0) | 2025.07.21 |
| [SAP ABAP] ALV Toolbar ๋ฒํผ ๋นํ์ฑํ (EXCLUDE) (2) | 2025.07.07 |
| [SAP ABAP] ์๋ธ๋ฃจํด(Subroutine) Using, Changing, Tables ๋? (1) | 2025.06.27 |