Draft란
Draft : 아직 활성 버전에 저장되지 않은 비즈니스 문서의 중간 버전이다.
쉽게 말하면 " 임시 저장 " 이라고 보면 된다.
데이터를 입력하거나 글을 복사하거나 등 무엇을 입력할 때 날아가면 벌써부터 어지러워진다.
SAP RAP에서는 Draft 기능을 추가 함으로써 입력했던 것을 임시 저장 할 수 있게 만들어준다.
# 시작하기 전 리스트와 CRUD까지 다 정의되어 있다 가정 하에 시작하겠다.
# 또한 이번 테이블에서는 Etag master을 사용하고 Draft , 생성/변경 로그 때문에 다음과 같이 Table을 설정하였다.
# 주의
Draft Table을 만들 때 Table Key UUID가 있어야 생성 버튼을 눌렀을 때 오류 메시지가 안 뜬다.
만약 로직으로 사용해서 Number Range을 사용하면 되지만 사용 안 할 시에는 주의해야 한다.
여기서 Draft 기능을 추가하는 것만 보여주겠다.
UUID가 없는 것을 참고하자.
시작해 보자.
# 1. Behavior Definitions에서 Draft 기능을 활성화시켜 보자.
1. Behavior Definitions에서 ZI_CRUD_GJ에 들어가 보자.
# ZI_CARUD_GJ 는 ZI_CRUD_GJ( Root View )에 행동 정의한 Definitions이다.
2. ( with draft; ) 추가해 보자.
3. ( draft table ygj_df_crud ) 추가 한 뒤에 ( Ctrl + 1 ) 누른 뒤에 Draft Table을 만들어주자.
# Draft Table을 만드는 이유는 간단하다. 임시 저장 할 데이터 테이블을 만들어줘야 하기 때문이다.
4. 빠른 보기( Ctrl + 1 ) 통해서 만들었으면 다음과 같이 자동으로 Table을 만들어 준다.
# 만약 기본 Table이 변경되더라도 똑같이 빠른 보기를 만들면 Recreate draft Table ... 자동으로 만들어준다.
5. 밑에 2개를 추가해 주자.
- etag master : 간단하게 말하자면 테이블 Lock이라고 생각하면 된다. 내가 테이블을 변경하고 있을 때 다른 사용자가 데이터를 변경하지 못 하도락 하는 문구라고 보면 된다.
- lock master total etag : Draft 기능을 추가하려면 넣어주어야 하는 문구이다
6. 다음은 빨간 상자 안에 있는 로직을 써줘야 한다. 로직을 쓰지 않을 경우 다음과 같은 오류가 뜬다.
draft action Edit;
draft action Activate;
draft action Discard;
draft action Resume;
draft determine action Prepare;
Draft Action Edit : Presistent Table에서 Draft Table로 COPY하는 기능
Draft Action Activate : Draft Table의 데이터를 Presistent Table에 복사 한 후 Draft Table을 Clear 해주는 기능
Draft Action Discard : Draft Table의 모든 필드를 Clear 해주는 기능
Draft Action Resume : Presistent Table의 instance을 잠금 설정 해주는 기능
Draft Determine Action Prepare : 유효성 검사 및 어떤 조건에 따라서 실행되는 기능
# 2. Behavior Definitions에서 Draft 기능을 활성화시켜 보자.
1. Behavior Definitions에서 ZC_CRUD_GJ에 들어가 보자.
2. ( use draft; ) and ( use action ...; ) 을 넣어주자. Draft 기능을 사용한다는 것을 명시해 주자.
use draft;
use action Edit;
use action Activate;
use action Discard;
use action Resume;
use action Prepare;
# 3. 예시
1. 실행을 시켜서 Create( 생성 ) 버튼을 눌러서 값을 넣어보자.
# 다음과 같이 Draft 기능이 추가된 것을 볼 수 있다.
2. 버튼을 누른 상태에서 Draft Table을 확인해 보면 다음과 같이 값이 들어가 있는 걸 볼 수 있다.
3. 리스트를 확인해 보자.
# 파란색 있는 라인 = Draft 기능
밑에 사진처럼 Draft 글씨가 보이게 하고 싶다면 Header Info를 설정해 주면 된다.
끝.
'.BTP > ..Cloud ABAP(RAP)' 카테고리의 다른 글
SAP RAP 아이콘( Icon ) 설정 하는 방법 (11) | 2023.06.20 |
---|---|
SAP RAP Dropdown List 설정하기 ( Value Help ) (12) | 2023.06.20 |
SAP RAP Field( 필드 ) 추가 기능 (0) | 2023.06.13 |
SAP RAP Domain Fixed Value(도메인 값) 가져오기 (2) | 2023.06.12 |
SAP RAP Value Help( Search Help ) 정리 #2 (0) | 2023.06.08 |