72
Summary of The SAP Ecosystem and Functional Software

Summary of The SAP Ecosystem and Functional Software

  • Upload
    akando

  • View
    37

  • Download
    2

Embed Size (px)

DESCRIPTION

Summary of The SAP Ecosystem and Functional Software. Review. Last time – we looked at various topologies for implementing enterprise systems This time – we will look at how SAP provides a “fairly” complete infrastructure for System configuration System development and customization - PowerPoint PPT Presentation

Citation preview

Page 1: Summary of The SAP Ecosystem and Functional Software

Summary of The SAP Ecosystem and

Functional Software

Page 2: Summary of The SAP Ecosystem and Functional Software

Slide 2

Review Last time – we looked at various

topologies for implementing enterprise systems

This time – we will look at how SAP provides a “fairly” complete infrastructure for System configuration System development and customization System testing System deployment

Page 3: Summary of The SAP Ecosystem and Functional Software

Slide 3

Lecture Structure It’s a high-level overview of SAP / R3

Breadth not depth at this point

I’ll breeze through many screens to demonstrate navigation through the SAP GUI

Page 4: Summary of The SAP Ecosystem and Functional Software

Slide 4

Course Simulations We will use various separate SAP

instances throughout this course Global Bike configuration ABAP Web Dynpro And possibly some sort of integration tool

Page 5: Summary of The SAP Ecosystem and Functional Software

Slide 5

Introduction (Roles and Responsibilities) This is my taxonomy Developers customize SAP Administrators designate roles to other users

and tune the system Responsible for security administration Responsible for deployment activities

Implementers configure SAP Third party integrators interface SAP with

other software packages And of course, the users

Page 6: Summary of The SAP Ecosystem and Functional Software

Slide 6

SAP Architecture (Introduction) Keep in mind that

this is the most complex software package that you have ever seen

It’s been around for a very long time and has remained backward compatible

It’s written in and developed by Germans

Page 7: Summary of The SAP Ecosystem and Functional Software

Slide 7

SAP Architecture (Introduction)

From BC ABAP Programming

Page 8: Summary of The SAP Ecosystem and Functional Software

Slide 8

SAP Logical Architecture (1) Underneath, there is a database and a

database management system SQL Server, ORACLE, MaxDB, and HANA

are supported The R/3 Basis is really an operating

system within an operating system The Basis is it’s own virtualization system

too There is no user contact with the

underlying operating system

Page 9: Summary of The SAP Ecosystem and Functional Software

Slide 9

SAP Logical Architecture (2) ABAP workbench is the development

environment with which you write, debug, and test ABAP applications ABAP is the programming language of SAP

and resembles COBOL An R/3 application has special meaning

It’s an ABAP program It’s has a well-defined structure

Page 10: Summary of The SAP Ecosystem and Functional Software

Slide 10

SAP Logical Architecture (3) Our presentation component will be

the NetWeaver program that you used in IS 365 All user interaction is through the

presentation component

Page 11: Summary of The SAP Ecosystem and Functional Software

Slide 11

SAP Layers SAP is built using three layers

Page 12: Summary of The SAP Ecosystem and Functional Software

Slide 12

SAP (Database Layer) SAP interacts with other RDMSs

