SlideShare a Scribd company logo
1 of 18
ABAP Course

              Chapter 1 – Introduction and first
                          program


Lecturer: André Bögelsack, UCC Technische Universität München
Author: Valentin Nicolescu, André Bögelsack
                  ABAP Course                     André Bögelsack, Valentin Nicolescu   1
Copyright 2008 UCC TU München
                              All rights reserved
   Weitergabe und Vervielfältigung dieser Publikation oder von Teilen daraus sind, zu welchem Zweck und in welcher Form auch immer, ohne
    die ausdrückliche schriftliche Genehmigung durch HCC TU München nicht gestattet. In dieser Publikation enthaltene Informationen können
    ohne vorherige Ankündigung geändert werden.
   Microsoft®, WINDOWS®, NT®, EXCEL®, Word®, PowerPoint® und SQL Server® sind eingetragene Marken der Microsoft Corporation.
   IBM®, DB2®, OS/2®, DB2/6000®, Parallel Sysplex®, MVS/ESA®, RS/6000®, AIX®, S/390®, AS/400®, OS/390® und OS/400® sind eingetragene
    Marken der IBM Corporation.
   ORACLE® ist eine eingetragene Marke der ORACLE Corporation.
   INFORMIX®-OnLine for SAP und Informix® Dynamic ServerTM sind eingetragene Marken der Informix Software Incorporated.
   UNIX®, X/Open®, OSF/1® und Motif® sind eingetragene Marken der Open Group.
   Citrix®, das Citrix-Logo, ICA®, Program Neighborhood®, MetaFrame®, WinFrame®, VideoFrame®, MultiWin® und andere hier erwähnte
    Namen von Citrix-Produkten sind Marken von Citrix Systems, Inc.
   HTML, DHTML, XML, XHTML sind Marken oder eingetragene Marken des W3C®, World Wide Web Consortium, Massachusetts Institute of
    Technology.
   JAVA® ist eine eingetragene Marke der Sun Microsystems, Inc.
   JAVASCRIPT® ist eine eingetragene Marke der Sun Microsystems, Inc., verwendet unter der Lizenz der von Netscape entwickelten und
    implementierten Technologie.
   SAP, SAP Logo, R/2, RIVA, R/3, SAP ArchiveLink, SAP Business Workflow, WebFlow, SAP EarlyWatch, BAPI, SAPPHIRE, Management Cockpit,
    mySAP, mySAP.com und weitere im Text erwähnte SAP-Produkte und -Dienstleistungen sowie die entsprechenden Logos sind Marken oder
    eingetragene Marken der SAP AG in Deutschland und anderen Ländern weltweit. MarketSet und Enterprise Buyer sind gemeinsame
    Marken von SAP Markets und Commerce One.
   Alle anderen Namen von Produkten und Dienstleistungen sind Marken der jeweiligen Firmen.
   Die Verwendung der Screenshots wurde mit dem jeweiligen Eigner abgesprochen.




                               ABAP Course                                           André Bögelsack, Valentin Nicolescu               2
Agenda

1.   Introduction to ABAP
2.   The use of ABAP in SAP systems
3.   Development prerequisites
4.   First program ‚Hello World!‘ + Exercise
5.   Online help for ABAP




                ABAP Course                    André Bögelsack, Valentin Nicolescu   3
What is ABAP?

•   ABAP = Advanced Business Application Programming
•   Similarities with Cobol and Pascal
•   Established in 1980
•   Since 1998 object oriented ABAP objects established
•   Fully compatible to older versions
•   Multilanguage support
•   Embedded SQL statements
•   Platform independent
•   Database independent
•   Reusability of code fragments



              ABAP Course                 André Bögelsack, Valentin Nicolescu   4
Historical view on ABAP
1950                             Machine code
 ….
                                  Assembler

1954                   Fortran                          Cobol
         LISP
                                     PL1
….




1968   Smalltalk                    Pascal
….




1980                                                     ABAP
                         C++
….




                        Java

1992                                              ABAP Objects

                                                               Source: Following SAP AG
         ABAP Course                       André Bögelsack, Valentin Nicolescu            5
Compiling ABAP
Presentation
                              SAPGui                   SAPGui                             SAPGui
   layer
                Calls program              Short message
                                                                                                       Runs program
               for the first time          about compiling

