Code: Alles auswählen.
IF abap_true.
WRITE 'ja1'.
ENDIF.
Code: Alles auswählen.
IF methode( exportwert = x ). " Returning-Wert ist vom Typ BOOLE_D
WRITE 'ja1'.
ENDIF.
Code: Alles auswählen.
IF methode( exportwert = x ) = abap_true.
WRITE 'ja!'.
ENDIF
Code: Alles auswählen.
CASE abap_true.
WHEN lv_wert1.
WRITE 'ja!'.
WHEN lv_wert2.
WRITE 'auch ja!'.
ENDCASE.
Code: Alles auswählen.
IF methode( ). "Kurzform für IF methode( ) IS NOT INITIAL.
write 'ja'.
endif.
"ohne Methode geht das dann halt immer noch nicht
IF abap_true.
write 'ja'.
endif.
Folgende Benutzer bedankten sich beim Autor fr-g für den Beitrag:
DeathAndPain
Das war der Sinn meines Threads. Wobei ich da explizit ausgeführt habe, dass es eben doch funktioniert; insofern hättest Du mir das gerne glauben können. Das war ja gerade meine Frage, warum das wider Erwarten funktioniert.Thanatos82 hat geschrieben:Hey,
also irgendwie kann das ja auch nicht funktionieren... "IF abap_true".... da fehlt doch sinngemäß etwas
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.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.
Code: Alles auswählen.
define if_true.
if &1 = abap_true.
end-of-definition.
if_true abap_true.
write: /01 'Ja'.
endif.
Code: Alles auswählen.
SELECT-OPTIONS s FOR sy-datum DEFAULT sy-datum.
START-OF-SELECTION.
IF s.
WRITE: / sy-datum.
ENDIF.
Nu ist's zu spät...ralf.wenzel hat geschrieben:Ob man diesen Bug unbedingt weitersagen soll, weiß ich nicht - versehentlich kommt da keiner drauf und so wirft man nur Fragen auf
Das würde ich aber nicht unbedingt zum Maßstab nehmen. Es gibt fast nichts, was man je nach Geschmack nicht unschön finden kann, und lesbar ist das auf jeden Fall. Wenn ein Kunde sich da affig hat, dann kann man es bei dem ja anders machen. Dass man sich mit so einem Statement kundenübergreifend den Ruf versaut, halte ich für ein Gerücht. Da haben die Codes der meisten Entwickler ganz andere Mängel.Ralf hat geschrieben: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.
Folgende Benutzer bedankten sich beim Autor DeathAndPain für den Beitrag:
Daniel
Nee, ich würde dich fragen, warum du in einem Literal nach einem X suchst - das siehst du doch schon beim codieren, ob da eins drin ist.DeathAndPain hat geschrieben:IF 'Wert1;Wert2;Wert3' CS x.
Da muss man auch erst einen Augenblick drüber nachdenken, was ich da mache, aber dann ist es erheblich besser lesbar (und kürzer).