SAP 시스템을 운영하면서 어쩔수 없이 데이터베이스에 CBO 테이블(Table)을 만들어 사용하게 됩니다.
테이블이 만들어지면 당연히 테이블 엔트리를 Insert, Update, Delete하는 유지보수 프로그램도 함께 개발해야 합니다.
하지만 마스터(Master) 코드를 관리하는 테이블과 같이 한번 테이블에 엔트리가 생성되고 나면 이후에는 거의 엔트리에 변동이 없는 경우 굳이 유지보수 프로그램을 별도로 개발해야 하는지 고민을 하게 됩니다. 거의 사용될 일이 없는 프로그램을 개발하는 것이 시간 낭비라는 생각이 들기도 합니다.
SAP의 ABAP Dictionary(SE11)에서 재공하는 유틸리티인 테이블유지보수생성기를 활용하면 테이블 유지보수 다이얼로그를 생성하고 테이블 유지보수 뷰(SM30)에서 간단하게 테이블 엔트리를 직접 추가하고, 변경하고, 삭제하는 작업을 처리할 수 있습니다.
이번 글에서는 SAP ABAP Dictionary의 테이블유지보수생성기로 테이블 유지보스 다이얼로그를 생성하는 방법과 테이블 유지보수 다이얼로그를 활용하여 테이블의 데이터를 직접 Insert 하거나 Update 하는 방법에 대해 알아보겠습니다.
ABAP Dictionary의 테이블유지보수생성기로 테이블 유지보수 다이얼로그를 생성하는 방법
– 아래 예제에서는 테이블유지보수생성기를 만들 테이블을 “YMM001T”로 지정해서 작업을 진행해 보겠습니다.
1. 먼저 트랜잭션코드 SE11(ABAP Dictionary)을 실행해서 엽니다.
2. Database table에 테이블유지보수생성기를 만들 테이블을 지정합니다. “YMM001T”로 입력하고 하단의 [Change] 버튼을 클릭해서 변경 모드로 들어갑니다.
3. 테이블 유지보수 다이얼로그를 생성하기 위해 [유틸리티]메뉴에서 [테이블유지보수생성기]를 선택해 줍니다.
4. 아래 화면처럼 권한 그룹, Function 그룹, 유지보수유형, 유지보수 화면 번호를 입력하고 상단의 [생성] 버튼을 클릭하면 테이블 유지보수 다이얼로그가 만들어지게 됩니다.
5. 개요화면과 단일화면의 화면번호는 임의의 중복되지 않는 번호를 입력해 주면 됩니다.
상단 [화면 번호 찾기]를 클릭해서 아래 화면처럼 [화면번호제안]을 선택해서 자동으로 화면 번호를 지정해도 됩니다.
테이블 유지보수 다이얼로그 생성 화면의 주요 화면 필드 설명
※ 참고로 테이블 유지보수 다이얼로그를 생성한다는 것은 테이블 관리 프로그램을 자동으로 만드는 것과 같은 의미입니다.
▶ 권한 그룹(Authorication Group)
- 테이블 엔트리를 유지보수하는 프로그램이 만들어지는 것이므로 권한 그룹을 지정하여 권한 체크를 할 수 있습니다.
- 하지만 테이블 유지보수 다이얼로그는 일반 사용자가 아닌 개발자나 관리자가 사용하는 용도이기에 보통 권한 그룹을 할당하지 않습니다.
- 권한 그룹을 할당하지 않는다는 용도로 &NC& 값을 입력해 줍니다.
- 만약 별도의 권한 그룹이 필요하다면 프로그램에 맞는 권한 그룹을 찾아 지정해 주면 됩니다. 어떤 권한 그룹을 지정해야 될지 판단이 서지않는다면 BC 또는 시스템 관리자에게 문의해 보면 됩니다.
▶ Function 그룹(Function Group)
- 테이블 유지보수 다이얼로그는 Function 프로그램으로 만들어지게 됩니다. 따라서 Function 그룹을 지정해서 해당 Function 그룹에 할당되도록 해 주어야 합니다.
- 일반 모듈의 Function 그룹과 별개의 테이블 유지보수 다이얼로그용 Function 그룹을 만들어 사용하면 관리가 편리합니다.
- 별도 Function 그룹을 만들기 어려울 경우 해당 테이블이 속한 모듈의 Function 그룹을 그대로 사용해도 됩니다.
- 참고로 Function Group에 포함된 수 많은 Function들 중에서 어느 것 하나라도 오류가 있으면 해당 Function Group에 속한 모든 Function을 사용할 수 없게 됩니다. Function 그룹은 잘 판단해서 선택해주어야 합니다.
▶ 유지보수유형(Maintenance Type)
- 테이블 유지보수 뷰의 화면을 한 단계로 처리할지 두 단계로 처리할지 저장해 줄 수 있습니다.
- 한 단계(One Step) : 테이블 유지보수 뷰 리스트 화면에서 신규 엔트리를 추가하거나 기존 엔트리를 변경하고 삭제처리 할 수 있습니다.
- 두 단계(Two Step) : 테이블 유지보수 뷰 리스트 화면과 별도로 두 번째 화면에서 엔트리를 추가하거나 변경, 삭제 처리를 하게 됩니다.
- 일반적으로 한 단계(One Step)를 많이 선택해서 사용하게 됩니다.
SAP ABAP – 테이블 유지보수 뷰 Dialog 활용 방법
– ABAP Dictionary에서 만든 테이블 유지보수 다이얼로그를 사용하기 위해서 트랜잭션코드 SM30(테이블 뷰 유지보수)를 실행해 줍니다.
1. 아래는 트랜잭션코드 SM30(테이블 뷰 유지보수)을 실행한 화면입니다.
2. 테이블의 엔트리 유지보수를 위해 테이블/뷰에 “YMM001T” 테이블을 입력하고 [유지보수] 버튼을 클릭합니다.
3. 만약 위의 화면과 같은 에러(“View/table …. can only by displayed and maintained with restrictions“)가 표시되는 경우 ABAP Dictionary에서 유지보수를 허용해 주어야 합니다.
4. ABAP Dictionary 테이블 유지보수의 [Delivery and Maintenance] 탭에서 [Data Browser/Talbe View Maint.]의 값을 “표준테이블 유지보수툴을 통한 유지보수를 허용했습니다“를 선택하고 [활성화]해 줍니다.
5. 아래 화면은 [유지보수]를 클릭해서 들어온 테이블 유지보수 뷰 Dialog 화면입니다.
6. 기존 엔트리를 변경 또는 삭제하거나 신규 엔트리를 추가할 수 있습니다.
7. 유지보수유형(Maintenance type)이 두 단계(Two Step)인 경우 아래 화면처럼 별도의 화면에서 작업이 이루어지게 됩니다.
8. 만약 아래 화면처럼 유지보수 화면의 유지보수유형을 한 단계(One Step)으로 했다면 테이블 유지보수 뷰 Dialog 조회 화면에서 엔트리 변경, 삭제, 추가를 모두 처리할 수 있습니다.
9. 아래 화면은 유지보수 유형을 한 단계로 했을 때의 화면입니다.
10. 이처럼 간단하게 테이블 유지보수 다이얼로그를 사용하여 테이블에 엔트리를 신규로 추가하거나 기존 엔트리를 변경하고 삭제하는 작업을 쉽게 처리할 수 있게 됩니다.
※ 함께 읽으면 도움이 될 만한 다른 포스팅 글입니다.
이 글이 도움이 되었기를 바랍니다. ^-^