Wann kann man boolesche Werte in IFs direkt nutzen?


Getting started ... Alles für einen gelungenen Start.

Moderatoren: Jan, Steff

Re: Wann kann man boolesche Werte in IFs direkt nutzen?

Beitragvon black_adept » 06.12.2017, 19:34

ralf.wenzel hat geschrieben:
Thanatos82 hat geschrieben:Was ich für mich aber ganz gerne nutze ist folgendes:
Code: Alles auswählen
CASE abap_true.
  WHEN lv_wert1.
    WRITE 'ja!'.
  WHEN lv_wert2.
    WRITE 'auch ja!'.
ENDCASE.


Es gibt Leute, die das sehr, sehr unschön finden. Mit anderen Worten: Ich hatte schon Kunden, die mir so einen "falsch-rummen" CASE schon um die Ohren gehauen haben.

Das ist eine Spezialität der Sprache ABAP, die in anderen Programmiersprachen wie z.B. Java nicht gehen. Und diejenigen die dir das um die Ohren hauen haben halt nicht verstanden, dass es nicht darum geht Java-Programme mit ABAP zu schreiben, sondern dass man die Vorteile einer Sprache ausnutzen soll. Gerade beim Abarbeiten von Radiobuttons ist das m.E. eines der lesbarsten Konstrukte.
Was bei dem "falsch rummen" Case halt nicht so schön daherkommt ist lediglich, wenn mehrere der WHEN-Bedingungen gleichzeitig wahr sein könnten weil dann nur die 1. zieht.
live long and prosper
Stefan Schmöcker

email: stefan@schmoecker.de

Für diese Nachricht hat black_adept 3 Dankeschön bekommen :
Daniel, DeathAndPain, ST22
black_adept
Top Expert
 
Beiträge: 2727
Registriert: 08.01.2003, 13:33
Wohnort: Lehrte ( bei Hannover )
Dank erhalten: 398 mal
Ich bin: Freiberufler/in

Sponsor

Alte ABAP-Entwicklerweisheit: Weißt du weder aus noch ein, baust du einen BADI ein

Re: Wann kann man boolesche Werte in IFs direkt nutzen?

Beitragvon ralf.wenzel » 06.12.2017, 20:05

Jein, das war ein reiner ABAPer, der einfach nur nicht „falschrum“ denken will. Aber der konnte auch Mehrfachzuweisungen nicht leiden ;) (C = B = A) und wollte zwei daraus gemacht haben.

Und nein, nicht jede Möglichkeit, die ABAP bietet, ist auch gut und sollte ausgenutzt werden. Da fallen mir zig ein, von denen allein schon die SAP abrät, zig andere von denen ich abrate und dann haben wir den kleinen grünen Zwerg* noch gar nicht gefragt.


Ralf

*sry, Daniel, aber den hast du dir selbst eingeschenkt :D
Bild Ralf WenzelHeuristika
SAP-Development • Datenschutzberatung
PublikationenUngarische NotationXing
ralf.wenzel
Top Expert
 
Beiträge: 2682
Registriert: 18.09.2004, 13:03
Wohnort: Hamburg
Dank erhalten: 122 mal
Ich bin: Freiberufler/in

Re: Wann kann man boolesche Werte in IFs direkt nutzen?

Beitragvon black_adept » 07.12.2017, 07:47

ralf.wenzel hat geschrieben:Und nein, nicht jede Möglichkeit, die ABAP bietet, ist auch gut und sollte ausgenutzt werden. Da fallen mir zig ein, von denen allein schon die SAP abrät, zig andere von denen ich abrate und dann haben wir den kleinen grünen Zwerg* noch gar nicht gefragt.
Ich sprach vom Verwenden von Vorteilen einer Sprache, nicht vom Nutzen aller Möglichkeiten
live long and prosper
Stefan Schmöcker

email: stefan@schmoecker.de
black_adept
Top Expert
 
Beiträge: 2727
Registriert: 08.01.2003, 13:33
Wohnort: Lehrte ( bei Hannover )
Dank erhalten: 398 mal
Ich bin: Freiberufler/in

