1 Enhancement란 ?
SAP R/3 Standard가운데 사용자의 용도에 적합하지않거나 부족하여 그에 해당하는 변경이 필요힐때 이를가능하도록 R/3개발자들이 미리 만들어놓은 Functionality.
SAP R/3 standard에서 미리 마련해 놓은 functionaliy를 사용하여 원하는 기능을 덧붙이는 방법으로 각 project 단위로 관리된다.
2 Emhancement의 종류
-. Program exit: ABAP/4 Module Pool
-. Screen exit: GUI interface
-. Menu exit : screen process logic with subscreen
-. field exit : screen field의 data element별로 특별한 사용자 코드를 추가.
사용되는 명령어
CALL CUSTOMER-FUNCTION .... ( in ABAP/4 )
CALL CUSTOMER-SUBSCREEN ... ( in Screen flow logic )
모든 enhancement는 구체적인 작업을 지시하는 Function module과 연결되어 있다. 위의 두 명령어를 사용하여 enhancement를 적용하기 위한 준비가 미리 standard program에 존재하며, 사용자들은 원하는 enhancement를 프로젝트에 포함시킨 후 해당 프로젝트 단위로 활성화를 시키면 된다.
standard program에 수정할 필요없이, 원하는 내용을 담을 customer development 영역의 프로그램을 include하도록 되어있어, 별도의 Repair를 발생시키지않고도 원하는 기능을 추가할 수 있도록 지원한다.
예를 들어, customer-function을 지원하는 경우 standard program의 해당 부분에는 미리 CALL CUSTOMER-FUNCTION 'XXXX' 라는 부분이 코딩되어있다. 이 function의 source code를 살펴보면 ‘ include ZXXXXX ‘ 라고 미리 생성되어있으며, 사용자는 이 include program을 생성하여 거기에 원하는 작업을 지정하도록 한다.
모든 enhancement는 관련된 기능을 위한 여러개의 exit들의 집합체로 관리된다. 즉, menu exit 단독으로는 enhancement의 기능을 처리할 수 없으므로 구체적인 기능을 저장하는 program exit와 묶여 사용되며, screen exit역시 screen 영역과 abap영역인 program exit와 묶여 사용된다.
Exit의 종류
exit의 종류를 r/3에서 미리 지정한 것과 미리 지정하지않아도 사용할 수 있는것으로 나눌 수 있다.
Preplaned or not
Preplaned Not preplaned
program exit Field exit
menu exit table appends
screen exit text enhancement
CI include
enhencement가 적용되는 범위로 나눌 수 있다.
Enhancement type
Program ehnencement Dictionary Enhencement Text enhencement
program exit table appends documentation
menu exit CI include key word
screen exit
field exit
3 Table Enhancement
Table enhancement에는 두 종류가 있다.
● Table Appanding
● CI Include
두 경우 모두 table에 새로운 필드를 추가한다는 기본 개념은 같지만, 추가 방법과 관리방법이 상이하다.
먼저 Table Appanding은 각 테이블 별로 structure를 생성하여 appand하는 방법으로 R/3에서 사용하는 모든 transparent table에 적용 가능하며, 별도의 repair 관리가 필요없다. 즉, upgrade시 table appanding 내용이 보장된다는 뜻이다.
반면, CI include의 경우에는 하나의 structure를 여러 테이블에서 공유한다. 따라서 이 경우에는 R/3에서 미리 지정해 놓은 경우가 아니면 별도의 modification으로 관리한다.
두 경우의 차이점을 요약하면 다음과 같다.
SSCR(SAP Software Change Registration)
● SSCR을 사용하면 이런점이 좋다..
- 에러 수정이 신속하고, 변경된 시스템에 대한 신뢰도를 높일 수 있다.
변경된 오브젝트를 SAP시스템에 등록하면, 이 정보를 기본으로 SAP의 고객서비스센터인력이 신속하게 오류의 원인을 파악하여 우리의 R/3시스템의 효율성을 높이는 작업이 가능하다.
- 작업의 신뢰도
뜻하지않은 수정을 방지하여 R/3의 신뢰도를 향상시킨다.
- 업그레이드 작업의 간소화
표준 프로그램의 수정을 줄임으로써 업그레이드 작업을 간소화 시킬 수 있다.
● 다음의 경우에는 별도의 등록을 하지않아도 된다.
- Matchcode에 새로운 ID 추가
- database indices
- Buffer configuration
- SAP에서 지정한 name range 이외의 오브젝트 생성/변경시, 즉 사용자개발오브젝트
- Customizing과 같이 자동 생성되는 오브젝트들
- user exit를 사용하여 개발하는 오브젝트들