Application
                            Application              Application                       Application
  layer
                              server                   server                            server


                                                      Compiling
                             Database                 Database                           Database
 Database
                              server                   server                             server
   layer
                 Program has to                                                                Return compilation
                   be compiled


                                       ABAP                                         ABAP
                                      Source                                      Compilation
                                       code                                          Source: Following SAP AG
                        ABAP Course                              André Bögelsack, Valentin Nicolescu             6
ABAP Repository
Client 900                                       Client 901

          Application                                      Application
             data                                             data
                                   User                                                    User
                                 accounts                                                accounts
     Client dependent                                Client dependent
        Customizing                                     Customizing


                              Client independent customizing

             Repository (tables, programs, function groups …)
                    Divided into development classes

FI     CO      PP        TR         PS      PY    BC      KM            PA            FS       …
                                                                   Source: Own illustration
                ABAP Course                            André Bögelsack, Valentin Nicolescu          7
Prerequisites for ABAP development

1.   Access to repository (is maintained in client settings)
2.   User with development profile and access key
3.   Own package and own transport request
4.   Pay attention to the namespaces




                ABAP Course                   André Bögelsack, Valentin Nicolescu   8
Prerequisites for ABAP development

1.    Access to repository (is maintained in client settings)
     – Access to repository is needed
     – Check access in transaction SCC4




                 ABAP Course                   André Bögelsack, Valentin Nicolescu   9
Prerequisites for ABAP development

2.    User with development profile and access key
     – The access key allows development of new programs or
        changes to existing one
     – Access key are always username dependent!
     – Access keys must be requested from SAP as license cost
        increase by the number of development users
     – Access keys can be obtained from your local UCC




                ABAP Course                André Bögelsack, Valentin Nicolescu   10
Prerequisites for ABAP development

3.    Own package and own transport request
     – Own packages enable you to group your developments
     – Transport requests enable you to transport new developments
        to other SAP systems
     – You may develop new programs using the local package $TMP,
        but transport of these developments is not possible




                ABAP Course               André Bögelsack, Valentin Nicolescu   11
Prerequisites for ABAP development

4.    Pay attention to the namespaces
     – Only use namespace Y and Z, e.g. ZZ_* or YY_* as these are
         customer namespaces
     – SAP uses namespace from A to X for own programs and
         implementations
     – Changing SAP objects is not possible unless you have a
         modification key




                ABAP Course                André Bögelsack, Valentin Nicolescu   12
Transport of ABAP developments



         Development                         Quality Assurance                       Production
         System (DEV)                         System (QAS)                         System (PROD)



    Source: Own illustration

•           Developments are transported from DEV to QAS using transport
            requests
•           Exporting transport requests creates files for transportation
•           You may either import all or only one transport request in your
            destination system


                               ABAP Course                       André Bögelsack, Valentin Nicolescu   13
Transport hierarchy

                                              Project



       Transport                             Transport                                    Transport
        request                               request                                      request



Task               Task               Task               Task                     Task                        Task




       Developer                    Developer      Developer                 Developer                  Developer



                                                                                        Source: Own illustration
                      ABAP Course                               André Bögelsack, Valentin Nicolescu                  14
Transport requests in repository
Client 900                                       Client 901

          Application                                      Application
             data                                             data
                                   User                                                    User
                                 accounts                                                accounts
     Client dependent                                Client dependent
        Customizing                                     Customizing


                              Client independent customizing

                                                                  Transport request 1

                                                                  Transport request 2
FI     CO      PP        TR         PS      HR    BC      KM            PA            FS       …
                                                                   Source: Own illustration
                ABAP Course                            André Bögelsack, Valentin Nicolescu          15
Transport requests: releasing and
                    exporting

•   Release of transport requests can be done in Transport Manager
    TA SE09 or SE10
•   First release all tasks, then release transport request
•   Tasks have to be released by each developer
•   In urgent situations a task can be taken over to complete the
    export




              ABAP Course                 André Bögelsack, Valentin Nicolescu   16
The first program: Hello World!

1.   Create a new package
2.   Create a new transport request
3.   Create the new program
4.   Enter access key
5.   Adjust program attributes
6.   Assign program to package
7.   Save, check and activate program
8.   Release and export new program




               ABAP Course              André Bögelsack, Valentin Nicolescu   17
Online help for ABAP

• ABAP help
  (http://help.sap.com/saphelp_nw04/helpdata/de/d3/2e974d35c51
  1d1829f0000e829fbfe/frameset.htm)
