ABAP

::Old to New:: Type conversion

soso1.gram 2024. 12. 19. 18:09

πŸ“Œ Type conversion with 7.4 netwever


1. Old version

이미 μ •μ˜λœ λ³€μˆ˜μ˜ 값을 λ‹€λ₯Έ λ³€μˆ˜μ— μ „λ‹¬ν•˜λ©΄μ„œ νƒ€μž…μ„ λ³€ν™˜ν•˜λŠ” κ²½μš°μ— 주둜 μ“°μž…λ‹ˆλ‹€.
Function λ˜λŠ” Class 의 값을 전달 ν•  λ•Œ κ°€μž₯ 많이 μ‚¬μš© ν–ˆλ˜ 것 κ°™μŠ΅λ‹ˆλ‹€.
μ•„λž˜ μ˜ˆμ‹œλŠ” λ‚ μ§œλ₯Ό string νƒ€μž…μ˜ λ³€μˆ˜μ— λ‹΄μ•„μ„œ Xstring으둜 λ³€ν™˜ν•˜λŠ” κ³Όμ •μž…λ‹ˆλ‹€.
μ—¬κΈ°μ„œ 데이터 νƒ€μž…μ€ SY-DATUM(character) → STRING(string)  → XSTRING(xstring) 2번 λ³€ν™˜ λμŠ΅λ‹ˆλ‹€.

DATA:STRING  TYPE STRING
    ,XSTRING TYPE XSTRING.
    
STRING = SY-DATUM.

CALL METHOD CL_ABAP_CODEPAGE=>CONVERT_TO
	EXPORTING
    	SOURCE = STRING
    RECEIVING
    	RESULT = XSTRING.

2. New version

μ‹ λ¬Έλ²•μœΌλ‘œ νƒ€μž… λ³€ν™˜λ„ κ°€λŠ₯ ν•˜κ³ , 클래슀의 returning 값을 λ°›μœΌλ©΄μ„œ 데이터λ₯Ό μ„ μ–Έ ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

DATA(XSTR) = CL_ABAP_CODEPAGE=>CONVERT_TO( SOURCE = CONV STRING( SY-DATUM ) ).

CONV STRING : convλŠ” conversion의 μ•½μž μž…λ‹ˆλ‹€. conv λ‹€μŒμ— λ°μ΄ν„°μ˜ νƒ€μž…μ„ μ •μ˜ν•  수 μžˆμŠ΅λ‹ˆλ‹€. μ•žμ„œ 배운 것과 λ™μΌν•˜κ²Œ '#'을 λ„£κ²Œ 되면 λ³€μˆ˜μ˜ νƒ€μž…μ„ κ·ΈλŒ€λ‘œ μ‚¬μš©ν•˜κ²Œ λ©λ‹ˆλ‹€.
λ§Œμ•½ νƒ€μž…μ„ μ •μ˜ ν•˜μ§€ μ•ŠλŠ”λ‹€λ©΄ μ•„λž˜ 예제처럼 μ‚¬μš©ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

DATA TEXT TYPE STRING. TEXT = CONV #( SY-DATUM ).
DATA(XSTR) = CL_ABAP_CODEPAGE=>CONVERT_TO( SOURCE = CONV #( TEXT ) ).

 

λ°˜μ‘ν˜•