I Agree Line Smiley

ABAP 스터디 11

ABAB NEW-SYNTAX : VALUE(BASE) 구문 사용법

안녕하세요! 오늘은 ABAP에서 변수에 데이터를 입력할 수 있는 VALUE 구문과 BASE 옵션에 대해 알아보겠습니다. OLD-SYNTAX New-Syntax : VALUE VALUE 구문은 Old 구문과 같은 결과를 나타내지만 가독성 차원에서 뛰어난 효과를 보여줍니다. 하지만 VALUE구문에는 주의해야 할 내용이 있습니다. 위처럼 무턱대고 VALUE 구문을 사용 시 기존의 데이터를 지워버릴 수 있습니다. 구조체의 데이터를 입력할 때는 기존의 데이터를 유의하여 사용해야 하는데요, 구조체에서는 BASE 구문을 통해 데이터를 유지하며 새로운 데이터를 입력할 수 있습니다. VALUE(BASE) 구문 기존의 데이터를 유지하고 VALUE 구문을 사용하는 것은 생각보다 간단합니다. VALUE #( BASE = '값..

SAP/New Syntax 2024.07.01

FPM 동적 필드 카탈로그

FPM에서는 파라미터를 사용하여 하나의 피더클래스에서 동적인 필드 카탈로그를 구성할 수 있습니다. 이 방법은 스탠다드 TM에서도 많이 사용되는 방법인 거 같습니다. 1. 도메인 생성 동적인 필드 카탈로그를 생성하기 위해서 먼저 카탈로그에 사용할 도메인을 생성합니다. 저는 두개의 Fixed Value를 가진 Character 10자리 타입의 도메인(ZD_LIST_VALUE)을 생성했으며, ZE_LIST_VALUE 라는 Element에서 생성한 도메인을 사용하고 있습니다. 2. 필드 카탈로그 테이블 생성 서로 다른 타입을 가진 두가지의 필드 카탈로그용 어트리뷰트 테이블을 선언하고 1번에서 생성한 엘리먼트 타입의 어트리뷰트를 생성해 줍니다. 3. GET_PARAMETER_LIST IF_FPM_GUIBB 인터페..

TM/FPM 2023.05.30

ABAP Class에 대해 알아보자 #1