• SAP marketplace (www.service.sap.com)
• SAP Community Network (www.sdn.sap.com)
• Transaction ABAPDOCU
• Books:
   – ABAP-Objects, SAP PRESS, ISBN-13: 978-1592290796
   – The Official ABAP Reference, SAP PRESS, ISBN-13: 978-
      1592290390


              ABAP Course              André Bögelsack, Valentin Nicolescu   18

More Related Content

Viewers also liked

Abap course chapter 7 abap objects and bsp
Abap course   chapter 7 abap objects and bspAbap course   chapter 7 abap objects and bsp
Abap course chapter 7 abap objects and bspMilind Patil
 
Lecture04 abap on line
Lecture04 abap on lineLecture04 abap on line
Lecture04 abap on lineMilind Patil
 
Abap course chapter 4 database accesses
Abap course   chapter 4 database accessesAbap course   chapter 4 database accesses
Abap course chapter 4 database accessesMilind Patil
 
Abap slide class4 unicode-plusfiles
Abap slide class4 unicode-plusfilesAbap slide class4 unicode-plusfiles
Abap slide class4 unicode-plusfilesMilind Patil
 
Abap course chapter 2 tools in the development environment
Abap course   chapter 2 tools in the development environmentAbap course   chapter 2 tools in the development environment
Abap course chapter 2 tools in the development environmentMilind Patil
 
SAP ABAP Lock concept and enqueue
SAP ABAP Lock concept and enqueueSAP ABAP Lock concept and enqueue
SAP ABAP Lock concept and enqueueMilind Patil
 
Abap course chapter 5 dynamic programs
Abap course   chapter 5 dynamic programsAbap course   chapter 5 dynamic programs
Abap course chapter 5 dynamic programsMilind Patil
 
Lecture01 abap on line
Lecture01 abap on lineLecture01 abap on line
Lecture01 abap on lineMilind Patil
 
Sap abap ppt
Sap abap pptSap abap ppt
Sap abap pptvonline
 
Introduction to ABAP
Introduction to ABAPIntroduction to ABAP
Introduction to ABAPsapdocs. info
 

Viewers also liked (10)

Abap course chapter 7 abap objects and bsp
Abap course   chapter 7 abap objects and bspAbap course   chapter 7 abap objects and bsp
Abap course chapter 7 abap objects and bsp
 
Lecture04 abap on line
Lecture04 abap on lineLecture04 abap on line
Lecture04 abap on line
 
Abap course chapter 4 database accesses
Abap course   chapter 4 database accessesAbap course   chapter 4 database accesses
Abap course chapter 4 database accesses
 
Abap slide class4 unicode-plusfiles
Abap slide class4 unicode-plusfilesAbap slide class4 unicode-plusfiles
Abap slide class4 unicode-plusfiles
 
Abap course chapter 2 tools in the development environment
Abap course   chapter 2 tools in the development environmentAbap course   chapter 2 tools in the development environment
Abap course chapter 2 tools in the development environment
 
SAP ABAP Lock concept and enqueue
SAP ABAP Lock concept and enqueueSAP ABAP Lock concept and enqueue
SAP ABAP Lock concept and enqueue
 
Abap course chapter 5 dynamic programs
Abap course   chapter 5 dynamic programsAbap course   chapter 5 dynamic programs
Abap course chapter 5 dynamic programs
 
Lecture01 abap on line
Lecture01 abap on lineLecture01 abap on line
Lecture01 abap on line
 
Sap abap ppt
Sap abap pptSap abap ppt
Sap abap ppt
 
Introduction to ABAP
Introduction to ABAPIntroduction to ABAP
Introduction to ABAP
 

Similar to Abap course chapter 1 introduction and first program

What's new in Nuxeo 5.2? - Solutions Linux 2009
What's new in Nuxeo 5.2? - Solutions Linux 2009What's new in Nuxeo 5.2? - Solutions Linux 2009
What's new in Nuxeo 5.2? - Solutions Linux 2009Stefane Fermigier
 
SAP Sybase Event Streaming Processing
SAP Sybase Event Streaming ProcessingSAP Sybase Event Streaming Processing
SAP Sybase Event Streaming ProcessingSybase Türkiye
 
Introducing enhancement framework.doc
Introducing enhancement framework.docIntroducing enhancement framework.doc
Introducing enhancement framework.docKranthi Kumar
 
