Teil I Das R/3-System - Struktur, Komponenten und Bedienung 1

Ähnliche Dokumente
Der Beginn einer wunderbaren Freundschaft von Stefan Schnell

VBA-Programmierung: Zusammenfassung

Theorie zu Übung 8 Implementierung in Java

Repetitorium Informatik (Java)

zu große Programme (Bildschirmseite!) zerlegen in (weitgehend) unabhängige Einheiten: Unterprogramme

jetzt lerne ich PHP 5 & MySQL 4.1 Der schnelle Einstieg in die objektorientierte

Softwaretechnik Folge 9 ABAP-Programmierung für ERP-Systeme

Die Client/Server- Technologie des SAP-Systems R/3

Informationsverarbeitung im Bauwesen

Teil 2: OOP und JAVA (Vorlesung 11)

Inhaltsverzeichnis. 2.2 Grundlagen der UML Zusammenfassung... 53

5... Projekt»Flugbuchung«: Anforderungsanalyse und Umsetzungsplan

<Trainingsinhalt> XML und Datenbanken

Datenmanagement in Android-Apps. 16. Mai 2013

Übung 1 mit C# 6.0 MATTHIAS RONCORONI

Eclipse und EclipseLink

Regionaltreffen Rhein Main 26. März 2007

ABAP - Next Generation

Kap. 9 Datenmodellierung und verwaltung

Java, OO und UML Fortsetzung

Inhalt. Vorbemerkungen... 1

Technik der SAP-Anbindung Christian Aigner Team Entwicklung, Kranzberg

Prozedurale Datenbank- Anwendungsprogrammierung

4.Grundsätzliche Programmentwicklungsmethoden

magnum C++ WALTER SAUMWEBER kompakt komplett kompetent

A Datenbanken. A.1 Firebird. A.1.1 Installation des Servers. A.1.2 Installation der Beispieldatenbanken. Datenbanken 1

Java Einführung Objektorientierte Grundkonzepte

Vererbung & Schnittstellen in C#

Inhaltsüberblick. I. Grundbegriffe - Objekte und Klassen. Organisatorisches. I. Grundbegriffe - Objektorientierte Konzepte

Cubeware Connectivity for SAP Solutions

Inhalt. TEIL I Grundlagen. 1 SAP HANA im Überblick Einführung in die Entwicklungsumgebung... 75

Bildungspläne zur Erprobung. Teil III: Fachlehrplan Wirtschaftsinformatik. Grundkurs

1 ALLGEMEINES ZU DYNAMICS NAV Geschichte zu Dynamics NAV Datenbank Wo bekommt man Hilfe zu Dynamics NAV?...

FME Desktop. Data in Motion

UML-Basics: Einführung in Objekt- Orientierte Modellierung mit der Unified Modeling Language

Swetlana Stickhof. Universität Heidelberg

Knasmüller.book Seite vii Mittwoch, 28. März : vii. Inhaltsverzeichnis

Java. Prof. Dr. Stefan Enderle NTA Isny

Eine Klasse beschreibt Objekte mit gleichen Attributen und Methoden.

Übersicht. Vorstellung des OO-Paradigmas

1 Einführung Erste Schritte Programmierkurs Datentypen Weiterführende Programmierung

Einführung in die Informatik

Multimediale Web-Anwendungen. JavaScript. Einführung. MWA JavaScript-Einführung Dr. E. Schön Sommersemester 2015 Folie 1.

11/2009 Bernhard Gangl. Steuerungen mit OOP entwickeln 11 / Themenübersicht. Übersicht und Begriffsklärung: Objektorientierte Programmierung

Oracle Datenbankprogrammierung mit PL/SQL Grundlagen

2 Produkt- und Supportübersicht für DB Zusatzprogramme für DB Technische Unterstützung für DB2 UDB... 20

zu große Programme (Bildschirmseite!) zerlegen in (weitgehend) unabhängige Einheiten: Unterprogramme

Probeklausur: Programmierung WS04/05

Michael Weigend. Python GE-PACKT. 5. Auflage

1 Einsatz des SAP Code Inspectors Konfiguration und Funktionen des SAP Code Inspectors... 67

DAS EINSTEIGERSEMINAR PHP 5.3 LERNEN ÜBEN ANWENDEN. Oliver Leiss Jasmin Schmidt. 3. Auflage

A.4 Beispiel zum -Versand über Smart Forms

Software Engineering. Zur Architektur der Applikation Data Repository. Franz-Josef Elmer, Universität Basel, HS 2015

Michael Weigend. Python GE-PACKT

i i apitel apitel K K Inhalt Inhalt

Überlegungen zur Entwicklung von Access- Anwendungen

Semtation GmbH SemTalk

Inhaltsverzeichnis. 1 Hallo 13

Software-Entwurfsmuster

<Trainingsinhalt> C# programmieren

