Knobelaufgabe ( Sommer 2023 ) - Robuster Programmablauf

Alles Rund um SAP®.
4 Beiträge • Seite 1 von 1
4 Beiträge Seite 1 von 1

Knobelaufgabe ( Sommer 2023 ) - Robuster Programmablauf

Beitrag von black_adept (Top Expert / 3955 / 105 / 886 ) »
Moin liebe ABAPler,

die Firma ACME hat einen Entwicklerengpass und will euch beauftragen eine kleine Utilitymethode zu erstellen. Diese soll im DDIC abgelegt werden. Die Doku die ihr bekommen habt war recht kurz:
ACME Programmanforderung hat geschrieben:Wir brauchen eine Methode, die zwei Zahlen einen Operator und ein Ausgabetemplate entgegennimmt und uns entweder einen Ergebnisstring oder eine Fehlermeldung zurückgibt.
Beispieleingabe 1: 3 4 * und als Ergebnistemplate "&zahl1 &operator &zahl2 = &ergebniszahl" soll im Ergebnisstring "3 * 4 = 12 liefern
Beispieleingabe 2: 3 0 / und als Ergebnistemplate "&zahl1 &operator &zahl2 = &ergebniszahl" soll keinen Ergebnisstring sondern einen Fehlerstring ausgeben, der auf das Problem hier irgendwie hinweist.
Die verwendeten Platzhalter im Beispiel sind diejenigen, die wir verwenden.
Diese Methode wird später in zentraler Stelle im gesamten Unternehmen in den allerallerallerkritischten Bereichen eingesetzt werden und es ist darauf zu achten, dass sie UNTER KEINEN UMSTÄNDEN DUMPT. Egal was als Eingabe daherkommt. Und natürlich sollen unsere eigenen Entwickler es möglichst komfortabel haben, so dass die Eingabeparameter alle vom Typ ANY sein sollen.

Ach ja: Noch ein Nachtrag. Falls der Operator als statische Methode interpretiert werden kann, soll diese Methode aufgerufen werden ( Inputparameter dort sind Z1 und Z2 für die beiden Zahlen und ERGEBNIS ist eine FLOAT-Zahl als RETURNING-parameter ). Das ist für unsere geheimsten Berechnungen. Auch das darf nicht dumpen!
Im Großen und Ganzen sieht das eigentlich recht einfach aus - aber euch macht das "UNTER KEINEN UMSTÄNDEN DUMPEN" doch etwas nervös.

Was würdet ihr als Code abgeben wollen und wie sicher seid ihr euch, dass ihr auch an alles gedacht habt?

Ich habe ein paar kleine Testfälle vorbereitet, die ich euch zukommen lasse, wenn ihr hier eine Lösung postet oder sie mir zusendet.

Folgende Benutzer bedankten sich beim Autor black_adept für den Beitrag:
fr-g

live long and prosper
Stefan Schmöcker

email: stefan@schmoecker.de

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


Re: Knobelaufgabe ( Sommer 2023 ) - Robuster Programmablauf

Beitrag von black_adept (Top Expert / 3955 / 105 / 886 ) »
P.S. ACME zahlt schlecht. Also bloß nicht zu viel Aufwand in die Berechnung stecken. Sollte schon korrekt funktionieren für anspruchslose Beispiele, aber der Teil mit dem "Nicht dumpen" ist wichtiger.

Und da ich schon eine Zusendund via PM habe: Ihr bekommt ein Testprogramm und Testfälle bis zum 1. Problem das ihr nicht bedacht habt ( falls so was vorkommen könnte ) wenn ihr mir was zuschickt....
live long and prosper
Stefan Schmöcker

email: stefan@schmoecker.de

Re: Knobelaufgabe ( Sommer 2023 ) - Robuster Programmablauf

Beitrag von fr-g (ForumUser / 76 / 12 / 25 ) »
Frage zum Ergebnistemplate: Hat das einen weiteren Zweck (außer z.B. Reihenfolge der Parameter umdrehen)? Sollte es im Falle der statischen Methode, dann auch wie ein Methodenaufruf formatiert werden? Muss in dem Fall das Template vom Anwender auch schon so geschrieben sein, damit die Eingabe gültig ist?

Re: Knobelaufgabe ( Sommer 2023 ) - Robuster Programmablauf

Beitrag von black_adept (Top Expert / 3955 / 105 / 886 ) »
Moin fr-g,
  • - Ergebnistemplate: Da ich nur mit einer überschaubaren Anzahl von Teilnehmern rechne erlaubt mir die Ausgabe nachher visuell zu überprüfen, ob das Ergebnis meiner Testfälle glaubhaft ist bzw. ich könnte das automatisiert prüfen, wenn ich zu viele Testfälle habe
  • - stat. Methodenaufruf: Wenn als Operator so was wie demoklasse=>demomethode drin steht, soll halt das Resultat der Aufruf dieser Methode sein, wobei die beiden Inputparameter Z1 und Z2 mit den dir übergebenen Werten gefüllt sein sollen. Mehr Informationen hat ACME nicht gegeben. Und die Methode ist dir nicht bekannt. Die ist halt so geheim - das programmieren die wahrscheinlich im Produktivsystem *lach*
  • - Muss in dem Fall das Template vom Anwender auch schon so geschrieben sein, damit die Eingabe gültig ist? Leider verstehe ich die Frage hier nicht genau. Könntest du das bitte etwas genauer erläutern (wenn du damit schon was preisgeben könntest, was für die Lösung wichtig ist, gerne auch via PM )
live long and prosper
Stefan Schmöcker

email: stefan@schmoecker.de

Seite 1 von 1

Vergleichbare Themen

6
Antw.
625
Views
Knobelaufgabe ( Frühling 2023 )
von black_adept » 20.03.2023 11:59 • Verfasst in SAP - Allgemeines
5
Antw.
618
Views
Knobelaufgabe ( Sommer 2022 ) - Unit Test Coverage
von black_adept » 27.07.2022 12:36 • Verfasst in SAP - Allgemeines
2
Antw.
1040
Views
gesamten Programmablauf protolkollieren
von bohne » 17.06.2006 15:12 • Verfasst in Basis
8
Antw.
5747
Views
Programmablauf über Funktionstasten steuern
von Aggressor » 25.08.2006 08:42 • Verfasst in Web-Dynpro, BSP + BHTML
4
Antw.
1111
Views
Knobelaufgabe
von black_adept » 26.03.2021 13:55 • Verfasst in SAP - Allgemeines

Über diesen Beitrag



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

Aktuelle Forenbeiträge

Bonusstaffel berechnen
Gestern von Franke_ba 1 / 28
Massenpflege Customer
Gestern von black_adept gelöst 19 / 13994
Passwörter speichern
vor 3 Tagen von ewx gelöst 4 / 77

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

Bonusstaffel berechnen
Gestern von Franke_ba 1 / 28
Massenpflege Customer
Gestern von black_adept gelöst 19 / 13994
Passwörter speichern
vor 3 Tagen von ewx gelöst 4 / 77

Unbeantwortete Forenbeiträge

Bonusstaffel berechnen
Gestern von Franke_ba 1 / 28
Abstimmschlüssel ändern
vor 4 Tagen von FS1895 1 / 40
Application-Log, SLG1 Meldungstext
vor 3 Wochen von chhe001 1 / 693