SAP ABAP Programming

CMIS 495 / CIS 588

Spring 2004


Instructor:    Jo Ellen Moore, Ph.D.              

618-650-5816 (voice)                                             

618-650-3979 (fax)

Founders Hall 2310

Office hours:  TBA




(1)       Proficiency in another programming language (e.g., C++, Cobol)

(2)       Understanding of relational database concepts and basic SQL coding


Course Objectives


+          To understand what SAP R/3 is, why companies adopt it, and the role of ABAP programmers.


+          To differentiate between the two types of ABAP programs (list and dialog) and develop expertise in coding list programs.


+          To develop knowledge and skills needed to work in the SAP R/3 development environment, which includes the ABAP Data Dictionary and the ABAP Workbench.


+          To write ABAP applications commonly needed by SAP R/3 shops, including basic, detail and interactive lists.


+          To effectively utilize sophisticated selection screens, internal tables, subroutines, and other advanced features in ABAP list programming.


Course Materials


Text:                ABAP/4: Programming the SAP R/3 System (second edition)

                        by Bernd Matzke

                        Addison-Wesley (2001)


Hardcopies of Jo Ellen’s slides and other handouts will be distributed in class.


Access to SAP R/3


You can access SAP R/3 and our training database in both Founders Hall computer labs (FH 301 and FH 2301).  You can also access our R/3 training environment via the Internet, but you will need to install the SAP client component on your home PC to do so.  More on this in class.




The following scale will be used to assign grades.  No curves will be applied.


Percent of Total Possible Points           Grade

90% or higher                                       A

80 to 89%                                             B

70 to 79%                                             C

60 to 69%                                             D

Less than 60%                                     E


The following assessments will determine the total points you earn in the class.  The total possible points in the course will be 650 for undergraduates (CMIS 495) and 700 for graduate students (CIS 588).


Assessment                                                                                     Possible Points


  Exam 1                                                                                                         100

  Exam 2                                                                                                         100

  Exam 3                                                                                                         100

  Exam 4                                                                                                           50

  Project 1                                                                                                         10

  Project 2                                                                                                         40

  Project 3                                                                                                         50

  Project 4                                                                                                         50

  Project 5                                                                                                         50

  Project 6                                                                                                         50

            CMIS 495 students complete one of the following;

            CMIS 588 students complete both.

  Article Project                                                                                                50

  Cool Thing Project                                                                                        50


Total Possible Points:                                                                                  700



IMPORTANT Course Policies!






            All projects (except the Cool Thing Project) are to be done individually.  If it is determined that you copied someone else’s work, you will receive a failing grade for the course.


This action is in accordance with the SIUE policy on plagiarism that states: “… a student who plagiarizes shall receive a grade of F in the course in which the act occurs. The offense shall also be reported to the Provost. A student who is reported a second time shall be suspended for a period of not less than one term. Should a student who has been suspended for plagiarism be readmitted and be again found guilty of the offense, he/she shall be permanently expelled from the University.”  For further details, see .


Don’t even think about copying someone else’s work.  You are here to learn.  Doing your own work on assignments is a crucial part of the learning process.  Exams will be designed to “unmask” students who may not have done their own work on a homework assignment.





            Let’s face it – in a programming class there’s no time to fall behind AND RECOVER.  So you need to not fall behind.


Each assignment will carry an explicit due date, always a class meeting date.  The assignment is due AT THE BEGINNING OF CLASS that night.  An assignment submitted after the due date/time will receive a deduction of 10% for each day it is late (including weekends and holidays).  After one full week has passed, the assignment will receive no credit.  In other words, if a project was due at the beginning of class on Monday and by the following Monday you still cannot submit it, hang it up baby.  It’s too late.  You would likely want to make an appointment with the instructor to discuss the probability that you could still pass the class without the chunk of knowledge associated with the project you were unable to complete.




Week-by-Week Plan


Week 1 (Jan 12)


            Topics:           Course overview

Overview of ERP concept

                                    Overview of SAP R/3 product

                                    Role of ABAP programmers

                                    Initiate the Article Paper project


[ Jan 19 – NO CLASS due to MLK holiday ]


Week 2 (Jan 26)


            Topics:           Overview of SAP R/3 Basis architecture

                                    Basics of ABAP Workbench

                                    ABAP Data Dictionary concepts


            Project Out:    Project 1


Week 3 (Feb 2)


            Topics:           ABAP Select statement

                                    Data definitions in ABAP

                                    Screen prints in R/3


            Due:                Project 1


            Project Out:    Project 2 - Basic List Programming


Week 4 (Feb 9)


            Topics:           Principle ABAP statements

Basic list programming

                                    Some advanced list techniques


Week 5 (Feb 16)


            Topics:           Overview of program level events

                                    Internal tables


            Due:                Project 2


Week 6 (Feb 23)


            Exam 1 (up to but not including internal tables)


            More on internal tables


Week 7 (Mar 1)


            Topics:           Review of internal tables

                                    Filling an internal table from a database table

Control level processing


            Due:                Article Project


            Project Out:    Project 3 - Control Processing with Internal Tables


Week 8 (NO CLASS due to Spring Break)


Week 9 (Mar 15)


            Topics:           Finishing up internal tables

                                    Control level processing (CLP)


Week 10 (Mar 22)


            Topics:           Advanced selection screen techniques


            Due:                Project 3


            Project Out:    Project 4 - Advanced Basic Lists


Week 11 (Mar 29)


            Topics:           Interactive list programming (drill-down reports)


            Due:                Project 4


            Project Out:    Project 5 - Single-Level Interactive List


Week 12 (Apr 5)


            Topics:           Multiple detail lists



            Due:                Project 5


            Project Out:    Project 6 - Multiple-Level Interactive List


Week 13 (Apr 12)


            Exam 2 (through internal tables and CLP)


            A couple of cool things from me


Week 14 (Apr 19)


            Cool Thing presentations


            Due:                Project 6


Week 15 (Apr 26)


            Exam 3


            Cool Thing presentations


            Distribute Final Exam (Exam 4) as take-home due at Final Exam period




            Final exam day and time TBA