공존’s BLOG
/
Database
/
Projects
/
SAP ABAP
Search
Duplicate
Share
🛄
SAP ABAP
좋은 사이트들
갤러리 보기
맥북M1 에어 16으로 진행하다가 너무 느려터져서 진행이 불가..
설치만 4시간 잡아먹어서 겨우 터미널 검색하는데 ter 세 글자 치는 과정에서 3분 소요…
이상하게 다른 개발할 때 잘 돌아가는 친구인데 VM 셋팅 이후 부터 엄청 느려짐.
결국 윈도우 본체로 넘어와서 다시 설치 시작.
맥북 소유자 중에서 맥북 프로 300만원 후반대 짱짱한 성능아니면 그냥 윈도우로 진행하는게 최선의 선택인듯..
기본 설치
1. 가상머신 설치를 위한
https://www.virtualbox.org/wiki/Downloads
SAP 서버를 로컬 환경에서 실행하기 위해 가상 머신이 필요.
1. SAP ABAP 무료 개발 서버 셋팅하기
가상 머신에 리눅스 서버 설치 오픈수세를 통한 SAP 서버 환경 구축
1. 가상머신
(Virtual Machine)
이란?
물리적으로 존재하는 컴퓨터가 아닌, 다른 컴퓨터가 만들어내는
가상의 컴퓨터
를 의미한다.
개발자들이 가상 환경을 만들어 개발 및 테스트를 할 때 자주 사용함. 실제 컴퓨터처럼 운영체제를 설치하고 사용할 수 있다.
•
운영체제(OS)
: 컴퓨터 시스템의 자원을 효율적으로 관리하고, 사용자가 편리하게 컴퓨터를 사용할 수 있도록 환경을 제공하는 여러 프로그램의 모임.
2. 리눅스(Linux)란?
리눅스는
오픈 소스 운영체제
로, 소스 코드가 공개되어 있고 누구나 무료로 사용할 수 있다.
서버용 운영체제로 많이 사용되며, 다양한 선택지(우분투, CentOS, 데비안, 레드햇, 오픈수세 등)가 있음. 같은 역할을 하는 프로그램이라도 편리성, 속도, 확장성, 가벼움 등 목적에 따라 여러 가지 종류가 있다.
ex) 감자, 오렌지 등 종자를 개량하고 이를 통해 다양한 완제품을 만드는 것에 비유할 수 있음.
3. 오픈수세(OpenSUSE)란?
2. 인프라 & ALV 출력하기
다른 테이블로 실습문제 - SPFLI
SPFLI 로 7개만 변경해서 진행해보기
•
CARRID
•
CONNID
•
FLTIME
•
DEPTIME
•
ARRTIME
•
DISTANCE
2-1. 다른 테이블로 실습해보기 - SPFLI
ABAP 레포트 프로그램 구조
ABAP 레포트 프로그램은 크게 변수 선언, 조회 화면, 실행 섹션으로 구성됨.
1. 전역 변수 선언
•
변수 선언 부분(상단): 전역 변수
2. 조회 화면
•
조회 화면에서 사용되는 전역 변수
3.
START OF SELECTION
실행 구문
•
PERFORM
구문
•
TYPES
와
DATA
🫥
3. ABAP 레포트 프로그램 구조와 디버깅
SPFLI 테이블 실습 2
SPFLI 테이블가지고 연습
1.
fltime이 정수 타입으로 나오게 변경
2.
distance 필드도 소수점이 안나오게 변경
3.
다양한 레이아웃 옵션, field catalog option 옵션 사용해보기
4.
scarr 테이블에서 긴 컬럼 제목 다 나오게 currode 필드
5.
서브토탈 사용해보기
3-1. SPFLI 테이블 실습 2
ALV 필드 카탈로그 속성 정리
필드 카탈로그는 ALV(Grid Control)에서 각 필드의 속성을 설정하는 부분이다. 필드의 표시 방법을 제어하거나 데이터를 처리하는데 중요한 역할을 한다.
필드 카탈로그 속성
•
fieldcatalog-edit_mask
: 데이터를 특정 포맷으로 표시한다.
•
fieldcatalog-decimals_out
: 소수점 이하 자릿수를 제어한다.
•
fieldcatalog-seltext_l
: 필드의 설명(라벨)을 설정한다.
•
fieldcatalog-do_sum
: 합계나 평균값을 표시한다.
•
fieldcatalog-hotspot
: 핫스팟 기능을 추가하여 클릭 가능하게 설정한다.
예)
4. 필드 카탈로그 & 도움말
도움말 테스트 연습
•
도움말 만들어보기
•
도움말 만든 필드를 파라미터로 조회화면 만들어서 테스트해보기
실습
조회화면 - 라디오버튼
4-1. 도움말 테스트 연습1
도움말 테스트 연습
•
SBOOK 테이블 조회하는 프로그램
•
SCARR 테이블 조회하는 프로그램
실습
SBOOK 테이블 조회하는 프로그램
4-2. 도움말 테스트 연습2
ABAP Select Option 예시 복습
기존 소스에 이어서 넣으면 에러가 저번에 났었다. 이유는
셀렉트 옵션은 테이블을 미리 정의해주지 않으면 데이터를 가져올 수 없다.
두 개 이상의 셀렉트 옵션을 선언하는 예시
🫥
5. Select Option && 도움말 소스
조회화면 출력 연습
1.
조회화면 출력 연습
2.
조인 선 실습
실습
SPFLI
테이블을 사용하여 여러 조건으로 조회 화면을 구성
5-1. 도움말 테스트 연습 3
ABAP Join문
ABAP에서 SQL JOIN 및 SELECT 문 사용하기
MS SQL에서는 SQL 쿼리에서 테이블의 별칭을 사용할 때
a.empno
와 같은 형식을 사용한다.
하지만 ABAP에서는
a~empno
형식을 사용하여 테이블과 필드를 구분한다.
•
MS SQL:
a.empno
•
ABAP:
a~empno
이때,
.
(점) 대신
~
(물결)을 사용하는 것이 특징.
INTO CORRESPONDING FIELDS OF TABLE
🫡
6. ABAP Join문
조회화면 조인 연습
1.
전에 만든 항공예약프로그램에서 이제 inner 조인을 가지고 중첩해서 데이터 출력해보기
실습
SBOOK
테이블을 사용하여 조인해서 출력해보기
전체소스
6-1. 조인 연습
SAP 시스템을 Windows 가상 머신에 설치한 후, MacBook과 Windows에서 SAP GUI를 통해 시스템에 연결하는 방법을 단계별로 정리해봤다!!
•
윈도우에 셋팅한 sap 서버
•
맥북에 설치한 SAP GUI 사용
1. Windows 가상 머신의 네트워크 설정 변경
Windows 가상 머신에서 네트워크를
브리지 모드(Bridged Mode)
로 설정해야 MacBook과 같은 네트워크 내에서 연결할 수 있다.
1.
가상 머신의 네트워크 설정 열기
SAP GUI를 사용하여 Windows 가상 머신과 MacBook 연결 설정 방법
ABAP 반복문
구글에 abap multiplication table example 라고 치고 첫번째 페이지에
해당 링크
로 진입.
위에서 4번째에 있는 걸로 복사
1. DO문과 LOOP문 사용법
DO문
과
LOOP문
은 ABAP에서 반복 작업을 처리할 때 주로 사용됨.
🫡
7. ABAP 반복문 & COLLECT & SORT
SFLIGHT 테이블 집계
•
SFLIGHT 테이블을 사용
•
COLLECT
문을 사용하여 동일한 항공사 코드(CARRID)와 연결 ID(CONNID)에 대한
PRICE와 SEATSMAX 필드를 집계
•
SUM
을 사용하여 특정 기준에 따라 데이터를 더해보기
7-1. ABAP 반복문 & COLLECT & SORT 연습
ABAP의 데이터 이동과 필드 매핑 MOVE와 MOVE-CORRESPONDING
예시
spfl_tab
이라는 기존 테이블을
flights
라는 새 테이블에 동일한 필드 이름만 매핑하여 데이터를 옮긴다.
MOVE-CORRESPONDING
구문을 통해 구조가 다른 두 테이블 간에 같은 필드 이름끼리 데이터를 이동시킬 수 있다.
테이블 결합
•
조인문 : 테이블간의 결합 / 필드 갯수가 많고 데이터가 많으면 많이 느려진다.
•
read move : 필요한 필드만 딱 가져다가 데이터 받아오고 그거만 결합이 가능하다.
집계하고 결합하면 빠르다. 집계하기 전에 조인을 하면 조인도 느리고 결합도 느리고…
집계를 할 때는 더 적은 필드로 집계를 하는게 더 빠른데 필드가 늘어나니까 느려진다.
다시 정리)) 8. ABAP MOVE와 MOVE-CORRESPONDING
ABAP EXCEL 프로그램
CALL SCREEN 100
이라고 나와있는 애들이
모듈 풀 프로그램
이라고 한다
100을 더블클릭하면
이렇게 모듈이라고 나온다
모듈 풀 프로그램 정리
1. 모듈 풀 프로그램이란?
9. ABAP EXCEL 프로그램 디버깅
ABAP EXCEL 프로그램2
ABAP에서 Excel 파일 다운로드 및 처리에 관한 상세 정리
1. Excel 다운로드를 위한 주요 개념
•
OLE(Object Linking and Embedding):
ABAP에서 Excel 매크로의 기능을 활용하기 위해 사용. 이를 통해 Excel 애플리케이션과 상호작용 가능.
•
객체 생성:
CREATE OBJECT
를 사용해 Excel 객체를 생성하고, Excel 애플리케이션의 기능을 인수인계받아 사용할 수 있음.
•
Excel 애플리케이션, Workbook, Worksheet:
Excel 내부 구조에 따라 작업을 분리하여 처리.
2. 주요 로직 및 설명
a. 경로 설정 (Directory 선택)
10. ABAP EXCEL 프로그램 디버깅2
SCARR 테이블을 사용해서 엑셀 출력해보기
•
LOOP말고 단순반복 Do 사용해서 진행
•
SCARR 테이블의 여러 다른 타입의 필드를 처리할려고 ANY를 사용 (효율적인건지?...잘모르겠네요)
공부 참고 블로그
https://potato98.tistory.com/100
10-1 ABAP 엑셀
ABAP EXCEL 프로그램3
P_FILE 도움말 만드는 쪽에 디버깅을 걸어서 본다.
객체 생성 및 메서드 호출
•
CREATE OBJECT OBJFILE.
: 객체
OBJFILE
생성.
•
OBJFILE->GET_TEMP_DIRECTORY
: 객체의 메서드를 호출하여 임시 디렉토리 경로를 가져온다.
•
CALL METHOD CL_GUI_FRONTEND_SERVICES=>FILE_OPEN_DIALOG
:
CL_GUI_FRONTEND_SERVICES
클래스의 메서드를 사용하여 파일 열기 대화 상자를 호출한다.
11. ABAP EXCEL 프로그램 디버깅3