Spryker meetup-distribute-your-spryker-deployment-with-docker-and-kubernetes
Spryker meetup-distribute-your-spryker-deployment-with-docker-and-kubernetesSpryker meetup-distribute-your-spryker-deployment-with-docker-and-kubernetes
Spryker meetup-distribute-your-spryker-deployment-with-docker-and-kubernetesBernd Alter
 
VClipse – Xtext-based IDE for the SAP Variant Configurator
VClipse – Xtext-based IDE for the SAP Variant ConfiguratorVClipse – Xtext-based IDE for the SAP Variant Configurator
VClipse – Xtext-based IDE for the SAP Variant ConfiguratorTim Geisler
 
Show and Tell: Building Applications on Cisco Open SDN Controller
Show and Tell: Building Applications on Cisco Open SDN Controller Show and Tell: Building Applications on Cisco Open SDN Controller
Show and Tell: Building Applications on Cisco Open SDN Controller Cisco DevNet
 
DSAG Jahreskongress 2018 - DevOps and Deployment Pipelines in SAP ABAP Landsc...
DSAG Jahreskongress 2018 - DevOps and Deployment Pipelines in SAP ABAP Landsc...DSAG Jahreskongress 2018 - DevOps and Deployment Pipelines in SAP ABAP Landsc...
DSAG Jahreskongress 2018 - DevOps and Deployment Pipelines in SAP ABAP Landsc...Sascha Junkert
 
Interactive Analytics using Apache Spark
Interactive Analytics using Apache SparkInteractive Analytics using Apache Spark
Interactive Analytics using Apache SparkSachin Aggarwal
 
Exploring pwa for shopware
Exploring pwa for shopwareExploring pwa for shopware
Exploring pwa for shopwareSander Mangel
 
SAP NetWeaver Portal OnDevice - Consuming your SAP NetWeaver Portal On Mobile...
SAP NetWeaver Portal OnDevice - Consuming your SAP NetWeaver Portal On Mobile...SAP NetWeaver Portal OnDevice - Consuming your SAP NetWeaver Portal On Mobile...
SAP NetWeaver Portal OnDevice - Consuming your SAP NetWeaver Portal On Mobile...SAP Portal
 
java training in chennai
java training in chennaijava training in chennai
java training in chennaisanjai rsamy
 
EclipseCon 2010 API Design and Evolution (Tutorial)
EclipseCon 2010 API Design and Evolution (Tutorial)EclipseCon 2010 API Design and Evolution (Tutorial)
EclipseCon 2010 API Design and Evolution (Tutorial)moberhuber
 
Moderniser le legacy JEE avec les containers et les microservices: patterns a...
Moderniser le legacy JEE avec les containers et les microservices: patterns a...Moderniser le legacy JEE avec les containers et les microservices: patterns a...
Moderniser le legacy JEE avec les containers et les microservices: patterns a...VMware Tanzu
 
What is Enterprise Resource Planning, SAP and SAP FIORI?
What is Enterprise Resource Planning, SAP and SAP FIORI? What is Enterprise Resource Planning, SAP and SAP FIORI?
What is Enterprise Resource Planning, SAP and SAP FIORI? Pavan Golesar
 
Flex For Java Architects Ledroff Breizh Jug V Blog Cc
Flex For Java Architects Ledroff Breizh Jug V Blog CcFlex For Java Architects Ledroff Breizh Jug V Blog Cc
Flex For Java Architects Ledroff Breizh Jug V Blog CcFrançois Le Droff
 

Similar to Abap course chapter 1 introduction and first program (20)

What's new in Nuxeo 5.2? - Solutions Linux 2009
What's new in Nuxeo 5.2? - Solutions Linux 2009What's new in Nuxeo 5.2? - Solutions Linux 2009
What's new in Nuxeo 5.2? - Solutions Linux 2009
 
BC404_EN_Col18.pdf
BC404_EN_Col18.pdfBC404_EN_Col18.pdf
BC404_EN_Col18.pdf
 
SAP Sybase Event Streaming Processing
SAP Sybase Event Streaming ProcessingSAP Sybase Event Streaming Processing
SAP Sybase Event Streaming Processing
 
Abap objects
Abap objectsAbap objects
Abap objects
 
Abap objects
Abap objectsAbap objects
Abap objects
 
