CS Student’s SAP&Tech Journey✨
[SAP] Input Checks 데이터 유효성 검증 (1) 기본 개념 본문
데이터 유효성 검증은 시스템의 신뢰성과 일관성을 유지하기 위해 반드시 수행해야 하는 과정입니다. SAP 시스템에서는 다양한 방법을 통해 사용자가 입력한 데이터가 올바른지 확인할 수 있습니다. 본 글에서는 로직을 이용한 검증 방법과 ABAP Dictionary를 활용한 검증 방법에 대해 알아보겠습니다.
📌 Input Check 란?
사용자가 입력한 데이터가 유효한지 검증하는 것은 데이터의 신뢰성과 일관성을 유지하는 데 필수적입니다. SAP 시스템에서는 다양한 방식으로 Input Check를 수행할 수 있으며, 그중에서도 로직을 이용한 검증과 ABAP Dictionary를 활용한 검증이 대표적입니다.
1. 로직을 이용한 데이터 검증
가장 기본적인 방법으로, 직접 조건문을 사용하여 사용자의 입력값이 올바른지 확인할 수 있습니다.
사용자가 'M' 또는 'F' 이외의 값을 입력하면 오류 메시지를 출력하는 코드입니다.
IF p_gender <> 'M' AND p_gender <> 'F'.
WRITE: '오류: 올바른 성별 값을 입력하세요.'.
ENDIF.
이 방법은 단순하지만, 하드코딩이 많아 유지보수가 어렵다는 단점이 있습니다. 더 나은 방법은 ABAP Dictionary를 활용하는 것입니다.
2. ABAP Dictionary를 활용한 데이터 검증
ABAP Dictionary에서 제공하는 Fixed Values와 Foreign Keys를 활용하면 데이터 유효성을 보다 체계적으로 검증할 수 있습니다.
1) Fixed Values (고정 값 검증)
도메인(Domain)에서 특정 값을 허용하도록 설정하여, 허용된 값 이외의 값이 입력되지 않도록 강제할 수 있습니다.
예제: ZGENDER_07 도메인에 다음과 같은 고정 값을 설정합니다.
- 'M' → 남성
- 'F' → 여성
이제 이 도메인을 사용하는 필드는 자동으로 값 검증이 적용됩니다.
PARAMETERS p_gender TYPE ZGENDER_07 VALUE CHECK.
WRITE: / p_gender.
✅ VALUE CHECK 옵션을 사용하면, ABAP Dictionary에 정의된 Fixed Values를 자동으로 체크합니다.
2) Foreign Keys (외래키를 활용한 검증)
Foreign Key를 활용하면 다른 테이블의 값을 참조하여 유효한 데이터만 입력되도록 설정할 수 있습니다.
예제: 학생 테이블과 전공 테이블
- 학생 테이블 (ZSTUDENT_07): 학번, 이름, 전공 필드 포함
- 전공 테이블 (ZMAJOR_07): 전공 코드, 전공명 포함
✔ Foreign Key 설정 과정
- ZSTUDENT_07의 MAJOR 필드를 ZMAJOR_07의 MAJOR_CODE 필드와 연결합니다.
- ZSTUDENT_07에서 MAJOR 값 입력 시, ZMAJOR_07에 존재하는 값만 입력 가능합니다.
이렇게 하면 MAJOR 필드에 없는 전공 코드를 입력하면 자동으로 오류가 발생합니다.
외래키를 활용한 검증 보러가기⬇️
[SAP] Input Checks 데이터 유효성 검증 (2) Foreign Keys 외래키
데이터베이스에서는 테이블 간 관계를 설정하여 데이터의 일관성을 유지하는 것이 중요합니다. SAP의 ABAP Dictionary에서는 Foreign Key(외래키) 를 활용하여 특정 필드가 다른 테이블의 유효한 값을
informatik.tistory.com
3. REPORT vs SCREEN에서 Input Check 차이
SAP 프로그램에서 Input Check가 동작하는 방식은 프로그램 유형에 따라 다릅니다.
프로그램 유형 | 기본 Input Check 동작 | 수동 체크 필요 여부 |
REPORT | Input Check 기본적으로 적용되지 않습니다. | VALUE CHECK 옵션 사용이 필요합니다. |
SCREEN | Input Check가 기본적으로 적용됩니다. | 별도 설정이 필요 없습니다. |
즉, REPORT 프로그램에서는 VALUE CHECK를 명시적으로 추가해야 하고, SCREEN 프로그램에서는 기본적으로 Input Check가 적용됩니다.
'SAP > 데이터 유효성 검사 Input Checks' 카테고리의 다른 글
[SAP] Input Checks 데이터 유효성 검증 (2) Foreign Keys 외래키 (0) | 2025.02.19 |
---|