본문 바로가기

전체 글37

RAP 15 - MANAGED REPORT : FEATURE CONTROL Feature Control 이란?Feature Control 은 BO의 특정필드 또는 Action 버튼, CUD(Create, Edit, Delete)기능에 대해 활성화/비활성화 상태를 동적으로 제어하는 기능입니다. Classic ABAP에서의 PBO에서 하던 Screen Control 기능과 비슷하다고 생각하시면 됩니다. Feature Contorl 은 크게 두가지 방식으로 나눕니다. Static Feature Control (정적제어)데이터의 상태와 상관없이 항상 동일한 규칙을 적용합니다. 로직구현 위치는 Interface Behavior Definition 입니다.예시) field ( readonly ) TravelId;Dynamic Feature Control (동적제어)데이터의 상태(Stat.. 2026. 8. 24.
RAP 14 - MANAGED REPORT : ACTION 목차ACTIONAction은 Business Object의 데이터에 대해 비즈니스 로직을 실행하는 Method 입니다. 일반적인 CRUD 표준작업 외에 특정 상태를 변경하거나 추가적인 연산을 수행할때 사용합니다. Action의 주요 유형으로는 다음과 같습니다. 1. Instance Action : 특정 행을 지정하여 수행하는 Action으로 가장 일반적인 형태의 Action 입니다.2. Static Action : 특정 행 지정없이 BO 전체 레벨에서 실행되는 Action 입니다.3. Factory Action : Action의 실행 결과로 신규 행을 생성하는 Action 입니다. 보통 행 복사 기능에 주로 사용합니다.4. Internal Action : BO 내부에서만 호출하여 사용하는 Action입니.. 2026. 8. 4.
RAP 13 - MANAGED REPORT : VALIDATION 목차 App을 실행해서 Travel 정보를 하나 생성해 보겠습니다. Create 버튼을 누르고 아래와 같이 Agency ID와 Customer ID에 마스터에 존재하지 않는 값을 입력하고 저장하면 어떻게 될까요? 저장이 됩니다. 마스터에 없는 값을 실수로 입력하게 되면 문제가 될 수 있기 때문에 이를 방지해야 합니다. 이때 사용하는 기능이 Validation 입니다. VALIDATION 이란?사용자가 입력하거나 변경한 데이터가 비즈니스 규칙에 맞는지 검증하고, 유효하지 않을 경우 저장/진행을 막고 에러 메세지를 전달하는 기능입니다. Classic ABAP에서 PAI 부분에서 필드의 값을 제어하는 부분과 유사하다고 생각하시면 됩니다. Interface Behavior Definition에 아래와 같.. 2026. 8. 3.
RAP 12 - MANAGED REPORT : EML 목차EML(Entity Manipulation Language)이란?EML은 RAP모델에서 정의된 비즈니스 오브젝트(BO)를 코드로 조작(CRUD)하기 위해 SAP가 새롭게 제공하는 ABAP 전용 문법입니다. Classic ABAP에서는 DB 테이블을 컨트롤할때 SELECT, UPDATE, INSERT, DELETE 구문을 사용하고 표준로직을 처리할때 BAPI, Function, Class Method 등을 사용하여 처리했습니다. 하지만 RAP 아키텍쳐에서는 모든 데이터가 CDS View와 Behavior Definition이라는 비즈니스 오브젝트 단위로 이루어져 있습니다. 이제 개발자가 DB테이블을 직접 UPDATE하거나 별도의 BAPI를 호출할 필요 없이 RAP BO엔진에게 직접 명령을 내리는 전용.. 2026. 7. 26.
RAP 11 - MANAGED REPORT : Early numbering(2) 목차 이번시간에는 Booking 정보를 생성할때 Booking Number도 자동으로 채번해 보겠습니다. Booking Number는 번호범위 오브젝트를 사용하지 않고 현재 Booking Number의 Max값을 찾아서 Max + 10으로 생성하겠습니다.그전에 현재 App은 Value Help기능도 없고 List에 Code만 있고 Description정보가 없어 보기가 불편합니다. 이전 Simple Report에서 했던것처럼 기능들을 추가하여 App의 완성도를 올리고 시작해 보겠습니다. Value HelpAgency ID, Customer ID, Travel Status 필드에 Value Help 기능을 추가해 보겠습니다. 지난 시간에 했던게 기억이 나시는 분들은 블로그를 보지 않고 직접 해보셔도 됩니다.. 2026. 7. 21.
RAP 10 - MANAGED REPORT : Early numbering(1) 목차Early numberingApp을 다시 실행해 보겠습니다. 그리고 Create 버튼을 누르고 저장하지 마시고 뒤로가기 버튼을 누릅니다. 그러면 아래와 같이 Draft 상태인 라인 하나가 추가됩니다. 이 상태에서 다시 Create 버튼을 누르면 어떻게 될까요? 한번 눌러보겠습니다. The key value is already in use. Please enter a different one. 라는 에러가 발생합니다. 최초 Create 버튼을 눌렀을때 Travel ID가 빈값으로 Draft 테이블에 저장이 된 상태에서 다시 Create 버튼을 누르면 Travel ID를 빈값으로 다시 Draft 테이블에 저장을 시도하기 때문에 Key 중복으로 발생하는 오류입니다. App은 여러사람이 사용하기 때문에 이.. 2026. 7. 9.