Re: Wann kann man boolesche Werte in IFs direkt nutzen?

Beitragvon ralf.wenzel » 07.12.2017, 08:02

Was ein Vorteil ist und was nicht, liegt im Auge des Betrachters - das meinte ich.

Ralf
Bild Ralf WenzelHeuristika
SAP-Development • Datenschutzberatung
PublikationenUngarische NotationXing
ralf.wenzel
Top Expert
 
Beiträge: 2682
Registriert: 18.09.2004, 13:03
Wohnort: Hamburg
Dank erhalten: 122 mal
Ich bin: Freiberufler/in

Re: Wann kann man boolesche Werte in IFs direkt nutzen?

Beitragvon DeathAndPain » 07.12.2017, 12:28

Allerdings könnte man auch argumentieren, dass man daran erkennen kann, was der Betrachter taugt... *duckundweg*
DeathAndPain
Specialist
 
Beiträge: 309
Registriert: 05.05.2006, 10:14
Dank erhalten: 80 mal
Ich bin: Entwickler/in

Re: Wann kann man boolesche Werte in IFs direkt nutzen?

Beitragvon ralf.wenzel » 07.12.2017, 12:32

DeathAndPain hat geschrieben:Allerdings könnte man auch argumentieren, dass man daran erkennen kann, was der Betrachter taugt... *duckundweg*


Meinungen kann man nicht werten. Wenn (ich nehme mal ein Beispiel, das wir hier schon hatten) Daniel implizite Kopfzeilen praktisch findet und ich sie unsinnig finde, sind das unterschiedliche Gewichtungen. Daniel findet es wichtiger, dass es schneller geht, ich finde es verwirrend wenn zwei Objekte denselben Namen haben.

Von "taugen" würde ich da nicht sprechen. Weder Daniel noch ich haben keine Ahnung.


Ralf
Bild Ralf WenzelHeuristika
SAP-Development • Datenschutzberatung
PublikationenUngarische NotationXing
ralf.wenzel
Top Expert
 
Beiträge: 2682
Registriert: 18.09.2004, 13:03
Wohnort: Hamburg
Dank erhalten: 122 mal
Ich bin: Freiberufler/in

Re: Wann kann man boolesche Werte in IFs direkt nutzen?

Beitragvon Daniel » 07.12.2017, 12:40

ralf.wenzel hat geschrieben:Und nein, nicht jede Möglichkeit, die ABAP bietet, ist auch gut und sollte ausgenutzt werden. Da fallen mir zig ein, von denen allein schon die SAP abrät

Das wovon 'die SAP" abrät ist das was das SAP-System ausmacht.
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.

ralf.wenzel hat geschrieben:*sry, Daniel, aber den hast du dir selbst eingeschenkt :D

Ich habe in diesem Thread noch nix gepostet - was habe ich
also verbrochen?
Daniel
Specialist
 
Beiträge: 209
Registriert: 10.09.2003, 13:20
Wohnort: Bielefeld
Dank erhalten: 15 mal

Re: Wann kann man boolesche Werte in IFs direkt nutzen?

Beitragvon DeathAndPain » 07.12.2017, 13:13

ralf.wenzel hat geschrieben:Meinungen kann man nicht werten.

Das dahinterstehende Wissen aber schon. Nicht jede abweichende Meinung ist mit demselben Niveau an Fachkompetenz hinterlegt. Darauf wollte ich anspielen.

Für diese Nachricht hat DeathAndPain einen Dank bekommen :
Daniel
DeathAndPain
Specialist
 
Beiträge: 309
Registriert: 05.05.2006, 10:14
Dank erhalten: 80 mal
Ich bin: Entwickler/in

Re: Wann kann man boolesche Werte in IFs direkt nutzen?

Beitragvon ralf.wenzel » 07.12.2017, 13:22

