본문 바로가기
SAP/ABAP

[SAP/ABAP] ZSE16N 소스코드, 만드는 방법 - SE16N 수정모드로 조회

by sssinga 2022. 3. 29.

목차

     

     

     

     

     

     

    ZSE16N - 일반 테이블 조회 변형 트랜잭션

     

    테이블 데이터를 조회, 변경, 추가, 삭제 할 때 SE16N을 사용하곤 한다.

    보통 조회만 가능하게 설정되어 있어서, 테스트시 데이터를 가공하려면 번거롭게

    디버깅하고 GD-EDIT, GD-SAPEDIT에 'X' 값 넣는 작업을 해주어야 한다.

    이 작업을 녹여서 만든 트랜잭션이 ZSE16N이다.

    SE16N을 복사해서 생성한 뒤, GD-EDIT, GD-SAPEDIT에 'X' 값 넣는 것을 구현해놔서

    실행하면 바로 수정 가능한 모드로 조회할 수 있게 해주는 트랜잭션이다.

     

    https://sssinga.tistory.com/249

     

    [SAP/ABAP] SE16N 테이블 데이터 수정/삭제 : GD-EDIT, GD-SAPEDIT = 'X'

    SE16N - 일반 테이블 조회 조회는 물론이고 테이블에서 데이터 추가, 수정, 삭제 시 SE16N을 사용하게 된다. 다만 대부분의 경우 조회 기능만이 열려있고, 데이터 추가/수정/삭제 기능은 숨겨져 있다

    sssinga.tistory.com

     

     

     

     

    SE16N 복사해서 ZSE16N 트랜잭션 생성 (SE93)

    SE93 : Maintain Transaction (트랜잭션 유지보수) 으로 들어간 뒤 Copy (Shift + F1) 버튼을 클릭한다.

     

    from transaction에는 복사할 SE16N을 입력해주고,

    Transaction Code에는 생성할 트랜잭션 이름인 ZSE16N을 입력해준다.

     

    Package와 Request No를 선택해준 뒤 확인을 누르면 ZSE16N 트랜잭션 생성이 완료된다.

     

    SE80 - Object Navigator 에 들어가서 Package를 확인해보면

    Transaction 폴더가 생기고 ZSE16N이 들어있는 것을 확인할 수 있다.

     

     

     

     

     

     

    ZSE16N Enhancement Implementation 생성

    SE37 - Function Builder 로 들어가서 SE16N_INTERFACE로 들어간 뒤 수정모드로 변경한다. 원어가 DE인 관계로 유지보수시 원어로 할지, 로그온한 EN으로 할지 선택하라는 창이 뜨는데 어떤 걸 선택해도 무관할 듯 하다. 나는 원어 유지보수를 선택하였다.

    Function 시작 부분에서 우클릭한 뒤 Enhancement Operations > Show Implict Enhancement Options를 클릭한다.

    그러면 아래 사진처럼 2번째 줄에 " $"$\SE:(1) Function Module SE16N_INTERFACE, Start" 라는 주석이 생긴다.

     

    상단에 Enhance (Shift + F4) 버튼을 클릭한다.

    회색 화살표 가르키는 줄에 커서를 두고 우클릭 한 뒤, Enhancement Operation > Create Implementation 클릭

     

    Declaration 클릭 후 Enhancement Implementation 이름과 내역을 적어준 뒤 확인 버튼을 누르고

    Package와 Request No를 assign 해주면 아래와 같이 코드를 입력할 수 있도록 ENHANCEMENT가 열려있다 (?)

     

    생성한 ENHANCEMENT ZSE16N_EDIT_MODE에 수정 가능한 상태로 테이블을 조회할 수 있도록 코드를 적어준 뒤 활성화한다.

    IF SY-TCODE = 'ZSE16N'.
       I_EDIT = 'X'.
       I_SAPEDIT = 'X'.
    ENDIF.

    노랭이는 스윽 읽어보고 넘어간다.

     

    Package에서 Enhancement Implementation이 생성된 것을 확인할 수 있다.

    T-CODE SE19 - BAdI Builder 에서도 확인할 수 있다.

     

     

     

     

     

    ZSE16N 확인

    ZSE16N에 들어가 테이블을 조회하면 위 캡처와 같이 수정 가능한 상태로 조회되는 것을 확인할 수 있다.

    그리고 뒤로(F3) 나가서 다시 Selection Screen으로 돌아오면 Maintain entries에 체크되어 있는 것을 확인할 수 있다.

     

     

    댓글