(ORACLE, SQL Server, DB2, INFORMIX, etc…

However, the database layer stores everything for the entire SAP “instance” ABAP code User accounts EVERYTHING!

Page 13: Summary of The SAP Ecosystem and Functional Software

Slide 13

SAP (Application Layer) Application servers run ABAP

applications We typically have many of them The server group is load balanced

A message server communicates state information between application servers More later

Page 14: Summary of The SAP Ecosystem and Functional Software

Slide 14

SAP (Presentation Layer) It’s NetWeaver

We will not get into the topic yet but there is much that can be done with Netweaver

The presentation layer interacts with the application layer in a very structured way As you complete screens, you perform

dialog steps” Control passes back and forth between the

presentation layer and application layer

Page 15: Summary of The SAP Ecosystem and Functional Software

Slide 15

SAP (Presentation Layer)

Page 16: Summary of The SAP Ecosystem and Functional Software

Slide 16

Application Server (Structure) Application servers are responsible for

two things Dispatching work across a network of

application servers Performing work (work processes)

Execute dialog steps Gateways communicate with other

application servers Shared memory is used to persist

application context

Page 17: Summary of The SAP Ecosystem and Functional Software

Slide 17

Application Server (Illustration)

Page 18: Summary of The SAP Ecosystem and Functional Software

Slide 18

The SAP Programming Model (1) This discussion is based on the cardinal

rule that the database can never be left in an inconsistent state or a transaction be lost

But we might have thousands of users concurrently recording transactions You should see the synchronization

problem

Page 19: Summary of The SAP Ecosystem and Functional Software

Slide 19

The SAP Programming Model (2) Executing an application (transactions)

is done by completing one or more dialog screens Each screen is called a dialog step Each dialog step corresponds to a

database Logical Unit of Work LOW ABAP provides constructs to bundle

several DB LUWs into a SAP LOW

Page 20: Summary of The SAP Ecosystem and Functional Software

Slide 20

THE SAP LUW

Page 21: Summary of The SAP Ecosystem and Functional Software

Slide 21

Structure of a Work Process

Page 22: Summary of The SAP Ecosystem and Functional Software

Slide 22

Types of Work Processes Work processes have different types Dialog work process operate with user

requests to execute dialog steps Update processes execute database updates

that are parted of a bundled SAP UOW Background processes are executed without

user interaction Enqueue processes are used for locking Spool processes are used for printing and

archiving

Page 23: Summary of The SAP Ecosystem and Functional Software

Slide 23

Summary An application program has one or

more screens which are processed by the screen processor of a work process

The processing logic of a program gets data from screens, processes it, and returns data to screens

Page 24: Summary of The SAP Ecosystem and Functional Software

Slide 24

Screens Unlike the VB form with which you are

familiar, the ABAP screen is much more structured

Two types Screens have a definition and flow logic

created using a screen painter Selection screens and lists provide a

simplified way to select data for a list or report

Page 25: Summary of The SAP Ecosystem and Functional Software

Slide 25

ABAP Program Structure ABAP programs execute within

individual dialog steps A program is divided into processing

blocks

Page 26: Summary of The SAP Ecosystem and Functional Software

Slide 26

ABAP Program Declare global data here Create selection screen definitions Dialog modules, event blocks, and

subroutines are all processing blocks

We will delve into the structure more later

Page 27: Summary of The SAP Ecosystem and Functional Software

Slide 27

Types of ABAP Programs (1) A program’s technical attributes and

capabilities are determined by its type Type 1 programs are executable

programs They do not need to be controlled by

screens Type 1 programs are often called reports

Type M programs are controlled through screen flow logic and must be started from a transaction code

Page 28: Summary of The SAP Ecosystem and Functional Software

Slide 28

Types of ABAP Programs (2) Type F programs are function modules

containing reusable functiond Type I programs are includes

Includes just break up programs into smaller chunks.

Page 29: Summary of The SAP Ecosystem and Functional Software

Slide 29

Administrator (Overview) Performance User and role management Deployment of test and production

systems

Page 30: Summary of The SAP Ecosystem and Functional Software

Slide 30

Administrator (Tuning) Significant system management and

performance tuning is necessary in large enterprises We can tune and monitor memory

management In some enterprises we have HTTP and

other services System monitoring

Page 31: Summary of The SAP Ecosystem and Functional Software

Slide 31

Administrator (User Groups) User groups allow user administration to

be distributed among several administrators

Groups are also used to perform “mass maintenance” on several users

Transaction code SUGR to show user groups

Page 32: Summary of The SAP Ecosystem and Functional Software

Slide 32

Administrator (Roles) Access to resources is granted through

roles Roles are hierarchical and have different

types Single roles contain authorization data Composite roles are created using multiple

composite roles, which are then assigned to users

SAP ships with predefined bundle of standard roles (single and composite)

Page 33: Summary of The SAP Ecosystem and Functional Software

Slide 33

Administrator (Roles) Transaction code PFCG to view roles We are in role Z_ABAP

Page 34: Summary of The SAP Ecosystem and Functional Software

Slide 34

Administrator (Roles) Roles

Page 35: Summary of The SAP Ecosystem and Functional Software

Slide 35

Administrator (Deployment) SAP manages deployment of system

changes from development to training to test to production Other system types can be defined The process is called transport (more in a

moment)

Page 36: Summary of The SAP Ecosystem and Functional Software

Slide 36

Administrator (Other) Data must be archived System performance needs to be

monitored and tuned

Page 37: Summary of The SAP Ecosystem and Functional Software

Slide 37

Implementer (Introduction) In my opinion a formal definition gets a

bit fuzzy here We use the IMG to configure (customize)

the system We use the SAP system itself to create all

sorts of “master data” Production schedules You did some of this in IS 365

Page 38: Summary of The SAP Ecosystem and Functional Software

Slide 38

(IMG) Introduction IMG is short for Implementation Guide It contains all of the actions to

implement, control and document the SAP system General Settings Enterprise Structure Financial Accounting And all of the functional sub systems

Page 39: Summary of The SAP Ecosystem and Functional Software

Slide 39

(IMG) General Settings Country settings (countries in which we

do business) Currencies in which we do business Public calendars containing holidays,

workday configuration

Once configured these are either hard to change or cannot be changed

Page 40: Summary of The SAP Ecosystem and Functional Software

Slide 40

(IMG) (Illustration)

Page 41: Summary of The SAP Ecosystem and Functional Software

Slide 41

IMG (Enterprise Structure) Here, we describe our organizational

structure to the SAP system (Organizational Units) It’s not easy to change the organizational

structure once it has been created

Page 42: Summary of The SAP Ecosystem and Functional Software

Slide 42

IMG (Enterprise Structure – Parts) Financial accounting Controlling accounting Logistics Sales Materials Management Plant Maintenance Production HR

Page 43: Summary of The SAP Ecosystem and Functional Software

Slide 43

Definement and Assignment Configuration of the enterprise structure

(and many other components) requires a two-step process

Definement Create organizational structures

Assignment Assign those organizational structures to

other organizational structures

Page 44: Summary of The SAP Ecosystem and Functional Software

Slide 44

Definement and Assignment (Examples) You define company codes and assign

them to a company You define credit control areas and

assign them to a company code There are hundreds of these We will get through many of the core

functions in this course

Page 45: Summary of The SAP Ecosystem and Functional Software

Slide 45

IMG – Business Configuration (BC) Sets In this class, we will “globally” configure

system elements using the “SAP Reference IMG”

In practice, we use BC sets BC sets can be created for specific

processes These BC sets can be deployed separately

SAP provides numerous BC sets for industries and industry sectors

We can create our own BC sets too

Page 46: Summary of The SAP Ecosystem and Functional Software

Slide 46

BC Set (Implementation) Types:

Simple BC sets contain configuration data Hierarchical BC sets contain other BC sets

The hierarchy can be nested Attributes

Name Type Release information Change information (person, date time)

Page 47: Summary of The SAP Ecosystem and Functional Software

Slide 47

SAP Transport (1) In SAP, instances (clients) are

provisioned into different types Development (created from production

backups) After development is complete, the

system is copied to a “test / QA” system Then to a “consolidation system” Finally, the test system is deployed to the

production system Custom intermediate systems can also be

created

Page 48: Summary of The SAP Ecosystem and Functional Software

Slide 48

SAP Transport (2) The Transport Organizer is the tool used to

mange transport of BCs and development code from one instance to another

Transaction code for the Transport Organizer is SE01

STMS for the Transport Management System

Page 49: Summary of The SAP Ecosystem and Functional Software

Slide 49

SAP Development THIS IS A MONSTER Unlike most development environments

you are used to, all code (programs) are stored inside of the SAP instance itself

Code is deployed using transports mentioned previously

There are different types (categories) of code

Page 50: Summary of The SAP Ecosystem and Functional Software

Slide 50

SAP Development (Interface) The Object Navigator is the entry

point into the ABAP objects (programs) (Transaction code SE80)

The ABAP Editor is used to create, edit, test, and debug ABAP applications

The Data Browser lets you look at the SAP tables from the SAP / ABAP API

… And Much More

Page 51: Summary of The SAP Ecosystem and Functional Software

Slide 51

Object Navigator It’s used to organize programing in the

SAP integrated development environment Repository Browser is the primary code

storage area The Repository Information System is used

to search for programming objects The Transport Organizer manages changes

made during configuration and development and propagates (transports) changes to test and production systems

Page 52: Summary of The SAP Ecosystem and Functional Software

Slide 52

Object Navigator (Illustration)

Select object type from Object List

Page 53: Summary of The SAP Ecosystem and Functional Software

Slide 53

Repository Browser (Object Lists) The application hierarchy contains all

development objects A package contains logically related

development objects In this class, we will create local

objects, which are not transported to QA / production systems

Page 54: Summary of The SAP Ecosystem and Functional Software

Slide 54

Packages (Contents) Packages contain many things

Programs containing fields, events, subroutines, screens, and so on

Function groups are containers for functions (external procedure calls)

Dictionary objects contain (roughly speaking) references to SAP data

Remember, all data is processed through the SAP API

SHOW PACKAGE FARC

Page 55: Summary of The SAP Ecosystem and Functional Software

Slide 55

Classes / Interfaces SAP supports an OOP approach to

development using classes and interfaces

Page 56: Summary of The SAP Ecosystem and Functional Software

Slide 56

SAP Runtime Architecture (1) SAP Basis is the fabric on which all sap

applications run This fabric runs on top of a host OS

UNIX (AIX, HP-UX, Solaris, Linux) Windows … IBM mainframe systems

ABAP program execution is managed by the ABAP (managed runtime) and the SAP kernel

Page 57: Summary of The SAP Ecosystem and Functional Software

Slide 57

SAP Runtime Architecture (2) A SAP system consists of

One or more instances (application server) accessing a centralized database containing

All data All programs (ABAP and other)

The database interface handles marshals communication between the SAP system and the relational database

Page 58: Summary of The SAP Ecosystem and Functional Software

Slide 58

SAP and the Database SAP uses a logical database

We don’t usually touch the underlying ORACLE / SQL server / whatever database

ABAP programs are stored in the SAP database

SAP supports IBM DB2, Informix, MaxDB, Oracle,

Microsoft SQL Server A similar model exists for the Web

application Server

Page 59: Summary of The SAP Ecosystem and Functional Software

Slide 59

Transactions Roughly speaking, a logical unit of work In the SAP context, it means a calling

and executing an ABAP program that perform an indivisible operation on data Corresponds to a transaction code

Page 60: Summary of The SAP Ecosystem and Functional Software

Slide 60

ABAP (History) Acronym:

Allgemeiner BerichtsAufbereitungsProzessor

Generic report preparation rocessor Advanced Business Application Programm

ing Created back in the 1980s Looks very much like COBOL SAP itself, is written in ABAP

Page 61: Summary of The SAP Ecosystem and Functional Software

Slide 61

ABAP (Introduction) There are two types of executable

(ABAP) programs Reports

Enter a set of parameters Generate a report based on those

parameters Module pools

More complex screen and flow logic (these are dynpros or dynamic programs)

Page 62: Summary of The SAP Ecosystem and Functional Software

Slide 62

ABAP (Creating a First Report) Activate the ABAP Editor (Transaction

code SE38 ) You must have the developer key I gave

you) Create a program Save and activate the program Run the program