Introducing enhancement framework.doc
Introducing enhancement framework.docIntroducing enhancement framework.doc
Introducing enhancement framework.doc
 
Spryker meetup-distribute-your-spryker-deployment-with-docker-and-kubernetes
Spryker meetup-distribute-your-spryker-deployment-with-docker-and-kubernetesSpryker meetup-distribute-your-spryker-deployment-with-docker-and-kubernetes
Spryker meetup-distribute-your-spryker-deployment-with-docker-and-kubernetes
 
VClipse – Xtext-based IDE for the SAP Variant Configurator
VClipse – Xtext-based IDE for the SAP Variant ConfiguratorVClipse – Xtext-based IDE for the SAP Variant Configurator
VClipse – Xtext-based IDE for the SAP Variant Configurator
 
Show and Tell: Building Applications on Cisco Open SDN Controller
Show and Tell: Building Applications on Cisco Open SDN Controller Show and Tell: Building Applications on Cisco Open SDN Controller
Show and Tell: Building Applications on Cisco Open SDN Controller
 
DSAG Jahreskongress 2018 - DevOps and Deployment Pipelines in SAP ABAP Landsc...
DSAG Jahreskongress 2018 - DevOps and Deployment Pipelines in SAP ABAP Landsc...DSAG Jahreskongress 2018 - DevOps and Deployment Pipelines in SAP ABAP Landsc...
DSAG Jahreskongress 2018 - DevOps and Deployment Pipelines in SAP ABAP Landsc...
 
Interactive Analytics using Apache Spark
Interactive Analytics using Apache SparkInteractive Analytics using Apache Spark
Interactive Analytics using Apache Spark
 
Exploring pwa for shopware
Exploring pwa for shopwareExploring pwa for shopware
Exploring pwa for shopware
 
SAP NetWeaver Portal OnDevice - Consuming your SAP NetWeaver Portal On Mobile...
SAP NetWeaver Portal OnDevice - Consuming your SAP NetWeaver Portal On Mobile...SAP NetWeaver Portal OnDevice - Consuming your SAP NetWeaver Portal On Mobile...
SAP NetWeaver Portal OnDevice - Consuming your SAP NetWeaver Portal On Mobile...
 
Academia abap
Academia abapAcademia abap
Academia abap
 
java training in chennai
java training in chennaijava training in chennai
java training in chennai
 
EclipseCon 2010 API Design and Evolution (Tutorial)
EclipseCon 2010 API Design and Evolution (Tutorial)EclipseCon 2010 API Design and Evolution (Tutorial)
EclipseCon 2010 API Design and Evolution (Tutorial)
 
Moderniser le legacy JEE avec les containers et les microservices: patterns a...
Moderniser le legacy JEE avec les containers et les microservices: patterns a...Moderniser le legacy JEE avec les containers et les microservices: patterns a...
Moderniser le legacy JEE avec les containers et les microservices: patterns a...
 
What is Enterprise Resource Planning, SAP and SAP FIORI?
What is Enterprise Resource Planning, SAP and SAP FIORI? What is Enterprise Resource Planning, SAP and SAP FIORI?
What is Enterprise Resource Planning, SAP and SAP FIORI?
 
Flex For Java Architects Ledroff Breizh Jug V Blog Cc
Flex For Java Architects Ledroff Breizh Jug V Blog CcFlex For Java Architects Ledroff Breizh Jug V Blog Cc
Flex For Java Architects Ledroff Breizh Jug V Blog Cc
 
Abap for sd consultatnt
Abap for sd consultatntAbap for sd consultatnt
Abap for sd consultatnt
 

More from Milind Patil

Step by step abap_input help or lov
Step by step abap_input help or lovStep by step abap_input help or lov
Step by step abap_input help or lovMilind Patil
 
Step bystep abap_fieldhelpordocumentation
Step bystep abap_fieldhelpordocumentationStep bystep abap_fieldhelpordocumentation
Step bystep abap_fieldhelpordocumentationMilind Patil
 
Step bystep abap_field help or documentation
Step bystep abap_field help or documentationStep bystep abap_field help or documentation
Step bystep abap_field help or documentationMilind Patil
 
Abap slides user defined data types and data
Abap slides user defined data types and dataAbap slides user defined data types and data
Abap slides user defined data types and dataMilind Patil
 
