ABAP 테이블에서 LCHR 즉, LONG CHARACTER 타입 필드 선언 방법에 대해서 알아보도록 하겠습니다.
SAP Table에서 255자 이상으로 텍스트를 담기 위해서는 LCHR 타입 등의 LONG CHARACTER 타입을 선언해야 합니다.
LCHR 타입을 사용하기 위해서는
LCHR 타입을 사용하려면 다음과 같은 제약 사항이 있습니다.
하나의 LONG CHARACTER 필드만 선언 가능
한 테이블에는 단 하나의 Long Character 필드만 선언할 수 있으며, 테이블의 가장 마지막 위치에만 선언이 가능합니다.
사이즈 INT 타입 필드 필수
Long Character 필드 앞에는 항상 INT2, INT4 타입의 필드가 있어야 합니다. 여기에는 Long Character의 Character 사이즈가 저장됩니다.
따라서 일반적으로 LCHR 필드 저장시에는 STRLEN을 통해 해당 텍스트 길이를 계산하여 같이 반영을 해줍니다. 즉, 소스 상에서 해당 Long Character의 길이를 계산하여 함께 넣어 주어야 합니다.
WHERE 조건에서 사용 불가
Long Character 필드는 WHERE 절에 조건으로 사용될 수 없습니다.
컴파일은 정상적으로 수행되나, Run time시에 Dump 오류가 발생합니다.
이상으로 LONG CHARACTER 타입 필드를 SAP TABLE에 정의하기 위한 방법을 알아보았습니다.
HCHR 타입의 좀 더 자세한 사항은 아래의 SAP 공식 Data type 문서 중 LCHR 항목을 참고해 보시기 바랍니다.