abap 7

|ABAP 개념정리| AT NEW, AT LAST, AT FIRST, AT END OF

이번에 설명할 AT ~ ENDAT 구문은 LOOP AT 구문 내에 사용 가능하며,인터널 테이블의 시작과 마지막 행, 특정 필드 기준으로 데이터 변경의 시작과 마지막 행을 Catch 하여 원하는 로직을 넣을 수 있다.  실무에서는 주로 이런 경우 많이 사용된다. 특정 필드 기준으로 중간 합계 또는 총합계 산출 시특정 필드 기준으로 Summary 인터널 테이블 재구성시엑셀 업로드 시 Row와 Col으로 구성된 엑셀 데이터를 특정 인터널 테이블로 이관 시  LOOP AT 구문 내에 사용되는 AT ~ ENDAT 구문은 다음과 같이 4가지가 존재하며,해당 AT구문에 맞는 인터널 테이블의 행이 Catch 되면, 그 안의 작성한 로직이 수행이 되는 구조다.    AT FIRST.  ~  ENDAT.인터널테이블의 첫번..

| ALV | GET_SELECTED_ROWS 선택 라인 추출 (Feat. (Sub)Total 라인)

Method "GET_SELECTED_ROW"는 ALV를 제어함에 있어 많이 사용되는 Method 중 하나로, ALV Report에서 ALV Standard 선택 박스를 선택 후 선택된 라인의 위치 정보(인터널 테이블 Index)를 가져오기 위해 사용된다. 가볍게 사용되는 Method지만, 정확히 모르고 썼다가는 에러가 날 수도 있으니 한번 알아보도록 하자. 일반적으로 다음과 같이 호출하여 사용한다. Method "GET_SELECTED_ROW"의 Importing Parameter 반환 값을 보면 "LT_ROW_NO"는 Field "ROW_ID"에, "LT_INDEX_ROWS"는 Field "INDEX"에 선택된 라인의 정보( 인터널 테이블 Index )가 들어가 있는 것을 확인할 수 있다. 그런 다음..

|ABAP Overview| Enhancement Overview #2

Enhancement Overview #1에서는 Enhancement 방법 중 통상적으로 많이 사용되는 Customer Exit 과 Badi 에 대해 알아보았다. 2020/08/17 - [분류 전체보기] - Enhancement Overview #1 오늘은 그 외의 Enhancement 방법에 대해 Overview해 보겠다. Souce Code Enhancement Exit 과 Badi 처럼 표준에서 펑션이나 Class로 확장 공간을 미리 만들어 놓고 그 안에 소스를 반영하는 것이 아니라 Source Code 레벨에서 정해진 규칙 하에 모든 로직에 Enhancement 가 가능하다. 반변 소스 코드 외에 영역. 표준 Screen이나 Gui-status 등의 확장은 불가능하다. Source Code Enh..

|ABAP 개념정리| TYPE과 LIKE의 차이

ABAP Program에서 Data Object 선언시 일반적으로 TYPE 또는 LIKE를 많이 사용한다. ABAP을 오랫동안 접하면 크게 어려운 부분은 아니지만 ABAP을 배우는 단계라면 많이들 헷갈려 하는 부분이다. 개념만 잘 잡고 있으면 절대 어려운 게 아니니 한번 정리 해보도록 하겠다. 결론부터 말하자면, TYPE과 LIKE의 차이는 Data Object 선언시 TYPE 또는 LIKE 뒤에 Data Object와 Data Type 중 어느 것을 reference 하는지 차이 라고 볼 수 있다. 앞에서 Data Object와 Data Type에 대해 포스팅하였으니 이 2가지의 기본 개념을 를 정확히 이해하고 있어야 한다. 2020/07/21 - [ABAP Basic/개념 정리] - Data Obje..

|ABAP 개념정리| Data Object

ABAP 프로그램의 가장 기초가 되는 Data Object 개념에 대해 알아보도록 하겠다.  프로그램에서는 숫자, 문자 등의 형태로 이루어진 데이터를 제어하기 위해서는메모리라는 컴퓨터 내부적인 작업공간에 할당하여 사용하게 된다. 이 때 메모리 공간 내에서 데이터를 담기 위한 하나의 객체 ( 비유하면 그릇과 같은 존재 )를 Data Object라 한다.   Data Object에 담긴 데이터들은 프로그램 시작시 메모리에 할당되어 존재하게 되며,종료시에는 메모리에서 소멸되는 휘발성을 가진다. 만약 데이터를 저장해야 할 경우라면 '데이터베이스(DB)' 라는 별도 저장공간에 저장하게 된다.ABAP 프로그램에서 일반적으로 가장 많이 사용되는 Data Object의 형태는 다음과 같다. 필드( Field ) - 단..

|ABAP 개념정리| Module Pool vs Executable Program

ABAP 에서는 여러 Program Type이 존재하지만 그 중 가장 많이 사용하는 Program Type 으로는Module Pool Program ( Type M )과  Executable Program ( Type 1 ) 2가지가 있다. 2가지 프로그램 Type에 대해 비교해 보도록 하자.Module Pool Program생성/수정/삭제/조회 의 목적으로 사용Transaction Code 생성 후 실행가능 프로그램 실행시 T-Code 에 입력된 시작 스크린을 호출타 프로그램에서 호출 시 Call Transaction 구문으로 호출 가능모든 스크린은 스크린 페인터를 통해 구현프로그램 Flow 는 T-Code 에 입력된 첫 스크린을 시작으로 다수의 스크린들이 순차적으로 호출되며 진행'PROGRAM + 프..

|ABAP Overview| SAP Customizing 구현 방법

서버에 SAP ERP 솔루션을 설치하게 되면 솔루션 내의 수많은 표준 프로그램들이 있지만 그 것을 바로 사용할 수 있는 것은 아니다. ( * 여기서 사용의 의미는 실제 사용자에 의해 Transaction Data를 발생시키는 것을 말한다.) 새로 구입한 휴대폰을 예로 들어보자. 우리는 새 휴대폰을 구입하게 되면 아무것도 할 수없는 깡통폰으로 수령받는다. 이러한 새 폰에 유심칩을 꽂아 전화를 개통하고 백업된 주소록을 다운받아 연락처도 저장하고 기존에 사용하던 어플도 설치해야 비로서 사용할 수 있는 나만의 폰이 된다. 서버에 막 설치를 끝낸 SAP 솔루션도 마찬가지로 세팅이 안된 초기화 상태이므로 바로 사용이 불가능 하다. 모듈 컨설턴트와 ABAP 개발자를 통해 회사의 업종과 프로세스에 맞게 Configur..