Domino 9 und frühere Versionen > ND8: Entwicklung

If must have an odd number of Arguments?

(1/1)

ThomasHB:
Hallo Zusammen,

folgender Code macht mir irgendwie Probleme...


--- Code: ---@If(!@IsNewDoc;
Datum_heute:=@Date(@Now);
Datum_Anstellung:=F_DT_S;
Dabei:=((Datum_heute-Datum_Anstellung) /60 /60 /24 /365);
@Integer(Dabei);
"")
--- Ende Code ---

Die Rückmeldung ist: @IF must have an odd number of Arguments???

Wenn ich in einer Zeile schreibe:


--- Code: ---@If(!@IsNewDoc;Action1;"")
--- Ende Code ---

Dann klappt das doch auch... Verstehe die Meldung deshalb nicht.

Was ist denn da falsch?

Grüße,
Thomas

Glombi:
Probiers mal mit

@If(!@IsNewDoc;
@Do(
   Datum_heute:=@Date(@Now);
   Datum_Anstellung:=F_DT_S;
   Dabei:=((Datum_heute-Datum_Anstellung) /60 /60 /24 /365);
   @Integer(Dabei)
);
"")

Thomas Schulte:

--- Zitat von: ThomasHB am 14.04.11 - 11:02:42 ---
--- Code: ---@If(!@IsNewDoc;
Datum_heute:=@Date(@Now);
Datum_Anstellung:=F_DT_S;
Dabei:=((Datum_heute-Datum_Anstellung) /60 /60 /24 /365);
@Integer(Dabei);
"")
--- Ende Code ---

--- Ende Zitat ---
Und als Erklärung:
Deine Anweisung sagt dem @If wörtlich ...

Wenn du kein neues Dokument bist dann setze Datum_heute. Trifft die erste Bedingung nicht zu, dann Prüfe ob. ....

@If hat immer folgenden Aufbau:
Bedingung; Wenn wahr dann; sonst ...

Man kann @if aber auch mit mehreren Bedingungen verbinden. Das geht dann so:
Bedingung; Wenn wahr dann; Bedingung2; Wenn wahr dann; Bedingung 3; wenn wahr dann; sonst.

Der Trenner für die Bedingungen ist der ";". Wenn du also komplexere Formeln im "Wenn wahr dann" Teil verwenden willst, dann musst du die immer zusammenfassen. Und das geht mit @Do, wie es dir Andreas schon gezeigt hat.

ThomasHB:
OK, wieder was dazu gelernt.

Danke.  :)

Gruß,
Thomas

Navigation

[0] Themen-Index

Zur normalen Ansicht wechseln