Daniel hat geschrieben:Das wovon 'die SAP" abrät ist das was das SAP-System ausmacht.


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: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.


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.

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 Programmiersprachen kennt, weiß, dass man gewisse Dinge nicht macht. Zum Beispiel dass "A+1" eine völlig andere Bedeutung hat als "A + 1". 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.

Die Sprache, die eigentlich für ganz andere Zwecke gedacht war, ist heute das Werkzeug für äußerst komplexe Anwendungen. Selbst Kunden entwickeln heute Anwendungen, die deutlich komplexer sind als die damaligen der SAP, seien es HanseCom oder das GRZ oder wir mit unserem Blutspendemodul. Das merkt man nicht so, wenn man in seiner Glocke sitzt und nicht sieht, was andere so treiben. 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).

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.

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. Schon Barcodeleser sind heute oft keine Barcodeleser mehr, sondern Computer mit einem Barcodeleser drin, mit Tasten und Touchscreens. Und die laufen eben nicht unter Windows mit einer SAPGUI, die brauchen eine Web-Oberfläche (oder man fängt an, für x Betriebssysteme eigene Clients zu entwickeln, die dann extra installiert werden müssen).

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.

Daniel hat geschrieben:
ralf.wenzel hat geschrieben:*sry, Daniel, aber den hast du dir selbst eingeschenkt :D

Ich habe in diesem Thread noch nix gepostet - was habe ich
also verbrochen?


Wenn du ein bisschen nachdenkst, kommst du drauf - auch wenn das schon ne Weile her ist ;)

Ralf
Bild Ralf WenzelHeuristika
SAP-Development • Datenschutzberatung
PublikationenUngarische NotationXing
ralf.wenzel
Top Expert
 
Beiträge: 2682
Registriert: 18.09.2004, 13:03
Wohnort: Hamburg
Dank erhalten: 122 mal
Ich bin: Freiberufler/in

Re: Wann kann man boolesche Werte in IFs direkt nutzen?

Beitragvon DeathAndPain » 08.12.2017, 13:12

(oder man fängt an, für x Betriebssysteme eigene Clients zu entwickeln, die dann extra installiert werden müssen)

Dieses Problem hat die SAP doch längst gelöst - mit dem SAPGui für Java! :-D
DeathAndPain
Specialist
 
Beiträge: 309
Registriert: 05.05.2006, 10:14
Dank erhalten: 80 mal
Ich bin: Entwickler/in

Re: Wann kann man boolesche Werte in IFs direkt nutzen?

Beitragvon black_adept » 08.12.2017, 14:21

Nun mach mal halblang, Ralf,

das ist mal wieder einer dieser elitären Monologe, die ich einfach so nicht stehen lassen kann.

ralf.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".
Ja - wer die Programmiersprachen kennt weiß, dass sich die Syntax von Programmiersprachen unterscheidet. Verhält sich halt genau wie beliebte Gleichheitszeichen, das in fast allen Sprachen irgendwie als (Teil einer) Wertzuweisung oder (Teil eines) Vergleichsoperator daherkommt und manchmal halt überladen ist. Man muss halt die Syntax der Sprache beherrschen um zu wissen was man macht und ob an der einen oder anderen Stelle halt ein Leerzeichen erlaubt ist oder nicht. Alternativ fällt mir auch Case-Sensitivity bei Befehlen bzw. Bezeichnern ein. Das muss man nicht lieben oder verteufeln - man muss halt mit den Tücken der Sprache leben, zumal die Ersteller einer Sprache meist versucht haben eine Sprache zu erschaffen, mit der man sinnvoll arbeiten kann.
Anmerkung. Wenn jemand mal eine Sprache probieren möchte, die nicht nach letztem Gesichtspunkt erstellt wurden: "Brainfuck" oder "Chicken"
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. [...]
Die Sprache, die eigentlich für ganz andere Zwecke gedacht war, ist heute das Werkzeug für äußerst komplexe Anwendungen. Selbst Kunden entwickeln heute Anwendungen, die deutlich komplexer sind als die damaligen der SAP, [...].Das merkt man nicht so, wenn man in seiner Glocke sitzt und nicht sieht, was andere so treiben.[...]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.