Einführung in die C-Programmierung

GEOPROCESSING UND MODELBUILDER

Softwareschnittstellen

Inhaltsverzeichnis. 1 Einleitung 11

Objektorientierte und Funktionale Programmierung SS 2014

Objekt-Funktionale Programmierung. am Beispiel von SCALA. Thorsten Jolitz

wenige Konzepte, keine Adressen, Anlehnung an C++ -Syntax Vererbung, Polymorphie/dynamisches Binden, umfangreiche Klassenbibliotheken

Inhaltsverzeichnis. Teil I Erste Schritte. 1 Einleitung Teil II Grundlagen von VBA. 2 Die ersten VBA-Prozeduren erstellen...

Refactoring von Legacy Systemen. Jochen Winzen andrena objects ag

Wiederholung zur Vorlesung Programmieren

IBM Informix SQL. Seminarunterlage. Version vom

S(tructured)Q(uery)L(anguage)

Programmierpraxis mit

Anzeige des Java Error Stack in Oracle Forms

Objektorientierte Programmierung mit Java. Grundlagen Übersicht. Programmiersprachen

Gliederung und Einordnung

Inhaltsverzeichnis. Vorwort... XIII

IAC-Programmierung HELP.BCFESITSIACPROG. Release 4.6C

Einführung Design und Programmierung. Microsoft Dynamics NAV 2016

Inhaltsverzeichnis. Fritz Jobst. Programmieren in Java ISBN: Weitere Informationen oder Bestellungen unter

Grundlagen des Software Engineering

SIMATIC PCS 7 V8.2 Open OS. Integration von Package Units ohne Nebenwirkungen

Einführung in Java. PING e.v. Weiterbildung Andreas Rossbacher 24. März 2005

Factory Method (Virtual Constructor)

1 Grundbegriffe Datenbanksysteme Entwicklung von Datenbanksystemen Inhaltsverzeichnis. 1.1 Information und Daten...

ODBC-Treiber Programmübersicht

Überschreiben von Methoden

Andy Hunt. Programmieren lernen. mit Minecraft-Plugins. dpunkt.verlag

jetzt lerne ich Der einfache Einstieg in Object Pascal Für alle Versionen bis einschließlich Delphi 2006 THOMAS BINZINGER

Projekt: RFC to FTP. Szenario der serviceorientierten Anwendungsintegration. Sebastian Altendorf Dirk Brillski David Gebhardt

CLR CIL MCS ECMA-335. Linux.Ne t Albrecht Liebscher, Erlanger Linux Tage

10.6 Programmier-Exits für Workitems

Modul 122 VBA Scribt.docx

3 Anwendungsarchitektur und Entwicklungsumgebung

Inhaltsverzeichnis. Teil I Grundlagen der Programmarchitektur Vorwort... XIII XV XVI XVI

Inhalt. Teil I: Der Sprachkern von JavaScript

Tutorium Java. Softwaretechnologie: Java I. Marco Jürgens und Mihail Atanassov.

ISACA After Hours Seminar vom

Kompaktseminare Das MS Access 2010 Kursprogramm

Transkript:

ix Teil I Das R/3-System - Struktur, Komponenten und Bedienung 1 1 Betriebswirtschaftliche Anforderungen 3 1.1 Anforderungen an Anwendungsprogramme............ 5 1.2 Anforderungen an Anwendungssysteme............... 6 1.3 R/3 als Client/Server-System........................ 9 1.4 Anforderungen an die verwendete Programmiersprache.. 13 1.5 Herausforderung und Chance für ABAP-Entwickler..... 15 2 Datenbanktabellen im R/3-System 17 2.1 Tabellen zur Datenspeicherung..................... 17 2.1.1 Relationale Datenbanken und Tabellen........ 17 2.1.2 Datenschlüssel........................... 18 2.1.3 Fremdschlüsselbeziehungen und -prüfungen.... 19 2.1.4 Tabellen anzeigen und bearbeiten............ 23 2.2 Tabellen zur System- und Anwendungssteuerung....... 25 2.3 Datenbanktabellen und interne Tabellen.............. 26 3 Anwendungsübergreifende Funktionen 27 3.1 Kommunikationsfunktionen....................... 27 3.2 Systemfunktionen............................... 29 3.3 Hilfefunktionen................................. 32

