Das Notes Forum

Domino 9 und frühere Versionen => ND7: Entwicklung => Thema gestartet von: gstueb am 13.08.09 - 00:21:26

Titel: Verwenden von NULL in der Formelsprache
Beitrag von: gstueb am 13.08.09 - 00:21:26
Hallo,

in der Formelsprache hätte man gelegentlich ja gerne einen Befehl, der "nichts" macht, z.B. in einem Speichern & Schließen Button:

Code
@If(@Command([FileSave]);@Command([FileCloseWindow]);""):

Mir wurde immer wieder mal erzählt, dass man hierfür anstelle von "" auch NULL verwenden kann.  Man findet diese Aussage auch im Internet, z.B. hier: http://www.madicon.de/tippstricks/index_files/000083.php

Code
@If(@Command([FileSave]);@Command([FileCloseWindow]);NULL):

Ist "NULL" tatsächlich ein Schlüsselwort, welches von Notes in irgendeiner Weise besonders behandelt wird, oder ist das einfach eine (in den meisten Fällen) uninitialisierte Variable?

Ich finde in der Notes-Hilfe keinen Hinweis auf ein eigenständiges Schlüsselwort "NULL" in der Formelsprache. Auch der Code

Code
NULL:="Welt";
@Prompt([Ok];"Titel";"Hallo " + NULL)

funktioniert mit der Variable "NULL" wie mit jeder anderen auch. In meinen Augen ist die Aussage, dass NULL in der Formelsprache irgendeine besondere Funktion hätte, eine Fehlinformation, oder wie seht ihr das?

Oder hat es sich einfach eingebürgert, die Variable NULL uninitialisiert zu lassen und für solche Zwecke zu verwenden? Wenn's gut funktioniert und das "allgemein üblich ist", wäre das ja auch in Ordnung.

Grüße,
Gregor
Titel: Re: Verwenden von NULL in der Formelsprache
Beitrag von: dirk_2909 am 13.08.09 - 07:10:52
Das mit NULL kenn ich auch nicht. Zumindest habe ich nichts davon gehört.

Ich verwende dann immer @Nothing. Das hat dann den Effekt, den Du Dir wünscht.
Titel: Re: Verwenden von NULL in der Formelsprache
Beitrag von: eknori am 13.08.09 - 07:28:17
NULL ist normalerweise eine nicht initialisierte Variable, hat daher weder den numerischen Wert 0 noch ist sie ein leerer String und kann daher auch nicht für Vergleichsoperationen verwendet werden.

@Nothing kenne ich nur im Zusammenhang mit @transform, und lt. Designer Hilfe ist @nothing auch in keinem anderen Kontext gültig. Dürfte sich also so verhalten wie NULL.

Die Frage, die sich stellt ist dann, wie sich die @Formeln verhalten, wenn NULL übergeben wird; wird explizit 0 oder "" erwartet, oder wird ein Wert !=NULL erwartet.
Es kann ja sein, daß das interne Coding der Funktion bei einer nicht initialisierten Variable auf's Gesicht fällt.

Ich persönlich würde daher immer "" verwenden; oder man setzt NULL:="". Evtl. wird der Code dadurch übersichtlicher ...