Huch - die Welt hat sich weiterentwickelt. Aber ich kann nicht erkennen dass sich deine Aussagen speziell auf ABAP beziehen. Ich fürchte, dass das, was du da schreibst, für die meisten noch halbwegs gängigen Programmiersprachen gilt ( werden ALGOL, PASCAL oder COBOL überhaupt noch eingesetzt? Wahrscheinlich ja fürchte ich, nachdem ich vor 3 Wochen in einem großen deutschen Möbelhaus noch R/2-Screens gesehen hatte ).
ralf.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.[...] Und die laufen eben nicht unter Windows mit einer SAPGUI [...].
So lange diese Mechanismen noch stark eingesetzt werden haben sie sich nicht überlebt. Wenn nur ein begrenztes Budget vorhanden ist, muss man sehen dass man mit dem lebt was man hat. Klar würde ich gerne ganz allgemeine Programme schreiben die auf allen Oberflächen superschick aussehen - aber meine Kunden scheinen deine schönen Theorien in der Praxis zu ignorieren. Ganz davon abgesehen, dass ich die Tools, die SAP aktuell für die "moderne" Entwicklung zur Verfügung stellt für Bananensoftware halte, die erst noch beim Kunden reifen darf. Eclipse wird zwar immer besser, aber die WEB-IDE ist noch grauslig. Wir können gerne in 2-3 Jahren da noch mal drüber sprechen - evtl. ist man dann so weit, dass ich in den neuen Tools ähnlich schnell und sauber programmieren kann wie in der alten Welt.
ralf.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).
Irgendwo habe ich mal die Aussage gehört, dass Objektorientierung für Leute mit nicht hinreichendem Abstraktionsvermögen gedacht ist.

Ich glaube das reicht jetzt um dir ein ruhiges Wochenende zu gönnen, Ralf... Bild
live long and prosper
Stefan Schmöcker

email: stefan@schmoecker.de

Für diese Nachricht hat black_adept 2 Dankeschön bekommen :
Daniel, DeathAndPain
black_adept
Top Expert
 
Beiträge: 2727
Registriert: 08.01.2003, 13:33
Wohnort: Lehrte ( bei Hannover )
Dank erhalten: 398 mal
Ich bin: Freiberufler/in

Re: Wann kann man boolesche Werte in IFs direkt nutzen?

Beitragvon Daniel » 08.12.2017, 14:27

Das unterschreib ich.
Daniel
Specialist
 
Beiträge: 209
Registriert: 10.09.2003, 13:20
Wohnort: Bielefeld
Dank erhalten: 15 mal

Re: Wann kann man boolesche Werte in IFs direkt nutzen?

Beitragvon ralf.wenzel » 08.12.2017, 14:29

black_adept hat geschrieben:Huch - die Welt hat sich weiterentwickelt. Aber ich kann nicht erkennen dass sich deine Aussagen speziell auf ABAP beziehen. Ich fürchte, dass das, was du da schreibst, für die meisten noch halbwegs gängigen Programmiersprachen gilt ( werden ALGOL, PASCAL oder COBOL überhaupt noch eingesetzt? Wahrscheinlich ja fürchte ich, nachdem ich vor 3 Wochen in einem großen deutschen Möbelhaus noch R/2-Screens gesehen hatte ).


Richtig, aber Daniel hat sich über ABAP beschwert, nicht über COBOL.

black_adept hat geschrieben:So lange diese Mechanismen noch stark eingesetzt werden haben sie sich nicht überlebt. Wenn nur ein begrenztes Budget vorhanden ist, muss man sehen dass man mit dem lebt was man hat. Klar würde ich gerne ganz allgemeine Programme schreiben die auf allen Oberflächen superschick aussehen - aber meine Kunden scheinen deine schönen Theorien in der Praxis zu ignorieren.


Dann soll Daniel das tun, statt sich über diese Mechanismen, die andere brauchen, zu beschweren und deren "Erfinder" als Dilettanten zu bezeichnen. Das ist in meinen Augen anmaßend und beleidigend.

