SAP System Overview (Udemy mod. 1)

1. SAP System Overview
Architecture of an SAP system
Technical Architecture
- 3-Tier Client/Server Architecture
- Presentation, Application, Database의 3층위Presentation : SAP GUI. 이외에 애플리케이션 서버와 소통하는 디바이스 모두를 일컬음.
- Application Server : SAP 시스템의 뇌. 중앙 프로세싱이 진행됨.
- Database Layer : Separate Server
Landscape Architecture
- Development System, Testing System, Production System
- Development System에서 프로그램 개발, 사용 준비 되면 Testing, Production environment로 옮겨지면 실제 비즈니스에 사용되는 단
2 Types of Programs
- Reports
- 데이터의 리스트. 데이터의 selection 후 display. 프로그램이 run하는동안 intervene 불가
- 거의 모든 프로그램은 report임
- Dynpros
- Dynamic program : 프로그램 execution 동안 intervene 가능. 유저가 어떤 버튼, 필드를 만지느냐에 따라 프로그램의 플로우가 달라짐.
Work Processes
- Dispatcher : 어떤 워크 프로세스가 있는지 보, 어떤 유저들에게 각각 프로세스를 할당할지 결정함.
- Dynpro Processor : 플로우 로직에 관여함. calculation은 하지 않음.
- ABAP Processor : 로지컬 operation, calculation 담당
- Database interface : 다른 SQL(Microsoft SQL이나 Oracle SQL)이 데이터베이스로 쓰이더라도 Database independent한 Database Interface 통해 r/w 가능. 여기서 사용되는 SAP ABAP statament를 OpenSQL이라고 함.
- 특정 SQL 에서만 쓰이는 코드도 ABAP에서 사용 가능. 하지만 타인의 가독성을 위해 잘 안쓰임.
ABAP 프로그램의 구조
- Declaration Section : 데이터타입, 스트럭쳐, 개별 필드, 글로벌 변수, (글로벌변수와 달리) 프로그램의 특정 section(=Internal Processing Blocks)에서만 사용되는 변수도 있음.
- Processing Blocks : 로직이 쓰이는 부분