SAP/ABAP

PAI Chain

그녀는애교쟁이 2013. 9. 5. 09:16
모듈풀 프로그램이나 서브 스크린을 사용하는 프로그램의 경우 텍스트 필드의 변경으로 체크로직이나 자동으로 하는 작업 ( 가령 텍스트 코드 입력시 다른칸에 코드에 따른 텍스트 입력 등 ) 을 처리 할 수 있다. ABAP 도 결국 프로그램이기 때문에 Program Life cycle 만 잘 이해 한다면 쉽게 배울 수 있을것 같다.
PROCESS BEFORE OUTPUT.
  MODULE set_init.
  MODULE status_0100.
  MODULE tc100_change_tc_attr.

  LOOP AT gt_vender WITH CONTROL tc100
                      CURSOR tc100-current_line.
  ENDLOOP.

PROCESS AFTER INPUT.
  MODULE exit_rtn AT EXIT-COMMAND.

*    테이블 컨트롤 밖에서 유효성 체크는 루프 밖


  LOOP AT gt_vender. " 테이블 컨트롤 안에서 유효선 체크는 루프 안


***********************************************************************
*아래 3가지 모드의 차이점.
***********************************************************************

*   사용자가 입력한 값이 initial이 아닐경우
    FIELD gt_vender-bukrs MODULE check_bukrs ON REQUEST. " 유효성체크

*    사용자가 뭔가 입력했을 때
     FIELD gt_vender-bukrs MODULE check_bukrs ON INPUT.

*    항상타는 얘
    FIELD gt_vender-bukrs MODULE check_bukrs.


***********************************************************************

*   여러 필드를 묶어서 체크, 묶은 값이 하나라도 변경이 일어나면 탄다.
    CHAIN.
      FIELD : gt_vender-bukrs,
              gt_vender-akont.
       MODULE check_test ON CHAIN-REQUEST.
    ENDCHAIN.
    MODULE tc100_modify.
  ENDLOOP.

  MODULE user_command_0100.

* F4 에서 특정 내역만 참조 할 경우
PROCESS ON VALUE-REQUEST.
  FIELD gt_vender-akont MODULE f4_akont.
  FIELD gt_vender-zterm MODULE f4_zterm.
  FIELD gt_vender-zwels MODULE f4-zwels. 

차후에는 Abap 프로그램의 Life Cycle 을 정리해 봐야겠다. 

 - 끗 -


반응형