Ich wollte darauf hinaus, dass die durchaus ihre Berechtigung haben, weil anderswo mit mehr Weitblick entwickelt wird (zum Beispiel in der Produktentwicklung, wo man von Haus aus mit längerem Scope entwickeln muss als im Projektgeschäft).

black_adept hat geschrieben:Irgendwo habe ich mal die Aussage gehört, dass Objektorientierung für Leute mit nicht hinreichendem Abstraktionsvermögen gedacht ist.


Ich hab auch schon viel gehört - Autos sind nicht erfunden worden für Leute, die nicht reiten können.

black_adept hat geschrieben:Ich glaube das reicht jetzt um dir ein ruhiges Wochenende zu gönnen, Ralf...


Mein WE wird nicht ruhig - Heimspiel am So.


Ralf
Bild Ralf WenzelHeuristika
SAP-Development • Datenschutzberatung
PublikationenUngarische NotationXing
ralf.wenzel
Top Expert
 
Beiträge: 2682
Registriert: 18.09.2004, 13:03
Wohnort: Hamburg
Dank erhalten: 122 mal
Ich bin: Freiberufler/in

Re: Wann kann man boolesche Werte in IFs direkt nutzen?

Beitragvon ralf.wenzel » 08.12.2017, 14:30

Daniel hat geschrieben:Das unterschreib ich.


Du kennst doch die WEB-IDE gar nicht....

Nachtrag: Ich finde deine Äußerungen immer noch anmaßend und beleidigend - nur weil du was nicht brauchst oder etwas nicht so ist, wie du es willst, ist es nicht gleich sch***.


Ralf
Bild Ralf WenzelHeuristika
SAP-Development • Datenschutzberatung
PublikationenUngarische NotationXing

Für diese Nachricht hat ralf.wenzel einen Dank bekommen :
DeathAndPain
ralf.wenzel
Top Expert
 
Beiträge: 2682
Registriert: 18.09.2004, 13:03
Wohnort: Hamburg
Dank erhalten: 122 mal
Ich bin: Freiberufler/in

Re: Wann kann man boolesche Werte in IFs direkt nutzen?

Beitragvon Daniel » 08.12.2017, 14:36

Es gibt viel was ich nicht brauche.
Schrott ist das was schlecht gemacht ist.
Und ja, es gibt eine Schnittmenge.
Daniel
Specialist
 
Beiträge: 209
Registriert: 10.09.2003, 13:20
Wohnort: Bielefeld
Dank erhalten: 15 mal

VorherigeNächste

Zurück zu ABAP® für Anfänger

  Aktuelle Beiträge   
DSGVO in SAP umsetzen
vor 41 Minuten von ralf.wenzel 0 Antw.
Berechtigungsprüfung Dialog- vs. RFC-User im Single Sign On
vor 2 Stunden von sapdepp 0 Antw.
Reporttransaktion für andere Mitarbeiter zugänglich machen
vor 5 Stunden von Tron 1 Antw.
Materialkalkulation
vor 8 Stunden von erp-bt 1 Antw.
gelöst Barcodes in Warenbewegungen & Belegen
vor 7 Stunden von marc.braun 1 Antw.

  Ähnliche Beiträge beta
gelöst Tabelle kann Puffer nicht nutzen
23.02.2016, 08:59 von treyfifty 4 Antw.
Werte direkt nach Eingabe ermitteln
27.08.2012, 12:05 von JHM 7 Antw.
welcnen Datentyp wann???
13.12.2004, 10:02 von Gast 2 Antw.
gelöst Wann ist die Tabelle gespeichert auf der Datenbank?
30.11.2016, 06:47 von Tron 1 Antw.
Wann verwendet man Forms (statt Functions)
04.09.2012, 09:40 von ralf.wenzel 8 Antw.

 

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder

Feedback ...?

Was können wir verbessern? Hinterlasse deine Kontaktdaten, wenn du eine direkte Antwort möchtest.

... Absenden!