본문 바로가기

ABAP 프로그래밍 개념/ABAP Structue and Internal Table

(7)
5.2.5 Control Break Statements 루프에서 데이터를 처리하는 동안, 제어 브레이크 구문을 통해 특별한 제어 수준 처리(special control-level processing)를 수행할 수 있습니다. LOOP라는 Statement Block(구문 블록 : LOOP~ENDLOOP)은 Control Structure를 포함할 수 있는데 Control Strcture은 Control Strcture이 변화할 때 Control Break 구문의 실행을 발생시킬 (트리거 시킬)수 있습니다. 예를 들어 루프에서 첫 번째 레코드가 처리될 때, Control Strcture의 필드 값이 변경될 때 또는 루프의 마지막 레코드가 처리될 때 Control Break 구문이 트리거됩니다. Control Break 구문은 AT로 시작하여 ENDAT으로 닫힙니..
5.1.5 Use Cases Structure은 다음 경우에 사용해야 합니다. 1) 구조체를 사용하여 여러 필드의 데이터를 처리가 가능할 때 사용합니다. 예를 들어, 레코드를 처리하려는 경우, 해당 레코드의 필드를 구성 요소로 하는 Structure를 정의하고 레코드를 단일 엔티티로 처리할 수 있습니다. 2) 관련된 필드를 Structure로 그룹화하면 해당 필드들을 함께 처리해야하는 경우 사용할 수 있습니다. Structure의 각 필드의 데이터를 개별적으로 지우는 대신 한 번에 Structure의 모든 필드 데이터를 쉽게 지울 수 있습니다. 예를 들어 ABAP 데이터 사전 테이블 SFLIGHT의 모든 구성 요소를 갖는 S_SFLIGHT Structure가 있는 경우, 개별 필드에 대해 CLEAR 문을 사용하는 대신 CLEAR S..
5.1.4 Working with Structures 앞서서 로컬 및 글로벌 Structure를 정의하는 방법을 알았으니 ABAP 프로그램에서 이들을 사용하는 방법을 살펴보겠습니다. 프로그램에서 Structure Data Object를 정의하는 방법은 네 가지가 있습니다. 1) 프로그램 내에서 TYPES 키워드를 사용하여 정의된 Local Structure Type을 참조하여 정의 2) Global Structure Type를 언급(SE11에서 정의된) 3) ABAP Data Dictionary의 Table을 언급 4) Data 키워드를 사용하여 BEGIN OF ~ END OF 문법을 사용하여 다이렉트로 Data Object를 선언 Structure는 자신의 구성요소(Component)에 접근하는 방법을 제외하고는 단일 필드와 유사하게 동작합니다. Stru..
5.1.3 Global Structures Structure Type은 모든 프로그램 전체에서 가시성을 갖도록 전역으로 정의될 수 있습니다. Global Structure Type은 또한 함수 모듈 또는 메소드의 매개변수 인터페이스를 정의하는 데 사용되며, 일반 스크린의 화면 요소를 정의하는 데도 사용됩니다. Global Structure Type은 ABAP Data Dictionary(SE11)에서 생성되고 ,아래 순서에 따라 만들어질 수 있습니다. 1. SE11 Transaction Code를 실행 2. Data Type 라디오 버튼을 선택하고, Structure의 이름을 명시합니다. Structure의 이름은 반드시 Cusomer Namespace 안에 있어야하며 ,Y & Z로 시작합니다. 맞게 적었다면 Create 버튼을 클릭합니다. 3...
5.1.2 Local Structures ABAP 프로그램에서 구조체를 정의하는 다양한 방법을 이해하기 위해 테이블 SFLIGHT의 예를 살펴보겠습니다. 구조체를 정의하는 방법을 이해한 후에는 구조체를 사용하여 데이터베이스 테이블에서 데이터를 처리할 수 있습니다. *TYPES 키워드 뒤에는 Chain Operator인 콜론(:)이 와야합니다. TYPES : BEGIN OF ty_sflight, CARRID TYPE S_CARR_ID, CONNID TYPE S_CONN_ID, FLDATE TYPE S_DATE, END OF ty_sflight. TYPES 키워드로 Data Type을 만들었으므로, 이를 이용해서 Data Object를 정의 가능 DATA st_sflight TYPE ty_sflight. *동일한 Structure Type은 Ele..
5.1.1 When to Define Structures 우리는 Structure를 데이터베이스 테이블 또는 순차 파일에 행과 열에 저장된 데이터와 같은 연속적인 데이터를 처리하는 데 사용합니다. Data Object를 사용하면 ABAP 프로그램에서 외부 소스(예: 데이터베이스 테이블 또는 순차 파일)에서 데이터를 가져올 수 있습니다. 이 작업은 ABAP 문에서 동일한 데이터에 액세스하기 전에(처리되기전에) 수행되어야 합니다(그림 5.3 참조). 따라서 ABAP 프로그램에서 처리할 데이터에 따라 단일 변수 또는 다중 필드가 있는 구조체가 필요한지 여부가 결정됩니다. 행에서 한개 이상의 필드나 완전한 행을 처리해야한다면 프로그램에서 Structure를 선언해야합니다. 만약 개별필드 혹은 행에서 하나의 필드만 다룬다면, Single Field를 선언하는 것이 좋습..
Structures and Internal Tables Overview 이전 장에서는 하나의 개별 필드를 선언하고 처리하는 방법에 대해 설명했습니다. 그러나 대부분의 경우, 우리는 연관된 필드들의 그룹에서 데이터를 작업할 것입니다. 예를 들어, 고객 데이터를 저장할 때, 모든 정보를 하나의 필드에 저장하지 않고, 고객의 이름을 저장할 하나의 필드, 주소를 저장할 다른 필드, 전화번호를 저장할 다른 필드 등을 만들어 고객에 대한 모든 다양한 정보를 저장합니다. 이번 장에서는 배열(array) 형식으로 데이터를 작업하는 데 사용되는 데이터 유형 및 데이터 객체에 대해 설명할 것입니다. ABAP 프로그램에서 데이터베이스 테이블의 데이터를 처리하려면, 데이터베이스처럼 열과 행을 가지고 데이터를 유사한 방식으로 저장할 수 있는 데이터 객체가 필요합니다. 이러한 데이터 유형과 개별 필..