Abap slide lock Enqueue data clusters auth checks
Abap slide lock Enqueue data clusters auth checksAbap slide lock Enqueue data clusters auth checks
Abap slide lock Enqueue data clusters auth checksMilind Patil
 
Step bystep abap_changinga_singlerecord
Step bystep abap_changinga_singlerecordStep bystep abap_changinga_singlerecord
Step bystep abap_changinga_singlerecordMilind Patil
 
Abap slide lockenqueuedataclustersauthchecks
Abap slide lockenqueuedataclustersauthchecksAbap slide lockenqueuedataclustersauthchecks
Abap slide lockenqueuedataclustersauthchecksMilind Patil
 
Abap slide exceptionshandling
Abap slide exceptionshandlingAbap slide exceptionshandling
Abap slide exceptionshandlingMilind Patil
 
Step bystep abap_changinga_singlerecord
Step bystep abap_changinga_singlerecordStep bystep abap_changinga_singlerecord
Step bystep abap_changinga_singlerecordMilind Patil
 
Lecture16 abap on line
Lecture16 abap on lineLecture16 abap on line
Lecture16 abap on lineMilind Patil
 
Lecture14 abap on line
Lecture14 abap on lineLecture14 abap on line
Lecture14 abap on lineMilind Patil
 
Lecture13 abap on line
Lecture13 abap on lineLecture13 abap on line
Lecture13 abap on lineMilind Patil
 
Lecture12 abap on line
Lecture12 abap on lineLecture12 abap on line
Lecture12 abap on lineMilind Patil
 
Lecture11 abap on line
Lecture11 abap on lineLecture11 abap on line
Lecture11 abap on lineMilind Patil
 
Lecture10 abap on line
Lecture10 abap on lineLecture10 abap on line
Lecture10 abap on lineMilind Patil
 
Lecture09 abap on line
Lecture09 abap on lineLecture09 abap on line
Lecture09 abap on lineMilind Patil
 
Lecture08 abap on line
Lecture08 abap on lineLecture08 abap on line
Lecture08 abap on lineMilind Patil
 

More from Milind Patil (20)

Step by step abap_input help or lov
Step by step abap_input help or lovStep by step abap_input help or lov
Step by step abap_input help or lov
 
Step bystep abap_fieldhelpordocumentation
Step bystep abap_fieldhelpordocumentationStep bystep abap_fieldhelpordocumentation
Step bystep abap_fieldhelpordocumentation
 
Step bystep abap_field help or documentation
Step bystep abap_field help or documentationStep bystep abap_field help or documentation
Step bystep abap_field help or documentation
 
Abap slides user defined data types and data
Abap slides user defined data types and dataAbap slides user defined data types and data
Abap slides user defined data types and data
 
Abap slides set1
Abap slides set1Abap slides set1
Abap slides set1
 
Abap slide class3
Abap slide class3Abap slide class3
Abap slide class3
 
Abap slide lock Enqueue data clusters auth checks
Abap slide lock Enqueue data clusters auth checksAbap slide lock Enqueue data clusters auth checks
Abap slide lock Enqueue data clusters auth checks
 
Step bystep abap_changinga_singlerecord
Step bystep abap_changinga_singlerecordStep bystep abap_changinga_singlerecord
Step bystep abap_changinga_singlerecord
 
Abap slide lockenqueuedataclustersauthchecks
Abap slide lockenqueuedataclustersauthchecksAbap slide lockenqueuedataclustersauthchecks
Abap slide lockenqueuedataclustersauthchecks
 
Abap slide exceptionshandling
Abap slide exceptionshandlingAbap slide exceptionshandling
Abap slide exceptionshandling
 
Step bystep abap_changinga_singlerecord
Step bystep abap_changinga_singlerecordStep bystep abap_changinga_singlerecord
Step bystep abap_changinga_singlerecord
 
Abap reports
Abap reportsAbap reports
Abap reports
 
Lecture16 abap on line
Lecture16 abap on lineLecture16 abap on line
Lecture16 abap on line
 
Lecture14 abap on line
Lecture14 abap on lineLecture14 abap on line
Lecture14 abap on line
 
Lecture13 abap on line
Lecture13 abap on lineLecture13 abap on line
Lecture13 abap on line
 
Lecture12 abap on line
Lecture12 abap on lineLecture12 abap on line
Lecture12 abap on line
 
Lecture11 abap on line
Lecture11 abap on lineLecture11 abap on line
Lecture11 abap on line
 
