이번 포스팅은 SAP 유지보수뷰 New 입력 유효성 체크 방법에 대해서 알아보도록 하겠습니다.
유지보수뷰를 통해 신규로 입력되는 데이터가 입력이 가능한 정상적인 데이터인지 체크하고자 할 때에는 Maintenance View Event 를 활용하여 처리할 수 있습니다.
이벤트 관련 내용은 아래의 포스팅에서 확인할 수 있습니다.
유지보수뷰 이벤트 05를 활용한 신규 데이터 유효성 체크
신규 입력(New Entry) 시점에서 입력 필드값에 대한 Validation은 유지보수 뷰 Event 05를 통해 처리할 수 있습니다.
예를 들면, Key 값으로 입력 받는 손익센터를, 400000대 손익센터만으로 한정하고자 하는 Validation을 추가하고자 할 때 사용할 수 있습니다.
New Entry 신규 입력시 Validation 처리
Table maintenece Generator에서 Modification-Events를 선택합니다.
05 Create a new Entry : Before saving the data in the database
Event를 태울 form문을 기술합니다. 저장 후, Editor 컬럼을 더블 클릭합니다.
이 Event는 저장 시점 뿐만 아니라, 엔터 등의 PAI가 발생하면 Event가 함게 처리됩니다. 현재 입력 중인 Line Item 내역이, 뷰 이름과 동일한 스트럭쳐를 통해 Maintenance View의 전역 변수(ZTMP0010V)에 담겨 전달됩니다.
따라서 입력값에 대한 체크를 처리하기 위해서는, 뷰와 동일한 이름의 전역 변수(ZTMP0010V)에 접근하여 Validation하고자 하는 값을 체크할 수 있습니다.
예를 들어 4번대 손익센터만 받고자 한다면 다음과 같이 간단히 기술할 수 있습니다.
FORM CHECK_PRCTR.
IF NOT ZTMP0010V-PRCTR BETWEEN '0000400000' AND '0000499999'.
MESSAGE E000 WITH '4XXXXX대만 가능함'.
ENDIF.
ENDFORM. "CHECK_PRCTR
추가 고려 사항 – 신규 외에 /변경/은
한가지 더 생각해야 할 사항은, 신규 입력 시점에서는 이 로직으로 체크할 수 있으나, ‘변경’ 프로세스에서는 이 로직을 타지 않습니다.
따라서 ‘변경’ 시점의 Validation 역시 비슷한 방법으로 추가해 주어야 합니다.
즉, 일반적으로 입력값에 대한 Validation은 다음 두 Event를 동시에 구현합니다.
- 01 : Before saving the data in the database
- 05 : Creating a new entry
SAP 에서 제공하는 유지보수뷰 추가 Event는 SAP 공식 문서 Maintenance View Event 를 확인해 보시기 바랍니다.
함께 보면 좋은 글
유지보수뷰에 대한 다양한 정보는 아래의 포스팅에서 확인할 수 있습니다.
SAP 유지보수 뷰 엑셀로 다운로드 받는 방법
SAP 유지보수뷰 텍스트 필드 추가(+예제 설명)
SAP ABAP 유지보수뷰 티코드 연결 방법