Programmverständnis III - komplexeres Bsp.

Getting started ... Alles für einen gelungenen Start.
5 Beiträge • Seite 1 von 1
5 Beiträge Seite 1 von 1

Programmverständnis III - komplexeres Bsp.

Beitrag von Jan_M. (ForumUser / 22 / 0 / 0 ) »
Hallo,

habe mir mal wieder ein kleines Beispiel rausgesucht und versucht nachzuvollziehen - vielleicht könnt ihr mal aus Expertensicht sagen, was sich hier so in den Zeilen alles tut, damit ich vergleichen kann - laufen tut das Programm soweit schon.


START-OF-SELECTION.
PERFORM read_flights.

END-OF-SELECTION.
PERFORM display_flights.
set PF-Status 'S_BASE'.
set titlebar 'T_BASE'.
clear wa_sflight-fldate.

AT SELECTION-SCREEN .
AUTHORITY-CHECK OBJECT 'S_CARRID'
ID 'CARRID' FIELD pa_car
ID 'ACTVT' FIELD '03'.
CHECK sy-subrc NE 0.
MESSAGE e045 WITH pa_car.

AT USER-COMMAND.
CASE sy-ucomm.
WHEN 'BOOK'.
CHECK NOT wa_sflight-fldate IS INITIAL.
PERFORM read_bookings USING wa_sflight-carrid
wa_sflight-connid
wa_sflight-fldate
not_cancelled
CHANGING it_sbook.
SORT it_sbook BY carrid connid fldate bookid.
PERFORM display_bookings.
SET PF-STATUS 'S_BOOK'.
SET TITLEBAR 'T_BOOK'.
CLEAR: wa_sflight-fldate.
ENDCASE.

FORM read_flights.
SELECT * FROM sflight INTO TABLE it_sflight
WHERE carrid = pa_car
AND connid IN so_con.
ENDFORM.


FORM display_flights.
LOOP AT it_sflight INTO wa_sflight.
WRITE: / wa_sflight-carrid,
wa_sflight-connid,
wa_sflight-fldate,
wa_sflight-price CURRENCY wa_sflight-currency,
wa_sflight-seatsmax,
wa_sflight-seatsocc.

HIDE: wa_sflight-carrid,
wa_sflight-connid,
wa_sflight-fldate.




ENDLOOP.
ENDFORM.

FORM read_bookings USING p_carrid TYPE sbook-carrid
p_connid TYPE sbook-connid
p_fldate TYPE sbook-fldate
p_cancelled TYPE sbook-cancelled
CHANGING p_it_sbook LIKE it_sbook.
SELECT * FROM sbook INTO CORRESPONDING FIELDS OF TABLE p_it_sbook
WHERE carrid = p_carrid
AND connid = p_connid
AND fldate = p_fldate
AND cancelled = p_cancelled.




ENDFORM. " read_bookings

FORM display_bookings.
LOOP AT it_sbook INTO wa_sbook.
WRITE: / wa_sbook-bookid,
wa_sbook-customid,
wa_sbook-custtype,
wa_sbook-luggweight UNIT wa_sbook-wunit,
wa_sbook-wunit,
wa_sbook-class,
wa_sbook-order_date,
wa_sbook-cancelled.
ENDLOOP.
ENDFORM.


Danke für eure Tips

gesponsert
Stellenangebote auf ABAPforum.com schalten
kostenfrei für Ausbildungsberufe und Werksstudenten


Beitrag von Chrisu (Specialist / 225 / 0 / 1 ) »
Wäre es nicht sinnvoller für dich die Codezeilen Schritt für Schritt selbst durchzugehen? Nur Beispiele aus den BC* Scripten zu kopieren und sie uns interpretieren lassen kanns ja nicht sein.

Grundsätzlich: Schau dir mal die F1 Hilfe zu den Schlüsselwörtern an, die ist sehr ausführlich und oft mit Beispielen geschmückt.

Ablauf:

Am Selektionsbild wird per AUTHORITY-CHECK geprüft ob der Anwender für eine Fluggesellschaft eine gültige Berechtigung zum Berechtigungsobjekt S_CARRID in seinem Benutzerstammsatz hat

Zuerst werden die Flüge selektiert und in eine IT gestellt.
Dann werden die Zeilen der IT per Loop in einen WA ausgegeben.
Die Anweisung

Code: Alles auswählen.

wa_sflight-price CURRENCY wa_sflight-currency
bewirkt dass das (Währungs-)Feld wa_sflight-price gemäß wa_sflight-currency aufbereitet wird (Nachkommastellen)
Direkt nach der Ausgabe einer Zeile werden die Schlüsselfelder in den Hide Bereich gestellt. damit die Werte bei gültiger Zeilenauswahl bei AT USER-COMMAND (oder zb. AT LINE-SELECTION) wieder zur Verfügung stehen.

AT USER-COMMAND: User Interaktion auf der Grundliste.
Bei Auslösen des Funktionscodes BOOK passiert folgendes:
Prüfen auf gültige Zeilenauswahl.
Lesen der Buchungen zum Flug.
Ausgeben der Buchungen.

Das ist der grundsätzliche Ablauf.

Beitrag von Jan_M. (ForumUser / 22 / 0 / 0 ) »
ja chrisu, das mach ich ja auch, nur als absoluter Neuling sind die Hilfetexte auch nicht so einfach zu verstehen, und einiges könnt ihr hier echt super darlegen bzw. erläutern.

Danke nochmals

Beitrag von Chrisu (Specialist / 225 / 0 / 1 ) »
Darf ich fragen wie dein "Status" bei der SAP Entwicklung ist? Befindest du dich in einer Schulung? Dann wär es vielleicht gut den Ausbildner ein wenig zu quälen ;)
Oder versuchst du privat dir SAP Entwicklung beizubringen? ... :roll:

Beitrag von Jan_M. (ForumUser / 22 / 0 / 0 ) »
Ja ich befinde mich zur Zeit in einer Umschulung, greife aber zusätzlich noch auf Material von einer Universität zurück. - und das ist anders aufgebaut als unsere Schulungsunterlagen.

Nunja und unser Tutor von der Umschulung hat so schon zuviel zutun ;(

Seite 1 von 1

Über diesen Beitrag


Unterstütze die Community und teile den Beitrag für mehr Leser und Austausch

Aktuelle Forenbeiträge

LSMW-Problem
vor 5 Tagen von mazu gelöst 5 / 1616
ATC Finding in Smartforms
vor einer Woche von sap_enthusiast 2 / 1630

Newsletter Anmeldung

Keine Beiträge verpassen! Wöchentlich versenden wir lesenwerte Beiträge aus unserer Community.
Die letzte Ausgabe findest du hier.
Details zum Versandverfahren und zu Ihren Widerrufsmöglichkeiten findest du in unserer Datenschutzerklärung.

Aktuelle Forenbeiträge

LSMW-Problem
vor 5 Tagen von mazu gelöst 5 / 1616
ATC Finding in Smartforms
vor einer Woche von sap_enthusiast 2 / 1630

Unbeantwortete Forenbeiträge

SFP/SEGW - Fehler beim Rendering
letzen Monat von Manfred K. 1 / 87453
Benutzerdefinierte Felder PSP
January 2026 von Rabea1103 1 / 140681