Domino 9 und frühere Versionen > ND6: Entwicklung

Validierungsformel in Datumsfeld

<< < (2/4) > >>

DaWutz:
Dazu aber noch eine Frage / Anmerkung:

Ich hab mir interessehalber grade mal einen Agenten gebaut mit folgendem Code:

tmp := @Prompt([OkCancelEdit];"Test";"Hier was eingeben:";"Text");

@If(tmp=NULL;@Prompt([Ok];"";"Leeres Eingabefeld");@Prompt([Ok];"";"Eingegebener Wert: " + tmp));

Der funkt "zuverlässig". Also wenn die tmp-Variable "" ist (in dem Fall also NULL) dann springt der Agent immer in das "Leere Eingabefeld".

Wenn ich statt tmp_NULL ein @IsNull(tmp) einsetze auch. Ist das nun Zufall, oder einfach undokumentiert (ich hab auf jeden Fall nix in der Hilfe gefunden - nur im Bezug auf NULL und LS)?

Thomas Schulte:
Definier doch einfach mal vorne dran
NULL := "EinWert"
und schau nach was dann passiert.  8)

Die Erklärung dazu hat Bernhard ja schon gegeben.

koehlerbv:
Nun, der Inhalt der Variablen "NULL" ist nix - die gibt es ja gar nicht. Die Formelsprache interpretiert das immer als "" (das ist ja auch bei einem leeren Datums-/Zeitfeld so).

@IsNull macht selbiges - es läuft also immer auf den Vergleich zwischen tmp-Inhalt und "" hinaus.

Ganz sauber ist das natürlich nicht, da NULL ja an sich nicht unbedingt was mit einem Leerstring zu tun hat.

Bernhard

PS: @Thomas - genau das ist der Beweis, wenn man sich von der Bedeutung von "NULL" in Formelsprache überzeugen will. Vice versa kann man das dann mal mit LS probieren (oder vielen anderen Programmiersprachen)  ;D

Thomas Schulte:
Nur Martin rührt sich nimmer  ;D

DaWutz:
Ok, nun hab auch ich das verstanden.

Weil NULL in meinem Beispiel nicht definiert ist, ist sein Wert beim Aufruf in dem @if auch gleich NIX, daher funkt das.

Über die Sache mit dem Leerstring bin ich bei meinem ersten Posting auch schon gestolpert. Null ist ja NIX, während "" ein leerer String ist
(OT: Ist ein "leerer String" also die freundlichere Umschreibung für "Keinen Arsch in der Hose haben"?  ;D)

Navigation

[0] Themen-Index

[#] Nächste Seite

[*] Vorherige Sete

Zur normalen Ansicht wechseln