Page 63: Summary of The SAP Ecosystem and Functional Software

Slide 63

ABAP Editor (Initial Screen) Start program names with Z_ as in

Z_Ekedahl (Some names are prohibited by SAP)

Page 64: Summary of The SAP Ecosystem and Functional Software

Slide 64

ABAP Editor (Create / Change Attributes) Type: for now Executable Program but

other program object types are selected here

Status: We will create Test Programs

Page 65: Summary of The SAP Ecosystem and Functional Software

Slide 65

ABAP Editor (Specify the Package) Executable programs belong to a

package There is a “special” package named

$Temp that is never transported

Page 66: Summary of The SAP Ecosystem and Functional Software

Slide 66

ABAP Editor(Creating the Code) My opinion – it’s a pretty good

development environment Supports intellisense, code highlighting,

and a robust debugger Most of you have never seen COBOL,

but it looks like COBOL!

Page 67: Summary of The SAP Ecosystem and Functional Software

Slide 67

ABAP Editor (Creating the Code) REPORT statement names the program

The argument Z_EKEDAHL is the name of my first report

Statements end with a period WRITE statement prints to the output

(report) stream

Page 68: Summary of The SAP Ecosystem and Functional Software

Slide 68

Run the Report To run a report, it must be activated

Programs must be activated after they are saved

Press F8 to run

Page 69: Summary of The SAP Ecosystem and Functional Software

Slide 69

Getting Started with the ABAP Dictionary Remember that we work with data

logically through ABAP, rather than operating on the physical database

The database layer supplies extensive metadata beyond most native databases

Transaction code SE11 gets us to the ABAP dictionary

Transaction code gets us to the DataBrowser We will look at MARA (Material Master

Record)

Page 70: Summary of The SAP Ecosystem and Functional Software

Slide 70

Data Browser Select the desired table

You need to know the table names and meaning of fields

Page 71: Summary of The SAP Ecosystem and Functional Software

Slide 71

Data Browser (Table Output)

Page 72: Summary of The SAP Ecosystem and Functional Software

Slide 72

ABAP Dictionary Search for table