x 4 Bedienung des R/3-Systems 37 4.1 Struktur der R/3-Bedienoberfläche.................. 37 4.2 SAP Easy Access................................ 48 4.3 Eingabehilfen.................................. 49 4.4 Bedienung von Anwendungen und Funktionen......... 54 4.5 Navigation zwischen Anwendungen................. 57 4.5.1 Allgemeine Navigation.................... 58 4.5.2 Spezifische Navigation.................... 58 4.5.3 Mehrere R/3-Fenster...................... 59 5 Erster praktischer Kontakt mit der ABAP Workbench 61 5.1 An- und Abmelden im R/3-System.................. 61 5.2»Hello World«-Programm........................ 65 5.3 Benutzerindividuelle Einstellungen.................. 75 Teil II Grundlagen der ABAP-Programmierung 81 6 Objekte und Tools der ABAP Workbench 83 6.1 Programmiertools und -objekte..................... 84 6.1.1 ABAP Editor............................ 85 6.1.2 Dictionary.............................. 86 6.1.3 Menu Painter........................... 88 6.1.4 Class Builder............................ 90 6.1.5 Screen Painter........................... 91 6.1.6 Object Navigator........................ 93 6.2 Zusatztools.................................... 98 6.3 Systemfelder................................... 98 6.4 Debugger..................................... 99 6.5 Inaktive Sourcen............................... 100 7 ABAP grundlegende Sprachkonzepte 105 7.1 Ereignisse, Datenbankzugriffe und interne Tabellen.... 106 7.2 ABAP-Programme und -Reports................... 108 7.3 ABAP-Programm Struktur und Sprachbefehle....... 110

xi 7.4 Datentypen im R/3-System....................... 111 7.4.1 Dictionary-Typkonzept................... 112 7.4.2 ABAP-Typkonzept....................... 113 7.4.3 Zuordnung von ABAP-Typen zu Dictionary-Typen....................... 115 7.5 Syntaxregeln und -prüfung....................... 115 7.6 Laufzeitumgebung für ABAP-Programme............ 119 7.7 Systemfelder für das klassische Reporting............ 121 8 Klassische Listenprogrammierung (Lektionen 1-6) 123 Lektion 1 Zuweisungen und Rechenoperationen, Ein- und Ausgabe von Daten..................... 123 Anforderung: Eigene Eingabe-, Hilfs- und Ausgabefelder definieren, einfache Rechen-operationen Lösung: PARAMETERS, CONSTANTS, DATA, MOVE und WRITE Aufgabe 1: Währungsbetrag in Euro umrechnen und ausgeben Lektion 2 Verzweigungen und Schleifen.................... 134 Anforderung: Bedingtes und wiederholtes Ausführen von Anweisungen Lösung: IF- bzw. CASE-Verzweigung, Schleifen mit DO bzw. WHILE Aufgabe 2: Euro-Umrechnungstabelle Lektion 3 Datenbankzugriff über SQL-Befehle............... 144 Anforderung: Direkter Datenbankzugriff im Report Lösung: SQL-SELECT, SELECT-OPTIONS Aufgabe 3: Hierarchische Flugdatenanzeige mit SELECT Lektion 4 Datenbankzugriff über logische Datenbanken........ 156 Anforderung: Trennung der Datenbeschaffung von Datenverarbeitung Lösung: Einbinden einer logischen Datenbank, GET Aufgabe 4: Hierarchische Flugdatenanzeige mit der LDB F1S Lektion 5 Interne Verarbeitung externer Daten............... 161 Anforderung: Schnelles Umsortieren zur Laufzeit Lösung: Interne Tabelle, APPEND, SORT, LOOP Aufgabe 5: Flugdatenliste mit unterschiedlicher Sortierung Lektion 6 Strukturierung und Modularisierung............... 171 Anforderung: Übersichtliche Programmstruktur und Wiederverwendung von Code Lösung: TYPES, FORM, PERFORM, CALL FUNCTION Aufgabe 6: Flugdatenliste mit unterschiedlicher Sortierung

xii Teil III Objektorientierte Programmierung mit ABAP Objects 179 9 Objektorientierung mit ABAP Objects Denkweise und Features 181 9.1 Was ist Objektorientierung?...................... 182 9.2 Klassen und Objekte............................ 186 9.3 Attribute und Methoden......................... 190 9.3.1 Statische Attribute und Methoden.......... 191 9.3.2 Konstruktoren und Destruktoren........... 192 9.4 Kapselung und Sichtbarkeit....................... 192 9.5 Vererbung und Wiederverwendbarkeit.............. 193 9.5.1 Sichtbarkeit in einer Klassenhierarchie....... 195 9.5.2 Polymorphie........................... 196 9.6 Interfaces.................................... 197 9.7 Events....................................... 198 9.8 Globale und programmlokale Klassen............... 199 9.9 Der Class Builder.............................. 200 10 Klassen und Objekte (Lektionen 7-9) 203 Lektion 7 Eigene Klassen und Objekte erzeugen.............. 205 Anforderung: Definition, Implementation und Erzeugung, Attribute verändern Lösung: CLASS DEFINITION, IMPLEMENTATION, TYPE REF TO, CREATE OBJECT Aufgabe 7: Autos entwerfen, erzeugen und zulassen Lektion 8 Methoden anwenden........................... 213 Anforderung: Methoden anwenden, automatisches Setzen von Attributen bei Erzeugung Lösung: METHODS, CALL METHOD, CONSTRUCTOR Aufgabe 8: Autos, die fahren Lektion 9 Zugriff auf private Attribute..................... 220 Anforderung: Kapselung Lösung: PUBLIC, PROTECTED und PRIVATE SECTION Aufgabe 9: Autos, die fahren und tanken

