Hier geht es weder um Pferde noch um Autos.ralf.wenzel hat geschrieben:Weil die Zeiten sich geändert haben. Die Zeit der immer schnelleren Pferde ist vorbei, wir wechseln gerade zum Auto. Die sind laut und stinken, die scheuen nicht vor anderen Verkehrsteilnehmern sondern nieten sie im Zweifel um - aber mit schnelleren Pferden kommen wir nicht weiter. Da kann man Pferde viel schöner finden als Autos, es führt kein Weg dran vorbei.Daniel hat geschrieben:Das wovon 'die SAP" abrät ist das was das SAP-System ausmacht.
Ich habe massive Zweifel an dieser Aussage. Heute ist jederralf.wenzel hat geschrieben:Ganz ehrlich: Um deine abfällige Art, über die Arbeit anderer zu denken und zu schreiben, beneide ich dich nicht. Die sitzen ja bei der SAP nicht rum und denken "hach, uns ist grad fad, lass uns doch mal neue Befehle ausdenken". Das sind auch keine Idioten, sondern Menschen mit einem langfristigen Plan, die sich sehr wohl was dabei denken. Man sollte sich mit denen ruhig mal unterhalten.Daniel hat geschrieben:Die Ratschläge von 'der SAP' sind in Wahrheit die Ratschläge von
Anfängern die zufällig im ABAP-Team gelandet sind und das noch
nicht verstanden haben und deshalb krampfhaft versuchen aus
ABAP Java zu machen.
Blödsinn. Auch heute geht es noch um Betriebswirtschaft.ralf.wenzel hat geschrieben:Das, was man heute an Anwendungen schreibt (auch bei der SAP - aber nicht nur) unterscheidet sich fundamental von dem, was zu den Zeiten entwickelt wurde, als diese Jugendsünden entstanden.
Wer Computertechnik kennt weis daß der Name einer Variablen nichts anderesralf.wenzel hat geschrieben:Wer Programmiersprachen kennt, weiß, dass man gewisse Dinge nicht macht. Zum Beispiel dass "A+1" eine völlig andere Bedeutung hat als "A + 1".
Kein Kunde hat die SAP zu 00 gedrängt. Ganz im Gegenteil haben viele Kundenralf.wenzel hat geschrieben:Das war egal, solange SAP-Entwicklung eine Nische war, wo man in SAP für die SAPGUI entwickelt hat und fertig. Man sollte nicht vergessen: Die SAP galt sehr, sehr lange als OO-Feindgebiet - bis die Kunden (!) dazu drängten, ich kann mich an diese Zeit noch gut erinnern.
Zunächst mal ist da gar nicht besser wartbar. Du verwechselst noch immer denralf.wenzel hat geschrieben:Irgendwann ist ein Grad von Komplexität erreicht, dass jemand sagt "ich glaube, mit OO-Abbildung wird das Ganze wartbarer, weil die Darstellung nicht so 'computerlastig' ist, sondern viel näher an der realen Welt" (gerade das ist ein großer Teil des Charmes von OO, weil wir von "zustandsbehafteten Objekten" umgeben sind).
Selbst mit Assembler ging das erstaunlich gutralf.wenzel hat geschrieben:Das "ABAP von früher" ist für derart komplexe Anwendungen wie das EWM oder die genannten etwa so geeignet wie Assembler als Programmiersprache für das SAP selbst. Geht auch, aber nur mit heftigen Schmerzen.
Solange es um die interne Datenverarbeitung in einem Unternehmen geht istralf.wenzel hat geschrieben:Es gab Mechanismen, die zu ihrer Zeit ihre Berechtigung hatten, sich aber einfach überlebt haben. Beispiel: Ich bestreite nicht, dass das Konzept mit Dynpros sinnvoll war, als die Rechnerleistung noch deutlich niedriger war als jetzt und eh jeder Client unter Windows lief. Heute ist das nicht mehr zeitgemäß, einen speziellen SAP-Client zu benötigen, weil die Gerätelandschaft deutlich vielfältiger ist als früher.
Kann man ja einbinden. Dann aber über eine Schnittstelle die den Zugriff sehrralf.wenzel hat geschrieben:Schon Barcodeleser sind heute oft keine Barcodeleser mehr,
Man darf nicht stehen bleiben. Aber die VW-Technik ist völlig daneben.ralf.wenzel hat geschrieben: Blickt man dann in Richtung S/4, stellt man fest, dass man es plötzlich mit Statistiken zu tun hat, für die das Programm mit R zusammenarbeiten muss; Statistiken, die wir Entwickler erstmal verstehen lernen müssen. Vorausschauende Wartung oder Bonitäts-Scoring ist da ein wichtiges Stichwort. Und R ist nur ein Beispiel unter vielen. Es wird alles bunter und vielfältiger, da kann ABAP nicht stehenbleiben.
Keine Ahnung worum es geht.ralf.wenzel hat geschrieben:Wenn du ein bisschen nachdenkst, kommst du drauf - auch wenn das schon ne Weile her istDaniel hat geschrieben:Ich habe in diesem Thread noch nix gepostet - was habe ichralf.wenzel hat geschrieben: *sry, Daniel, aber den hast du dir selbst eingeschenkt
also verbrochen?
Ralf
Die Wiederholung der Behauptung, ich verwechsele Modularisierung mit OO, macht diese nicht richtiger. Aber ich werde darauf nicht weiter eingehen, das führt zu nichts. Aber dass alle Dilettanten sind, die eine andere Meinung haben (egal ob sie diese mit Erfahrungen belegen können), hast du ja schon oft genug kundgetan. Da wird dann das SAP-Transportsystem zum "schlechtesten, was ich je gesehen habe". Es hat seine Tücken, aber das liegt auch an der Komplexität der Aufgabe. Es gibt Entwicklungslandschaften, die froh wären über soviel Automatismus beim Deployment. Wie jedes komplexe Werkzeug bedingt es aber eine gewisse, standardisierte Arbeitsweise.Daniel hat geschrieben:Zunächst mal ist da gar nicht besser wartbar. Du verwechselst noch immer den Ansatz von 00 mit Modularisierung.
Die "neue" Syntax Z = A + 1. Die ist aber nicht wirklich neu, dass COMPUTE weggelassen werden kann, ist schon sehr, sehr lange so. Ich habe das Schlüsselwort nach meiner Erinnerung noch nie verwendet und ich programmiere seit 1996 in ABAP. Dennoch bleibe ich dabei, dass die Anzahl von Leerzeichen eine sehr schlechte Idee ist, um diese beiden Fälle auseinanderzuhalten. So wie auch Zuweisungen von Vergleichen durch denselben Operator durchgeführt werden, was auch nicht wirklich eine gute Idee ist.Daniel hat geschrieben:A+1 ist also nichts anderes als 65340+1. Völlig naheliegende Syntax. A + 1 ist in
der ABAP-Syntax nur in der Form COMPUTE Z = A + 1 vorgesehen. Das ist völlig
eindeutig. Erst die "Neue Syntax" hat das Konstrukt in anderem Zusammenhang
erlaubt. Der Ursprung ist also völlig sauber.
WebDynpro und auch SAPUI5 wird nicht auf allen Systemen/Browsern unterstützt, zum Teil sucht man sich einen Wolf bis ein Fehler gefunden wird, manchmal wünscht man sich dann wieder den guten alten SAPGUiUnd dass ein Browser ungeeigneterer sein soll als eine SAPGUI, halte ich für ein Gerücht. Schon die Plattformabhängigkeit auf dem Client wird zunehmend zu einem Problem, Browser gibt es für jede beliebige Plattform. Und das Gerät, mit dem eine zunehmende Anzahl von Anwendern arbeitet, ist nunmal kein WindowsPC.
Ich liebe es, wie Du 00 statt OO schreibst.Kein Kunde hat die SAP zu 00 gedrängt.
Genau das ist ein Knackpunkt, den ich auch so sehe. Der Entwicklungsaufwand ist an vielen Stellen um Größenordnungen höher, auch wenn ich weiß, dass Ralf jetzt wieder beteuert, was man alles nicht mehr machen muss. In den allermeisten Fällen wäre dieses Ziel mit Funktionsbausteinen auch erreichbar. Tatsächlich haben Funktionsbausteine viele Eigenschaften von Objekten, sind aber deutlich besser zu handhaben. Dass man sie noch verbessern/modernisieren könnte, ist richtig, nur macht die SAP es halt nicht, weil sie auf OO setzt.In einem System für betriebswirtschaftliche Anwendungen gibt es nur sehr wenige wirklich sinnvolle Stellen für die Anwendung von 00. Dort soll man es verwenden - aber nicht als Allheilmittel.
Das finde ich allerdings auch. Allein die Antwortzeiten, die durch die HTML-Aufbereitung entstehen, sind oft indiskutabel. Wer kennt sie noch, die alte Regel, dass ein Anwender ein System ab einer Sekunde Antwortzeit als langsam empfindet? Eine Sekunde ist doch bei jeglichem HTML-basierten Geraffel gar nichts! Den Anwendern ist hier eine hohe Leidensfähigkeit auferlegt worden.Solange es um die interne Datenverarbeitung in einem Unternehmen geht ist ein eigener Client keine schlechte Lösung.
Ganz im Gegenteil zu der Idee einen HTML-Browser für solch eine Aufgabe zu missbrauchen.
Leider werden bunte Bildchen heute aber erwartet. Wenn bei einem Kunden für eine betriebswirtschaftliche Lösung drei Systeme vorgeführt werden, und zwei davon haben hippe Optik und volle Smartphone-Unterstützung, während SAP mit dem drögen SAPGui-Bildschirm daherkommt, dann fliegt es bei der Auswahl sofort hinten runter wegen mangelnder Anwenderfreundlichkeit. Insofern ist es schon richtig, dass die SAP das auch unterstützt. Aber irgendwie müssten sie die Anbindung wesentlich besser hinkriegen. Das ist in der Pflege alles zu kompliziert - nicht zuletzt wegen der Objektorientierung in Fiori, wo man sich zuweilen die Karten legt, warum die Kachel denn jetzt immer noch nicht angezeigt wird. Außerdem hat man halt die HTML-Antwortzeiten (die konkurrierende Systeme freilich auch haben). Und es müsste sich wie eine native HTML-Anwendung anfühlen, also mit funktionierendem "Browser Back" und funktionierenden Bookmarks auf beliebigen Seiten. Auch das funktioniert bei Google beeindruckend gut. Die scheinen mir so ziemlich die einzigen zu sein, die verstanden haben, dass man die HTML-Umsetzung nicht nur halbherzig ausführen darf, wenn man darauf setzen möchte. Dabei ist mir klar, dass die Umsetzung solcher Funktionalitäten extrem schwer sein muss.Von SAP erwarte ich nicht daß Sie der Smartfon-Technik hinterherhecheln sondern stabile Prozesse ohne Brimborium. Bunte Bildchen können andere besser.
Die man mit dem Solution Manager noch viel besser standardisieren und in auditfähige Bahnen lenken kann. Arbeitet eigentlich sonst noch jemand damit?Da wird dann das SAP-Transportsystem zum "schlechtesten, was ich je gesehen habe". Es hat seine Tücken, aber das liegt auch an der Komplexität der Aufgabe. Es gibt Entwicklungslandschaften, die froh wären über soviel Automatismus beim Deployment. Wie jedes komplexe Werkzeug bedingt es aber eine gewisse, standardisierte Arbeitsweise.
An der Stelle bin ich auch der Meinung, dass eine solch triviale Abstrahierung jedem Programmierer zuzumuten ist und finde es auch völlig unproblematisch, dass der Zuweisungsoperator und der Vergleichsoperator beide gleich sind. Wer das nicht auseinandergehalten bekommt, weil er nicht sieht, ob da ein IF (oder ein vergleichbares syntaktisches Konstrukt) davorsteht, der sollte sich einen anderen Job suchen.Die "neue" Syntax Z = A + 1. Die ist aber nicht wirklich neu, dass COMPUTE weggelassen werden kann, ist schon sehr, sehr lange so. Ich habe das Schlüsselwort nach meiner Erinnerung noch nie verwendet und ich programmiere seit 1996 in ABAP.
Java auch, und das Java-GUI ist ja fertig. Es kann nicht alles, was das Gui für Windows kann, aber das liegt nur daran, dass die SAP da nicht genug Energie reinsteckt. Man könnte sogar so weit gehen, nur noch Java zu unterstützen.Schon die Plattformabhängigkeit auf dem Client wird zunehmend zu einem Problem, Browser gibt es für jede beliebige Plattform.
Das hat die FDP-Greuelpropaganda-Abteilung AKA Möllemann schon mit "Tritt-Ihn" gemacht. Eine sachliche Diskussion befördert sowas nicht. Darum sage ich dazu auch nix mehr, wer sich solcher Mittel bedienen muss, disqualifiziert sich in meinen Augen. Wir sind hier nicht bei der heute-Show. Drei kleine Hinweise noch, um keine falschen Sachen stehenzulassen.DeathAndPain hat geschrieben:Ich liebe es, wie Du 00 statt OO schreibst.Kein Kunde hat die SAP zu 00 gedrängt.
Darum geht es nicht, es geht um die Eindeutigkeit von Codingstrecken. Eine Anweisung, die im einen Zusammenhang das eine und in einem anderen Kontext was anderes bedeutet, ist in meinen Augen nicht zielführend.DeathAndPain hat geschrieben:An der Stelle bin ich auch der Meinung, dass eine solch triviale Abstrahierung jedem Programmierer zuzumuten ist
Aha, und die JavaGUI passt sich automatisch der Displaygröße an oder ändert die UI, wenn du das Display drehst?DeathAndPain hat geschrieben:Java auch, und das Java-GUI ist ja fertig. Es kann nicht alles, was das Gui für Windows kann, aber das liegt nur daran, dass die SAP da nicht genug Energie reinsteckt. Man könnte sogar so weit gehen, nur noch Java zu unterstützen.
Das finde ich eine bürokratische Haltung. Eine Anweisung, bei der ein halbwegs intelligenter Programmierer in jedem Kontext (außer vielleicht bei Missbrauch der neuen 7.40-Konstrukte) sieht, was sie bedeutet, ist zielführend.Darum geht es nicht, es geht um die Eindeutigkeit von Codingstrecken. Eine Anweisung, die im einen Zusammenhang das eine und in einem anderen Kontext was anderes bedeutet, ist in meinen Augen nicht zielführend.
Ich habe keine Zweifel, dass man das auch hinkriegen würde. Java auf Mobilgeräten ist ja absoluter Alltag. Der Engpass ist nicht Java, sondern die Bereitschaft der SAP, hier Energie zu investieren.Aha, und die JavaGUI passt sich automatisch der Displaygröße an oder ändert die UI, wenn du das Display drehst?
Willkommen zurück! Ich habe keine Zweifel, dass Du das hier liest. Wer mit Pauken und Trompeten seinen Abgang aus einem Thread ankündigt, um sich so selber das letzte Wort einzuräumen (was übrigens sehr schlechter Diskussionsstil ist), der kommt immer zurück, um die Reaktionen zu lesen.Ralf *raus aus dem Thread - wie angekündigt
Folgende Benutzer bedankten sich beim Autor DeathAndPain für den Beitrag:
black_adept
Außer dem "+" gibt es ja auch ein "-" und damit einhergehend die Verwechslungsgefahr von MARA-MATNR und MARA - MATNR und das hinterhältige MOVE-CORRESPONDING. Oder dass der Befehl "AND" mal ein logischer Operator ist, dann wieder als Zusatz beim COMMIT WORK AND WAIT vorkommt. Oder dass der Befehl "MODIFY" einfach je nach Kontext was völlig anderes macht. Irgenwie hat Ralf implizit recht - man muss schon ein verdammt guter Entwickler sein um mit all diesen Vieldeutigkeiten einer extrem komplizierten Sprache wie ABAP zurecht zu kommen. Wahrscheinlich gibt es deshalb so wenige von uns...ralf.wenzel hat geschrieben:Darum geht es nicht, es geht um die Eindeutigkeit von Codingstrecken. Eine Anweisung, die im einen Zusammenhang das eine und in einem anderen Kontext was anderes bedeutet, ist in meinen Augen nicht zielführend.DeathAndPain hat geschrieben:An der Stelle bin ich auch der Meinung, dass eine solch triviale Abstrahierung jedem Programmierer zuzumuten istralf.wenzel hat geschrieben: Wer Programmiersprachen kennt, weiß, dass man gewisse Dinge nicht macht. Zum Beispiel dass "A+1" eine völlig andere Bedeutung hat als "A + 1".
An der Stelle gebe ich Dir uneingeschränkt recht. Dass der MODIFY für interne Tabellen und der für Datenbanktabellen dieselbe Syntax haben und ABAP eine interne Tabelle nimmt, wenn es sie gibt und andernfalls halt auf die Datenbank schreibt, das ist extrem unglücklich gelöst. Ich finde es zwar ganz nett, einen Befehl zu haben, der eigenintelligent INSERT und UPDATE kombiniert, aber man hätte ein anderes Schlüsselwort dafür nehmen sollen (z.B. CHANGE). Oder ein Zusatzwort, etwa MODIFY DATABASE TABLE.Oder dass der Befehl "MODIFY" einfach je nach Kontext was völlig anderes macht.
Das ist doch eher deine Sichtweise.ralf.wenzel hat geschrieben:Aber dass alle Dilettanten sind, die eine andere Meinung haben (egal ob sie diese mit Erfahrungen belegen können), hast du ja schon oft genug kundgetan.
Auch das habe ich in dieser Form nicht gesagt. Aber so falsch ist dasralf.wenzel hat geschrieben:Da wird dann das SAP-Transportsystem zum "schlechtesten, was ich je gesehen habe".
Um das weglassen von COMPUTE ging es ja auch nicht. Der Unterschiedralf.wenzel hat geschrieben:Die "neue" Syntax Z = A + 1. Die ist aber nicht wirklich neu, dass COMPUTE weggelassen werden kann, ist schon sehr, sehr lange so.
Solange man die volle Kontrolle nur im internen Netz und mit einer GUIralf.wenzel hat geschrieben:Dass konventionelle SAP-Systeme besonders sicher sind, ist auch ein bisschen weit hergeholt.
ErwischtDeathAndPain hat geschrieben:Ich liebe es, wie Du 00 statt OO schreibst.
Sehe ich genau so.DeathAndPain hat geschrieben:Ich persönlich habe freilich noch kein gut dokumentiertes OO zu Gesicht bekommen, und schlecht dokumentiertes OO ist ein Albtraum.
Das ist dann die Konsequenz. Nur verstehen diejenigen es nichtDeathAndPain hat geschrieben:Man kann sich nur von Programmierern trennen, die sich weigern, es von sich aus zu machen.
Kann man ja machen. Ist aber die Aufgabe der Präsentatonsschicht undDeathAndPain hat geschrieben:Leider werden bunte Bildchen heute aber erwartet.
JA!DeathAndPain hat geschrieben: An der Stelle bin ich auch der Meinung, dass eine solch triviale Abstrahierung jedem Programmierer zuzumuten ist und finde es auch völlig unproblematisch, dass der Zuweisungsoperator und der Vergleichsoperator beide gleich sind. Wer das nicht auseinandergehalten bekommt, weil er nicht sieht, ob da ein IF (oder ein vergleichbares syntaktisches Konstrukt) davorsteht, der sollte sich einen anderen Job suchen.
Kommt mir stellenweise aber so vor.ralf.wenzel hat geschrieben:Wir sind hier nicht bei der heute-Show.
Das ist eine der Stellen für die Heute-Show. Es gibt einen ganz erheblichenralf.wenzel hat geschrieben:Zum SolMan: Ich arbeite sehr gerne damit - aber gerade Daniel musst du damit nicht kommen. Für den ist der des Teufels (ohne je ein Projekt mit SolMan gehabt zu haben) schon deshalb, weil es dafür eines definierten Entwicklungsprozesses bedarf.
Dann müsste die neue Syntax aber wieder abgeschafft werden...ralf.wenzel hat geschrieben:Eine Anweisung, die im einen Zusammenhang das eine und in einem anderen Kontext was anderes bedeutet, ist in meinen Augen nicht zielführend.
Das liegt darin begründet daß ABAP eine "geschwätzige" Sprache ist.black_adept hat geschrieben:Oder dass der Befehl "AND" mal ein logischer Operator ist, dann wieder als Zusatz beim COMMIT WORK AND WAIT vorkommt. Oder dass der Befehl "MODIFY" einfach je nach Kontext was völlig anderes macht.
Daniel, ich bitte dich. Es waren bestimmt 20 Leute dabei, einige davon Mitleser. Aber egal, es bestärkt mich in meiner Entscheidung, mich hier rauszuhalten.Daniel hat geschrieben:Auch das habe ich in dieser Form nicht gesagt.ralf.wenzel hat geschrieben:Da wird dann das SAP-Transportsystem zum "schlechtesten, was ich je gesehen habe".
Ich habe das Transportsystem ganz sicher nicht gelobt, aberralf.wenzel hat geschrieben:Es waren bestimmt 20 Leute dabei, einige davon Mitleser.
Das sehe ich teilweise anders. Den Overkill, den ein echtes OO-Konzept in einem solchen Programm bringt kann ich ja noch nachvollziehen. Aber da je explizit die Mittel, die OO bereitstellt angesprochen wurden und Methoden nun einmal zu diesen gehören möchte ich doch widersprechen. Gerade durch die nachträgliche Erweiterbarkeit auch eines kleinen Programms durch optionale Parameter an Methoden sind diese herkömmlichen FORM-Routinen einfach überlegen. Selbiges gilt in meinen Augen auch für die Verwendung funktionaler Methoden in Aufrufen. Schon ein "lv_text = get_longtext( irgendwas )" finde ich einfach schöner als "PERFORM getlongtext USING irgendwas CHANGING lv_text" - und wenn man das Resultat dann auch noch weiterverwenden kann - etwa oder als Parameter in Stringausdrücken wie z.B. lv_ausgabe = |{ irgendwas }({ get_longtext( irgendwas ) })| leuchten mir doch die Augen.DeathAndPain hat geschrieben:Für die täglichen Anforderungen (Reports kleiner bis mittlerer Größe etc.) sind die Mittel, die OO bereitstellt, hoffnungsloser Overkill, mit dem man wesentlich länger braucht, aber nichts gewinnt, auch und gerade nicht hinsichtlich der Wartbarkeit.
Folgende Benutzer bedankten sich beim Autor black_adept für den Beitrag:
ralf.wenzel
Bei dem von Dir genannten kleinen Programm erweitere ich halt rasch neben der Formroutine auch die Aufrufe. Dort, wo der Parameter nicht benötigt wird, übergebe ich halt SPACE oder 0. Das dauert nicht lange, und wenn ich das als Literal (bzw. SPACE als Naturkonstante ) übergebe, dann ist auch dem Leser klar, dass diese Parameter hier keine relevanten Daten transportieren.Gerade durch die nachträgliche Erweiterbarkeit auch eines kleinen Programms durch optionale Parameter an Methoden sind diese herkömmlichen FORM-Routinen einfach überlegen.
Funktionale Methoden baue ich auch dann und wann mal in meine Programme ein, weil die Aufrufstellen schön übersichtlch aussehen. Doch der Preis, den man dafür zahlt, ist hoch, denn man muss extra eine (statische) Klasse definieren, dann eine Methodendefinition schreiben, dann eine Methodenimplementation schreiben, bei der man hoffentlich alle Parameter auswendig im Kopf hat, denn bei lokalen Methoden stehen die ja nicht am Anfang der Form, sondern ggf. am anderen Ende des Programms, ein Quatsch, der rein akademische Bedeutung hat, leider aber den praktisch arbeitenden Entwicklern übergeholfen wird. Der ganze Mülloverhead halt, den das OO erzwingt. Ab und zu ist mir das mal die Arbeit wert, etwa wenn ich im Programm öfter mal geschriebene Datümer mit einer Miniklasse per SAP_DATUM = DCL=>DATUM( STRINGDATUM ) übersichtlich in das SAP-interne Datumsformat wandeln möchte. Solche Miniklassen packe ich aber auch ketzerischerweise ins TOP-Include, wo sie zusammen mit dem ganzen übrigen Definitionskram aus meinem tatsächlichen Code herausgehalten werden. Böse Zungen würden sagen, das sind bessere Makros.Selbiges gilt in meinen Augen auch für die Verwendung funktionaler Methoden in Aufrufen. Schon ein "lv_text = get_longtext( irgendwas )" finde ich einfach schöner als "PERFORM getlongtext USING irgendwas CHANGING lv_text" - und wenn man das Resultat dann auch noch weiterverwenden kann - etwa oder als Parameter in Stringausdrücken wie z.B. lv_ausgabe = |{ irgendwas }({ get_longtext( irgendwas ) })| leuchten mir doch die Augen.
Folgende Benutzer bedankten sich beim Autor DeathAndPain für den Beitrag:
Daniel
Hier gab es mal ein sehr einfaches Beispiel, damit wir hier nicht so im luftleeren Raum diskutieren:DeathAndPain hat geschrieben:Funktionale Methoden baue ich auch dann und wann mal in meine Programme ein, weil die Aufrufstellen schön übersichtlch aussehen. Doch der Preis, den man dafür zahlt, ist hoch....Selbiges gilt in meinen Augen auch für die Verwendung funktionaler Methoden in Aufrufen. Schon ein "lv_text = get_longtext( irgendwas )" finde ich einfach schöner als "PERFORM getlongtext USING irgendwas CHANGING lv_text" - und wenn man das Resultat dann auch noch weiterverwenden kann - etwa oder als Parameter in Stringausdrücken wie z.B. lv_ausgabe = |{ irgendwas }({ get_longtext( irgendwas ) })| leuchten mir doch die Augen.
Folgende Benutzer bedankten sich beim Autor ralf.wenzel für den Beitrag:
ewx