안녕하세요 지코딩입니다. 오늘은 SAP ABAP의 Class에 대한 포스팅을 진행하려고 합니다. CLASS 개념은 비전공자의 입장에서 조금 어려운 개념이었지만 제가 일하고 있는 TM이라는 모듈이 CLASS를 직접적으로 다루기 때문에 꽤 많은 도움이 되었습니다. CLASS에 대한 내용을 정리하는 게 쉽지 않다 보니 이번 포스팅(CLASS에 대해 알아보자 #1)에서는 CLASS에 대한 OVER VIEW를 진행해보겠습니다. CLASS OVER VIEW 제가 생각하는 클래스에 필요한 지식은 Class(클래스), Instance(인스턴스), Interface(인터페이스), Attrebute(어트리뷰트), Method(메서드)입니다. 이 용어들은 아마 개발을 하다 보면 자연스럽게 마주할 용어들입니다. 이 중 가장 ..

SAP/ABAP 2023.05.15

ABAP New Syntax - Read Table

오늘은 ABAP New Syntax(아밥 신문법) 그중 Read Table에 대해 정리해 보겠습니다. Read Table은 Internal table을 조회하는 구문으로 New-Syntax를 통해 효율적인 구문을 작성할 수 있습니다. New Syntax - Read Table 1. INDEX 예전 구문에서는 Read Table에 Index를 이용하여 구조체에 테이블 데이터를 입력했습니다. 하지만 신문법을 사용하여 wa = itab[ idx ] 를 사용하여 Read table과 같은 결과를 얻을 수 있습니다. ( 시스템 인덱스도 사용할 수 있습니다.) 2. TRANSPORTING NO FIELDS 예전 구문에서 ITAB에 데이터 유무를 판단하는 로직이 있었습니다. 이 구문도 신문법을 사용하여 같은 효과를 ..

SAP/New Syntax 2023.04.17

ABAP Debugging 옵션

SAP ABAP의 꽃을 한 가지 뽑으면 저는 당연히 'Debugger'를 뽑겠습니다. ABAP에서 Debugger는 ABAP Workbench에 통합된 Tool이며 다른 언어와는 다르게 ABAP은 ABAP에디터와 디버깅 화면을 자유롭게 변환할 수 있는 장점이 있습니다. 디버깅을 사용하다 보면 보통 사용하던 디버깅 기능만 쓰게 되는데 생각보다 디버깅의 능력은 대단합니다. 오늘은 그중 간단하게 몇 가지 디버깅 기능에 대해 소개하겠습니다. | 기능키 | 기능키는 디버깅에 가장 기본이 되는 기능으로 ABAP을 사용하는 개발자는 자연스럽게 익히는 기능입니다. 디버깅 기능키는 4가지가 존재합니다. (F5) : 디버깅 포인트를 한 칸씩 다음단계로 이동합니다. (F6) : 한단계씩 이동하며, 서브루틴을 만나면 실행 후..

SAP/ABAP 生 기초 2023.04.14

FPM Fiori 타일 생성 / Create Fiori Launch Pad Webdynpro

안녕하세요, 이번 포스팅에서는 FPM 프로그램을 Fiori 타일에 연동하는 방법에 대해 리뷰하겠습니다. Fiori Launchpad 연동(FPM) 가장 먼저 SAPGUI에 T-CODE : /N/UI2/FLPD_CUST를 통해 피오리 타일 생성 웹으로 이동합니다. 티코드를 입력하면 다음 화면으로 이동합니다. 1. 카탈로그 생성 좌측 메뉴에서 카탈로그를 선택하고 하단에 +버튼을 눌러 카탈로그를 생성합니다. 생성할 카탈로그의 ID와 Title을 적고 Save를 누르면 카탈로그가 생성됩니다. 생성한 카탈로그는 좌측메뉴에서 검색할 수 있으며, 자신의 만든 카탈로그를 선택한 후 상단에 타일 맵핑 버튼을 누르고 우측 하단에서 Create 타겟 맵핑 버튼을 눌러줍니다. 2. 타겟맵핑 Semantic Object와 Ac..

TM/FPM 2023.04.06

LOOP AT GROUP BY 사용해보기

안녕하세요, 이번 포스팅에서는 테이블 중복검사 또는 집계를 사용할 때 유용하게 사용하는 LOOP AT GROP BY에 대한 리뷰를 해보겠습니다. 활용법보다는 사용법을 기준으로 예시를 만들었으니 참고해 주시길 바랍니다. 먼저, 시작하기전에 위의 테이블을 기준으로 LOOP를 돌려보겠습니다. CARRID와 CONNID를 기준으로 GROUP을 돌리면 어떻게 데이터가 들어가는지 체크해 보겠습니다. LOOP AT GROUP BY 1. 예시 CODE 이 예시에서는 Carrid와 Connid를 그룹으로 만들었습니다. 그에 따라, LH + 0004 / LH + 0454 / LH +0455 총 3개의 그룹에 10개의 데이터가 들어있습니다. 첫 번째 LOOP인 GROUP BY에서는 그룹이 된 첫 번째 데이터를 읽으며 예시에..

SAP/ABAP 2023.03.27

ALV 필드 카탈로그 자동 입력 펑션('LVC_FIELDCATALOG_MERGE ')

안녕하세요. 이번 포스팅에서는 'LVC_FIELDCATALOG_MERGE' 펑션을 활용하여 ALV 필드이름을 따로 지정하지 않고 쉽게 필드 카탈로그를 구성하는 방법에 대해 리뷰해 보겠습니다. 'LVC_FIELDCATALOG_MERGE' 사용법 1. 스트럭쳐 생성 이 펑션을 사용하기 위해서는 먼저 ALV에 띄우고 싶은 스트럭쳐를 ABAP Dictionary에 생성해야 하기 때문에 스트럭쳐를 만들어줍니다. 2. ALV 구성 * ALV 구성은 펑션과 상관없지만 그냥 참고용으로만 구성되어 있는 파트입니다. - 글로벌 변수 선언후 컨테이너와 그리드 그리고 LIGHT를 위한 LED를 선언했습니다. 3. 필드 카탈로그 생성 필드 카탈로그에 데이터를 넣기 위해 펑션을 사용했습니다. 펑션을 사용하지 않을 경우 직접 필드..

SAP/ABAP 2023.03.19

코딩 없이 SELECTION-SCREEN에 ICON 넣는 법 / Selection-screen icon(No-coding)

안녕하세요, 이번 포스팅에서는 코드 안 쓰고 Selection-screen에 아이콘 넣는 방법에 대해 리뷰하겠습니다. 먼저 두개의 파라미터 값이 있습니다. 이 프로그램을 실행했을 때 두 개의 파라미터에 아이콘을 넣는 방법 중 간단한 방법 한 개를 설명하겠습니다. Parmeter Icon 설정 먼저, Text Elements 를 클릭합니다. 그리고, Selection Texts에 @@ 사이에 원하는 ICON에 Internal 코드 값을 적어주면 끝입니다.! ICON Internal 코드 확인하는 법 ICON에 Internal 코드 값을 확인하는 방법은 SE80에 들어가서 프로그램명 SHOWICON을 검색하고 실행시킵니다. * SHOWICON : Display icons in list program 실행 하..

SAP/ABAP 2023.03.14

ABAP OFFSET( F1[+off][(len)] )

안녕하세요, 이번 포스팅에서는 SAP ABAP에서 OFFSET기능이라는 것을 리뷰하겠습니다. OFFSET 이 문법은 간단하게 설명하면 문자열의 길이를 선택하는 문법이라고 생각하시면 됩니다. 그림 처럼 가끔 F1(도움말)을 확인하다 보면[+off]라는 구문이 보이곤 하는데 이 구문이 바로 OFFSET구문입니다. 코드로 예를 들면 : WRITE lv_offset+4(2). 이 구문에서 +4를 OFFSET이라 하며 (2)는 LEN이라고 합니다. 코드에서 처럼 LEN을 생략할 수도 있습니다. 다만, 필드 심볼의 경우 LEN을 생략할 수 없으며, * 기호를 사용하여 생략과 같은 결과를 도출할 수 있습니다. 위 구문처럼 FIELD-SYMBOLS에는 LEN을 생략할 수 없는 대신 * 기호를 사용하여 결과값을 얻을 수..

SAP/ABAP 生 기초 2023.03.14