SAP 마스터 테이블의 텍스트 테이블 찾는 방법

SAP 마스터 테이블에서 사용되는 코드값에 대한 텍스트가 저장된 테이블 찾는 방법을 정리해 보았습니다.

SAP는 전세계적으로 사용되기 때문에 특정 언어에 종속됨이 없이 모든 국가의 언어를 지원합니다.

다국적 언어를 지원하는 SAP 테이블 텍스트

텍스트(Text) Table이란, SAP에서 사용되는 코드 등의 Description을 세계 각국의 언어로 지원하기 위해 만들어진 Dictionary 이며, 일반적으로 Language Key값을 통해 관리됩니다.

예를 들어, BKPF 테이블의 설명은 EN(영어) KO(한국어) 이냐에 따라 그 설명이 한국어와 영어로 다르게 보이게 되는데, 거기에 속한 엘리먼트의 Text도 언어키에 맞도록 번역되게 됩니다.

SY-LANGU 등 언어키에 맞게 구분하여 적용됨

Text 테이블은 시스템에 접속하는 Language(SY-LANGU)에 따라 Description을 특정하여 보여주기 위해 존재하는 테이블입니다.

일반적으로 마스터 코드 테이블의 해당 텍스트 테이블은 다음의 방법으로 찾을 수 있습니다.

마스터 테이블의 Text 테이블 찾기

모든 마스터 테이블에 대한 텍스트 테이블을 찾는 방법은 동일하므로, 아래의 CSKS 코스트센터 마스터로 예시를 들어보도록 하겠습니다.

SE11로 이동하여 Main Table 예컨대, 코스트센터 마스터 테이블(CSKS)을 입력합니다.

Transp. Table 에 커서를 두고 메뉴에 있는 Goto – Text Table을 클릭하면 CSKS의 TEXT 테이블로 Drill Down 되어 이동하게 됩니다.

메뉴 - Goto - 텍스트 테이블

메뉴 > GoTo > Text Table

텍스트 테이블 정보를 담고 있는 DDIC 테이블

이렇게 메뉴 기능으로 통해 가져 올 수 있다는 이야기는 결국 어딘가에(DDIC 테이블) 해당 정보를 저장해 두고 있으며 그 해당 Dictionary 테이블에서 가져온다는 의미입니다.

마스터 테이블과 관련된 텍스트 테이블의 정보는 아래의 방법으로 찾을 수 있습니다.

Text Table 기능에 대한 ABAP SQL Tracing으로 찾기

메뉴에서 GoTo > Text Table 과정을 ABAP SQL Tracing 으로 추적하게 되면 다음과 같이 DD08L DDIC 테이블에서 찾아 오는 것을 확인할 수 있습니다.

st05 tracing 을 통해 텍스트 테이블 ddic 추적

SELECT WHERE "CHECKTABLE" = 'CSKS' AND FRKART = 'TEXT'….

DD08L 테이블의 CHECK TABLE에서 CSKS 찾기

다음의 조건으로 미루어보건대, CHECK TABLE = ‘CSKS’ AND FRKART = ‘TEXT’의 조건으로 CSKS의 텍스트 테이블인 CSKT를 추출할 수 있습니다.

TABLE : DD08L  

주요 마스터 코드에 대한 텍스트 테이블 조회

그러므로 ABAP 프로그램에서는 다음과 같이 활용할 수 있습니다.

SELECT SINGLE TABNAME
FROM DD08L
WHERE CHECKTABLE = '메인테이블'
AND FRKART = 'TEXT'
AND AS4LOCAL = 'A'.

그 밖에도 아래의 글에서 테이블 정보를 담고 있는 DDIC 관리 테이블 DD0~ 을 확인할 수 있습니다.

SAP 테이블 오브젝트 Dictionary 테이블 (DD03L 등)


이상으로 SAP 마스터 테이블와 관련된 텍스트 테이블에 대한 내용을 정리해 보았습니다. 텍스트 테이블 처리할 때 유용하게 활용해 보시기 바랍니다.