SAP/ALV

ALV 정형화 1/2

DrkLion 2007. 11. 6. 11:00

어떠한 문서든 책이든 ALV 입문에 보면 표준화를 통해,
불필요한 코딩을 줄여 퍼포먼스 향상을 목표로 삼는다고 되어 있다.

정형화를 통해 미리 '틀'을 마련해 두고 틀에 맞춰 코딩하는것이
추후 유지보수 면에서나, 프로그램 개발 퍼포먼스 측면에서 아주 유리하다.

1. Main Program
- 아래와 같은 항목들로 아주 간단하게 정형화 할 수 있다.

*********************************************************************
* INCLUDE                                                           *
*********************************************************************
* DATA DECLARATION
INCLUDE ZTESTT01
* SUBROUTINE DECLARATION
INCLUDE ZTESTF01
*********************************************************************
* INITIALIZATION                                                    *
*********************************************************************
INITIALIZATION.
  PERFORM *********************************************************************
* AT SELECTION-SCREEN                                               *
*********************************************************************
AT SELECTION-SCREEN.
*********************************************************************
* START-OF-SELECTION                                                *
*********************************************************************
START-OF-SELECTION.
  PERFORM *********************************************************************
* END-OF-SELECTION                                                  *
*********************************************************************
END-OF-SELECTION.
*********************************************************************
* TOP-OF-PAGE                                                       *
*********************************************************************
TOP-OF-PAGE.
*********************************************************************
* END-OF-PAGE                                                       *
*********************************************************************
*********************************************************************
* AT LINE-SELECTION                                                 *
*********************************************************************
AT LINE-SELECTION.
*********************************************************************
* AT USER-COMMAND                                                   *
*********************************************************************
AT USER-COMMAND.
2. DATA DECLARATION

*----------------------------------------------------------------------*
* TABLES
*----------------------------------------------------------------------*
tables :
*----------------------------------------------------------------------*
* INFOTYPES
*----------------------------------------------------------------------*
*----------------------------------------------------------------------*
* CLUSTER DEFINITION
*----------------------------------------------------------------------*
*----------------------------------------------------------------------*
* CONTROLS
*----------------------------------------------------------------------*
*----------------------------------------------------------------------*
* TYPE-GROUPS
*----------------------------------------------------------------------*
*----------------------------------------------------------------------*
* TYPES
*----------------------------------------------------------------------*
*----------------------------------------------------------------------*
* CONSTANTS
*----------------------------------------------------------------------*
* constants :
*----------------------------------------------------------------------*
* DATA: Variable
*----------------------------------------------------------------------*
*ranges : .
data : gv_date like sy-datum.
data :
*----------------------------------------------------------------------*
* DATA: Structure. (Field strings : Working area)
*----------------------------------------------------------------------*
*----------------------------------------------------------------------*
* DATA: Internal Table.
*----------------------------------------------------------------------*
*----------------------------------------------------------------------*
* RANGES
*----------------------------------------------------------------------*
*----------------------------------------------------------------------*
* FIELD-SYMBOLS
*----------------------------------------------------------------------*
*----------------------------------------------------------------------*
*FIELD-GROUPS: HEADER, ...
*----------------------------------------------------------------------*
*----------------------------------------------------------------------*
*SELECT-OPTIONS & PARAMETERS
*----------------------------------------------------------------------*

3. SUBROUTINE DECLARATION
FROM.
..
ENDFORM.
내에 체크로직 및 데이터 컨트롤 추가.


SELECTION-SCREEN 및 데이터 컨트롤 부분이 정형화 되었다면,
ALV 역시 비슷한 방법으로 정형화 할 수 있다.
ALV용 데이터 선언 및 공통 사용 서브루틴문을 INCLUDE 프로그램으로
작성해 복사 또는 직접 INCLUDE 함으로써 재활용이 가능하다.

이 부분에 대해서는 2/2에서 예문을 보자..