먼저.... 뭐야 벌써 개발이 가능해? 라는 의문을 품을 수 있다....
SAP 코딩언어는 내기준으로 매우 쉽다..
(물론 요즘 NEWABAP 과 신기술 배우는건 어려워진거 같다... ㅎㅎㅎSQL이든 뭐든 이젠 자바쪽과 점점 유사해지는 느낌....)
Sap는 언어보다는 프로세스 이해가 더 중요하기 때문에.. + Sap 기능활용이 더 중요하기에 언어적인 난이도는 쉬운편이라 생각한다.
그리고 또 쉬운 이유는
모든 개발 기초가 SAP 프로그램 안에 이미 들어있다.
무슨말이냐....
쌩짜로 다 외울필요없이 레퍼런스 코딩들이 SAP에 들어있다는 소리다...
그러니 Sap 활용하는 방법 / 어디 뭐가 있는지 아는정도 / 제공하는 기능활용을 어찌할지 / 구글검색을 어찌할지 등등만 머릿속에 잘 입력해두면 된다..
요즘 세상에 GPT나 구글 검색하면 모든게 다나오니 이 블로그에 쓰고있는 뭐 어디 동적으로 뭘 가져오고 뭘 불러다 쓰고 하는 코딩을 딸딸 외울필요는 없다.
(이제 갓 배우는 초보는 기초 구문은 무조건 외우자..... 지금까지 쓴 내 코딩들은 100% 쌩 기초들이다...어딜 보고하면 안된다. 이런거 Gpt물어서 배껴쓰면 시간만 오래걸린다)
자 그럼 SAP 내에 참조코딩들은 어디있느냐
패키지 SLIS 에 가면 있고
지금 이 본문에 쓸 SALV같은경우
패키지 SALV_OM_OBJECT 에 있다.
그럼 이 패키지명은 외워야 되요?
아니다...
그냥 SE38가서 SALV*SIMPLE 해서 f4 검색 때리면 나오고.. 그 프로그램이 포함되어있는 패키지를 찾아가면 salv관련 모든 프로그램을 볼 수 있다.
slis패키지 또한 se38가서 alv*table* 이런식으로 검색하면
뭐가 막 나온다...
그 프로그램이 포함된 패키지를 찾아 그안에 붙어있는 프로그램을 보면 된다.
서론이 길었는데 그만큼 sap는 친절한 편이다...
이제 본문으로...
오늘은 지금까지 배운 모든 기술을 활용하여
1. 유저로부터 입력받아
2. db에서 데이터를 조회해서
3. alv로 출력할 것이다 (salv simple 활용)
이 모든과정을 거치면 단순한 db조회 레포트 프로그램이 완성되는 것이다.
자 그럼 하나하나 해나가보자.
1. 선언
DB는 SFLIGHT DB에서 데이터를 가져올 것이다.
그러니 그 정보를 담는 인터널 테이블(깊은 바구니)를 만들어야겠다.
Data : gt_sflight type table of sflight.
(Tip: 요즘 SAP는 이 선언조차 select db할때 할 수 있으나 공부니까 따로 선언하자..)
2. 입력창 만들기
먼저 db를 살펴보자.
키값은 파란색인데 carrid connid fldate
세 필드가 키값이다. 이걸 input 받아보자.
즉, 나 AA항공사만 보고싶어.
AB 항공사만 보고싶어.
나 해당항공사에 17번 항공편만 보고싶어.
날짜는 24년 4월부터 25년 7월까지 그 사이 항공편 만.....
이란 조건을 주고 싶다..
아래와같이 따라 코딩하자.
맨위tables : sflight. 선언했고
(6강 select options를 위해....)
select-screen begin of block bl1...... 이란 구문도 생겼다.
begin은 end랑 짝을 이뤄야 하므로
select-screen end of block bl1. 도 있다.
bl1은 내맘대로 이름이다. 막지어도 된다.
블럭이기에 bl로 이름지은거다...
with frame title이란 구문은 프레임을 만들면서 거기 이름을 만들어 줄꺼여. 라는 뜻이다....
프레임이 박히는 이름은 text-t01이라는 텍스트 심볼에 저장할거다.
3. 그럼 실제 입력받은 값으로 DB를 조회한다.
start-of-selection.
(이 사이에 db조회 코딩해라.)
end-of-selection.
4. 출력한다.
end-of-selection 이후....
출력부 코딩..
data : gr_table ........ 의경우 최상단 선언에 올려주는게 맞으나.. 보기쉽게하려고 아래와같이...
출력테이블은 gt_sflight 로 넣어준게 보인다.
salv는 sap내에 이미 있는 클래스들이라서 저대로
그냥 갖다쓰면 되는데 사실 이건 우리 코딩하는 곳에
상단 버튼중 pattern누르고 갖다쓰면 된다.
어디서 그냥 카피 엔 페이스트 해도 된다.
외울필요없는 구문이다. 그냥 갖다쓰기만 하면 된다.
아무튼 이렇게 해서 모든 코딩이 끝났다....
이제 컨트롤 +F3 해서 ACTIVE 한 후
F8로 실행하자.
이제 저기다 데이터 입력해서 출력 나오는걸 한번 봐보자.....
GENERAL은 어떻게 넣었냐고?!
저 박스들은 어찌 생긴거냐고?!
WITH FRAME TITLE TEXT-T01.에 비밀이있다.
다시 코딩창으로 가서 Text-t01에 더블클릭해서
예예.. 하며 general을 써주고 active하고 나오자....
갑자기 불친절해진 이유는....
이제부터 한번 찾아서 해보자는 의미다.....
출력결과도 코딩을 직접해서 한번 봐보자...
'ERP-SAP > SAP기초사용법' 카테고리의 다른 글
<ABAP> 쉽고 간단하게 배우는 기초 ABAP 08편. 실전 : 실제 플젝 요건받아 개발하기(실전 SAP 프로젝트) (0) | 2025.01.22 |
---|---|
<ABAP> 쉽고 간단하게 배우는 기초 ABAP 06편 (INPUT 화면 만들기, 데이터 입력 스크린 만들기) (9) | 2024.12.24 |
<ABAP> 쉽고 간단하게 배우는 기초 ABAP 05편 (LOOP, IF 처리) (10) | 2024.09.05 |
<ABAP> 쉽고 간단하게 배우는 기초 ABAP 04편 (바보도 따라하는 SALV) (1) | 2024.09.05 |
<ABAP> 쉽고 간단하게 배우는 기초 ABAP 03편 (기초선언+데이터담기) (7) | 2024.07.19 |