본문 바로가기

ABAP 프로그래밍 개념/Modulazation Technique

(9)
2-4 추가. Modularization Techniques - Program Structure : Procedure : Subroutine Subroutine은 FORM ~ ENDFORM 사이의 구문에서 유지되며, PERFROM 구문을 통해 호출됩니다. FORM subroutine. ... ENDFORM. USING과 CHAINGING이라는 addition을 Subroutine을 위한 Parameter Interface로 정의할 수 있씁니다. Parameter Interfcace는 개발자에게 Subroutine에게 데이터를 전달 할 수 있도록 하고, FORM 문에서 직접 변수를 선언하여 정의됩니다 : 이 변수들은 Formal Parameter라고 불립닌다. Formal Parameter는 PERFORM 문을 통해 유지되는 매개변수(Parameter)를 채우는데 사용됩니다. 이러한 매개변수를 Actual Parameter라고 합니다. Para..
2-5. Modularization Techniques - Program Structure : Inline Declarations SAP NetWeaver 7.4에서, SAP는 Inline Declarations을 도입하였습니다. 인라인 선언(Inline declarations)은 ABAP 문장에서 사용하기 전에 사전에 선언하는 대신 필요할 때 데이터 객체를 인라인으로 선언할 수 있도록 합니다. 대부분의 ABAP 개발자는 프로그램의 시작 부분에(보통 전역 선언 영역) Data Object을 정의하거나 Procedure의 시작점에(보통 지역 선언 영역)에서 데이터를 정의해야 된다고 생각하고, 코드 어디에서나 무작위하게 데이터 선언을 하는 것을 피하고자 합니다. 하지만 많은 개발자들은 데이터 객체가 사용되기 직전에 선언하여 해당 규칙을 무시하는데, 이는 데이터 객체가 사용되는 위치에 대해 더 많은 명확성을 제공하기 때문입니다. 다른 많..
2-4. Modularization Techniques - Program Structure : Procedure Procedure는 특별한 모듈 유닛(Special Modularization Unit)으로 ABAP 구문을 통해 호출되고, 재사용 가능한 소프트웨어 블록을 제공합니다. Procedure는 ABAP 프로그램으로부터 호출되어 실행되는 구문의 집합을 포함하고 있습니다. 위 그림을 보면, ABAP 프로그램은 ABAP 구문을 통해 Procedure을 호출합니다. Procedure이 호출되면, Procedure 안에 있는 코드가 실행됩니다. Procedure는 ABAP 프로그램 안에 정의되고, 프로그램을 활성화하면 독립된 모듈로 남습니다. 이전에 말했다싶이, Procedures는 정의된 해당 프로그램에서 호출될 수 있고, 외부 프로그램에서 호출될 수 있습니다. 예를 들어, 같은 프로그램에서는 Subroutine을..
2-3. Modularization Techniques - Program Structure : Events Event는 넓게는 하기와 같이 분류됩니다. Program Costructor Events Reporting Events Selection Screen Events List Events Screen Events 아래 글을 통해 각 이벤트 들에 대해 설명하겠습니다. Program Costructor Events LOAD-OF-PROGRAM이라는 Event Block은 Program Constructor로서 제공됩니다. Program Constructors는 ABAP Class에서 constructor 메소드와 같이 프로그램 변수들을 초기화하는 것과 같은 목적으로 ABAP Program에서 사용됩니다. LOAD-OF-PROGRAM은 Executable Program, Moudlule Pool, Functio..
2-2. Modularization Techniques - Program Structure : Event Blocks Event Block은 event 키워드를 통해서 프로그램에 도입됩니다. 각 Event들은 구체적인 키워드를 가지고 있는데, Event 키워드를 프로그램에서 사용하여 해당 Event에 대해 반응하도록 만들 수 있습니다. Event가 ABAP 런타임 환경에 의해 발생했을 때(triggered), Event 키워드 아래있는 코드들이 실행됩니다. Event Block은 특정한 명시적인 Keyword를 통해 끝나는 것이 아닌, 다음 Processing Block 이 시작될 때 암시적으로 종료됩니다. 그러므로, Procedure와 달리, Event Block을 명시적으로 끝내기 위하여 어떠한 END 구문도 사용할 필요가 없습니다. Event Block은 프로그램 내부에서만 사용되며, ABAP 문장을 사용하여 프로..
2-1. Modularization Techniques - Program Structure : Processing Blocks 일반적으로, Processing Block은 넓게 Event Block, Dialog Module, Procedure로 분류됩니다. 이 Processing Block 각각에 알아보도록 합시다. Declaration Area 각 ABAP Program은 전역 선언 영역과 여러 처리 블록으로 구성됩니다. 전역 선언 영역에서 정의된 Objects들은 ABAP Program에서 접근가능(Accessible & Visibile) 합니다. 몇몇의 Processing Block에서. 데이터 선언은 지역적(해당 Processing 안에서만 접근 & 가시성)입니다. *프로그램의 전역선언 DATA : f1 TYPE c VALUE 'A', f2 TYPE c VALUE 'B'. END-OF-SELECTION. PERFORM ..
2. Modularization Techniques - Program Structure Program Structure ABAP은 Database로 부터의 데이터를 처리하는 어플리케이션의 개발을 위해 고안되었고, 사용자들은 SAP GUI 화면을 통해 어플리케이션을 사용하였습니다. 트랜잭션을 필요로 하는 화면(Screen)에 근거한 전통적인 프로그래밍 방법에서는, Presentation Layer와 Application Layer 사이에서 컨트롤이 앞뒤로 전달됩니다. 예를 들어, 사용자가 선택화면(Selection Screen)에서 값을 입력할 때, 화면은 Presentation Layer에서 활성화되고고, 이 시점에서는 Application Layer에서는 아무런 활동이 없습니다. 유저가 Execute 버튼을 클릭한 이후로, Selection Screen이 아직 화면에 떠있다고 하더라도, ..
1. Modularization Techniques Modularization(이하 모듈화)는 프로그램을 하나의 분할할 수 없는 단위로 처리하는 것이 아니라 프로그램의 코드를 모듈적인 구조로 분해 및 구성하는 것입니다. 모듈화에는 다양한 장점이 있는데, 코드의 중복을 줄이는 데 도움이 될 코드의 가독성과 ABAP 프로그램 유지보수에 도움이 될 프로그램 코드의 조직화에 장점이 있습니다. 이번 카테고리를 통해서, 이벤트(Event)와 프로시져(Procedure)를 통한 ABAP 프로그램 흐름과 런타인 환경 제어 프로그램에 대해 알아볼 것입니다. 더불어서, Processing Block의 개념과 그것의 특징, 정의 방법. 호출 방법, Processing Block이 로컬 데이터를유지할 수 있는지와 Processing Block이 정의될 수 있는 ABAP 프로그..