SAP Clean Core Strategy
SAP의 Clean Core 전략으로 인해 고객사와 컨설팅사가 모두 분주해지고 있다.
Clean Core 로 변화하게 되면 SAP가 버전 upgrade를 할때마다 발생하는 TCO 비용이 대폭 절감된다는 게
SAP가 주장하는 핵심 포인트라고 할수 있다.
SAP Clean Core Level Concept
SAP에서는 2025년 8월에 기존의 3 Tier extensibility model을 하기와 같은 Level concept로 변경하였다.
Clean Core에 대한 적용방식 및 범위가 어느 정도 현장의 적용가능성을 고려해서 수정된 것으로 판단한다.
SAP의 가이드는 Level A, Level B는 유지해야 Clean Core로 인정받을 수 있고, Level C는 조건부로 수용하겠다는 뜻이다.
Level D : Standard Mofification, Obsolete BAPI 등 SAP에서 하지 말라고 하는 것들
Level C : 기존의 Classic ABAP으로 만들어진 프로그램 대부분
Level B : Level C, Level C를 CDS View 또는 Released API 로 소스를 변경하면 Level B가 됨
Level A : Level B 를 유지하면서 UI가 Fiori로 전환 (RAP 또는 UI5로 개발)

출처 https://www.sap.com/documents/2024/09/20aece06-d87e-0010-bca6-c68f7e60039b.html
Level C -> Level B 변경
실무적으로 Clean Core 변경 작업의 사례를 찾아 보았다.
Standard Table 및 Standard Field 를 CDS View 로 변경하면 된다.
예시로 SKA1 테이블은 IFIGLACCINCOA 테이블로 변경하고, SKB1은 IFIGLACCINCCODE 로 변경된다.


아래는 프로그램 소스코드의 일부이다.
Classic 테이블 및 필드를 CDS View로 변경하면서 AS (Alias)를 활용하고 기존 테이블은 맨우측에 붙여서 표기하면
식별이 조금 더 편해질 것이라고 생각한다.
--------------------[ Source Code ] --------------------------------------------------------------
FORM data_select .
CLEAR: gv_err.
*..Extract Data
CLEAR: gt_itab, gt_itab[].
* SKA1 -> IFIGLACCINCOA, SKB1 -> IFIGLACCINCCODE
SELECT ska1~chartofaccounts AS ktopl,
ska1~glaccount AS saknr,
ska1~isbalancesheetaccount AS xbilk,
ska1~glaccountgroup AS ktoks,
ska1~corporategroupaccount AS bilkt,
ska1~profitlossaccounttype AS gvtyp,
ska1~sampleglaccount AS mustr,
ska1~accountismarkedfordeletion AS xloev,
ska1~accountisblockedforcreation AS xspea,
ska1~accountisblockedforposting AS xspeb,
[ 중략 ]
skb1~companycode AS bukrs,
skb1~fieldstatusgroup AS fstag,
skb1~reconciliationaccounttype AS mitkz,
skb1~glaccountcurrency AS waers,
skb1~balancehaslocalcurrency AS xsalh,
skb1~taxcategory AS mwskz,
skb1~taxcodeisrequired AS xmwno,
skb1~acctgdocitmdisplaysequencerule AS zuawa,
skb1~isautomaticallyposted AS xintb,
skb1~reconciliationacctischangeable AS xmitk,
FROM ifiglaccincoa AS ska1
LEFT JOIN ifiglaccinccode AS skb1
ON ska1~glaccount EQ skb1~glaccount
WHERE ska1~chartofaccounts EQ @p_ktopl
AND ska1~glaccount IN @s_saknr
AND ska1~glaccount IN @s_saknr2
AND skb1~companycode EQ @p_bukrs
INTO CORRESPONDING FIELDS OF TABLE @gt_itab.
ENDFORM. " DATA_SELECT
--------------------------------------------------------------------------------------------------------------------
이 정도의 Clean Core 작업은 초반에 테이블 및 필드 Mapping만 잘 해놓으면 Level B로 올리는 건
기계적인 작업도 가능할 것으로 보인다.
이를 RAP 로 작업하면 UI가 Fiori로 바뀌기 때문에 Level A까지 올라갈 수 있다.
RAP는 다음 기회에 배우게 되면 추가로 정리해야 할 듯 하다.
'만능목공풀 > SAP Project' 카테고리의 다른 글
| [TIP] CTS 번호 Unlock 하는 방법 (0) | 2026.01.17 |
|---|---|
| Company Code 를 Possible Entry 에서 사라지도록 하자 (0) | 2026.01.15 |
| BADI ACC_DOCUMENT 활성화 (0) | 2026.01.14 |
| Business Partner 계좌번호 수정 못하도록 권한 관리 방안 (0) | 2025.03.15 |
| [Tip] Posting Period 정보 관리하는 Table "T001B" (0) | 2025.01.28 |