xiii 11 Unterklassen, Interfaces und Events (Lektionen 10-12) 225 Lektion 10 Vererbung................................... 226 Anforderung: Taxi-Klasse bauen mit Taximeter-Methode Lösung: CLASS INHERITING FROM Aufgabe 10: Taxis, die fahren, tanken und verdienen Lektion 11 Interfaces.................................... 241 Anforderung: Allgemeine Schnittstellen-Spezifizierung zur Polymorphie Lösung: INTERFACES, INTERFACE... ENDINTERFACE Aufgabe 11: Taxis und Firmenwagen mit gleicher Schnittstelle Lektion 12 Events...................................... 255 Anforderung: Automatische Reaktion auf Ereignisse durch Methoden Lösung: EVENTS, RAISE EVENT, SET HANDLER Aufgabe 12: Autos, die auf vollen bzw. leeren Tank selbstständig reagieren 12 Programmierung und Testen globaler Klassen (Lektionen 13-14) 271 Lektion 13 Anlegen von globalen Klassen und Interfaces......... 272 Anforderung: Vorhandene lokale Klasse per Knopfdruck in globale wandeln/neue Klassen sofort global anlegen Lösung: Nutzung des Import-Befehls, Beachtung einiger Randbedingungen Aufgabe 13: Import von lokalen Klassen bzw. Interfaces, anlegen globaler Klassen Lektion 14 Testen globaler Klassen, Interfaces und Events....... 289 Anforderung: Vorhandene globale Klasse Auto mit automatisch erzeugten Objekten testen Lösung: Aufruf der Testumgebung Aufgabe 14: Globale Klasse und Interface testen Teil IV Weiterführende klassische und moderne Dialogtechniken 299 13 Klassische Dialoganwendungen innerhalb des R/3-Systems 301 13.1 Steuerung, Logik und Datentransport bei Transaktionen. 302 13.2 Steuerung, Logik und Datentransport beim Interaktiven Reporting.................................... 304

xiv 14 SAP-Dialogtransaktionen und interaktives Reporting (Lektionen 15-16) 307 Lektion 15 Dialogtransaktion zur Euro-Umrechung............ 307 Anforderung: Realisierung einer Funktion mit Eingabe-/Ausgabe- Aktionen Lösung: Screen Painter, MODULE... ENDMODULE, PBO, PAI, LEAVE TO SCREEN, SET PF-STATUS, SET TITLEBAR Aufgabe 15: Taschenrechner zur Euro-Umrechnung Lektion 16 Interaktive Verzweigungsliste für Details............ 333 Anforderung: Nutzung von verschiedenen Detailfunktionen/ Sortierkriterien pro Liste Lösung: AT LINE-SELECTION, HIDE, Funktionscode Aufgabe 16: Anzeige von Detaildaten zur Flugliste 15 Einbindung externer Dialoganwendungen über SAP GUI-Controls 343 15.1 Konzept und Funktionsweise der SAP-Controls....... 343 15.2 Integration von externen Anwendungen............. 347 16 ABAP-Integration von Web-Browser und Tabellenkalkulation (Lektionen 17-18) 353 Lektion 17 Verknüpfung von Web- und R/3-Datenbankzugriff über ABAP................................... 354 Anforderung: Einbindung eines Web-Browsers in ein ABAP- Programm Lösung: Customer-Controls, SET SCREEN Aufgabe 17: Web-Zugriff integriert in R/3-Anwendung und ABAP-Datenbankauswertung Lektion 18 Integration von Office-Anwendungen in ABAP-Programme............................. 365 Anforderung: Excel-Integration in einem ABAP-Programm Lösung: GUI-Controls Aufgabe 18: Flugdatenanzeige mit Excel im R/3-Fenster

xv Anhang A1 Häufige Fragen und Fehler 375 A1.1 Häufig gestellte Fragen.......................... 375 A1.2 Häufig auftretende Fehler........................ 379 A1.2.1 Compilierfehler......................... 379 A1.2.2 Laufzeitfehler.......................... 382 A1.2.3 Modellierungs- und Designfehler............ 384 A2 Aktuelles zu ABAP im Web 391 A3 Literatur 393 A3.1 ABAP-Programmierung.......................... 393 A3.2 Objektorientierung............................. 395 A3.3 SAP R/3-System................................ 396 A3.4 Wirtschaftsinformatik........................... 397 A4 Stichwortverzeichnis 399