Lecture10 abap on line
Lecture10 abap on lineLecture10 abap on line
Lecture10 abap on line
 
Lecture09 abap on line
Lecture09 abap on lineLecture09 abap on line
Lecture09 abap on line
 
Lecture08 abap on line
Lecture08 abap on lineLecture08 abap on line
Lecture08 abap on line
 

Recently uploaded

The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionDilum Bandara
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfPrecisely
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxLoriGlavin3
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfMounikaPolabathina
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfLoriGlavin3
 
unit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxunit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxBkGupta21
 

Recently uploaded (20)

The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An Introduction
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdf
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdf
 
unit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxunit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptx
 

Abap course chapter 1 introduction and first program

  • 1. ABAP Course Chapter 1 – Introduction and first program Lecturer: André Bögelsack, UCC Technische Universität München Author: Valentin Nicolescu, André Bögelsack ABAP Course André Bögelsack, Valentin Nicolescu 1
  • 2. Copyright 2008 UCC TU München All rights reserved  Weitergabe und Vervielfältigung dieser Publikation oder von Teilen daraus sind, zu welchem Zweck und in welcher Form auch immer, ohne die ausdrückliche schriftliche Genehmigung durch HCC TU München nicht gestattet. In dieser Publikation enthaltene Informationen können ohne vorherige Ankündigung geändert werden.  Microsoft®, WINDOWS®, NT®, EXCEL®, Word®, PowerPoint® und SQL Server® sind eingetragene Marken der Microsoft Corporation.  IBM®, DB2®, OS/2®, DB2/6000®, Parallel Sysplex®, MVS/ESA®, RS/6000®, AIX®, S/390®, AS/400®, OS/390® und OS/400® sind eingetragene Marken der IBM Corporation.  ORACLE® ist eine eingetragene Marke der ORACLE Corporation.  INFORMIX®-OnLine for SAP und Informix® Dynamic ServerTM sind eingetragene Marken der Informix Software Incorporated.  UNIX®, X/Open®, OSF/1® und Motif® sind eingetragene Marken der Open Group.  Citrix®, das Citrix-Logo, ICA®, Program Neighborhood®, MetaFrame®, WinFrame®, VideoFrame®, MultiWin® und andere hier erwähnte Namen von Citrix-Produkten sind Marken von Citrix Systems, Inc.  HTML, DHTML, XML, XHTML sind Marken oder eingetragene Marken des W3C®, World Wide Web Consortium, Massachusetts Institute of Technology.  JAVA® ist eine eingetragene Marke der Sun Microsystems, Inc.  JAVASCRIPT® ist eine eingetragene Marke der Sun Microsystems, Inc., verwendet unter der Lizenz der von Netscape entwickelten und implementierten Technologie.  SAP, SAP Logo, R/2, RIVA, R/3, SAP ArchiveLink, SAP Business Workflow, WebFlow, SAP EarlyWatch, BAPI, SAPPHIRE, Management Cockpit, mySAP, mySAP.com und weitere im Text erwähnte SAP-Produkte und -Dienstleistungen sowie die entsprechenden Logos sind Marken oder eingetragene Marken der SAP AG in Deutschland und anderen Ländern weltweit. MarketSet und Enterprise Buyer sind gemeinsame Marken von SAP Markets und Commerce One.  Alle anderen Namen von Produkten und Dienstleistungen sind Marken der jeweiligen Firmen.  Die Verwendung der Screenshots wurde mit dem jeweiligen Eigner abgesprochen. ABAP Course André Bögelsack, Valentin Nicolescu 2
  • 3. Agenda 1. Introduction to ABAP 2. The use of ABAP in SAP systems 3. Development prerequisites 4. First program ‚Hello World!‘ + Exercise 5. Online help for ABAP ABAP Course André Bögelsack, Valentin Nicolescu 3
  • 4. What is ABAP? • ABAP = Advanced Business Application Programming • Similarities with Cobol and Pascal • Established in 1980 • Since 1998 object oriented ABAP objects established • Fully compatible to older versions • Multilanguage support • Embedded SQL statements • Platform independent • Database independent • Reusability of code fragments ABAP Course André Bögelsack, Valentin Nicolescu 4
  • 5. Historical view on ABAP 1950 Machine code …. Assembler 1954 Fortran Cobol LISP PL1 …. 1968 Smalltalk Pascal …. 1980 ABAP C++ …. Java 1992 ABAP Objects Source: Following SAP AG ABAP Course André Bögelsack, Valentin Nicolescu 5
  • 6. Compiling ABAP Presentation SAPGui SAPGui SAPGui layer Calls program Short message Runs program for the first time about compiling Application Application Application Application layer server server server Compiling Database Database Database Database server server server layer Program has to Return compilation be compiled ABAP ABAP Source Compilation code Source: Following SAP AG ABAP Course André Bögelsack, Valentin Nicolescu 6
  • 7. ABAP Repository Client 900 Client 901 Application Application data data User User accounts accounts Client dependent Client dependent Customizing Customizing Client independent customizing Repository (tables, programs, function groups …) Divided into development classes FI CO PP TR PS PY BC KM PA FS … Source: Own illustration ABAP Course André Bögelsack, Valentin Nicolescu 7
  • 8. Prerequisites for ABAP development 1. Access to repository (is maintained in client settings) 2. User with development profile and access key 3. Own package and own transport request 4. Pay attention to the namespaces ABAP Course André Bögelsack, Valentin Nicolescu 8
  • 9. Prerequisites for ABAP development 1. Access to repository (is maintained in client settings) – Access to repository is needed – Check access in transaction SCC4 ABAP Course André Bögelsack, Valentin Nicolescu 9
  • 10. Prerequisites for ABAP development 2. User with development profile and access key – The access key allows development of new programs or changes to existing one – Access key are always username dependent! – Access keys must be requested from SAP as license cost increase by the number of development users – Access keys can be obtained from your local UCC ABAP Course André Bögelsack, Valentin Nicolescu 10
  • 11. Prerequisites for ABAP development 3. Own package and own transport request – Own packages enable you to group your developments – Transport requests enable you to transport new developments to other SAP systems – You may develop new programs using the local package $TMP, but transport of these developments is not possible ABAP Course André Bögelsack, Valentin Nicolescu 11
  • 12. Prerequisites for ABAP development 4. Pay attention to the namespaces – Only use namespace Y and Z, e.g. ZZ_* or YY_* as these are customer namespaces – SAP uses namespace from A to X for own programs and implementations – Changing SAP objects is not possible unless you have a modification key ABAP Course André Bögelsack, Valentin Nicolescu 12
  • 13. Transport of ABAP developments Development Quality Assurance Production System (DEV) System (QAS) System (PROD) Source: Own illustration • Developments are transported from DEV to QAS using transport requests • Exporting transport requests creates files for transportation • You may either import all or only one transport request in your destination system ABAP Course André Bögelsack, Valentin Nicolescu 13
  • 14. Transport hierarchy Project Transport Transport Transport request request request Task Task Task Task Task Task Developer Developer Developer Developer Developer Source: Own illustration ABAP Course André Bögelsack, Valentin Nicolescu 14
  • 15. Transport requests in repository Client 900 Client 901 Application Application data data User User accounts accounts Client dependent Client dependent Customizing Customizing Client independent customizing Transport request 1 Transport request 2 FI CO PP TR PS HR BC KM PA FS … Source: Own illustration ABAP Course André Bögelsack, Valentin Nicolescu 15
  • 16. Transport requests: releasing and exporting • Release of transport requests can be done in Transport Manager TA SE09 or SE10 • First release all tasks, then release transport request • Tasks have to be released by each developer • In urgent situations a task can be taken over to complete the export ABAP Course André Bögelsack, Valentin Nicolescu 16
  • 17. The first program: Hello World! 1. Create a new package 2. Create a new transport request 3. Create the new program 4. Enter access key 5. Adjust program attributes 6. Assign program to package 7. Save, check and activate program 8. Release and export new program ABAP Course André Bögelsack, Valentin Nicolescu 17
  • 18. Online help for ABAP • ABAP help (http://help.sap.com/saphelp_nw04/helpdata/de/d3/2e974d35c51 1d1829f0000e829fbfe/frameset.htm) • SAP marketplace (www.service.sap.com) • SAP Community Network (www.sdn.sap.com) • Transaction ABAPDOCU • Books: – ABAP-Objects, SAP PRESS, ISBN-13: 978-1592290796 – The Official ABAP Reference, SAP PRESS, ISBN-13: 978- 1592290390 ABAP Course André Bögelsack, Valentin Nicolescu 18