Das Notes Forum

Domino 9 und frühere Versionen => ND7: Entwicklung => Thema gestartet von: madmad am 18.08.10 - 12:43:16

Titel: Problem bei einer IF Abfrage
Beitrag von: madmad am 18.08.10 - 12:43:16
Hallo Notes Welt,

ich als Frischling habe Probleme mit einer IF Abfrage.

Hier kommt die Abfrage:

@If (Kategorie="";(@Return(@Prompt([Ok];"Hinweis";"Sie haben keine Kategorie eingetragen, Bitte Kategorie eintragen!!!")));

Die Fehlermeldung lautet: "Fehlende rechte Klammer" ???
Ich sehe den Wald vor lauter Bäumen nicht.Wo fehlt die rechte Klammer.
Wer kann mir kurz helfen.

MFG
Ein Frischling.
Titel: Re: Problem bei einer IF Abfrage
Beitrag von: schneie am 18.08.10 - 12:47:57
Einfach mal Klammern zählen  ::)

=> 4 mal auf und nur 3 mal zu geht halt nicht

VG Markus
Titel: Re: Problem bei einer IF Abfrage
Beitrag von: ascabg am 18.08.10 - 12:48:35
Hallo,

@If (Kategorie="";(@Return(@Prompt([Ok];"Hinweis";"Sie haben keine Kategorie eingetragen, Bitte Kategorie eintragen!!!"))); <sonst mache was>);


Andreas
Titel: Re: Problem bei einer IF Abfrage
Beitrag von: schneie am 18.08.10 - 12:50:00
Und in deiner IF-Syntax ist auch noch ein Fehler.

=> du brauchst noch ein 3 Argument.

Schau dir mal die Notes-Hilfe an, da gibt es sehr gute Beispiele...

VG Markus
Titel: Re: Problem bei einer IF Abfrage
Beitrag von: madmad am 18.08.10 - 12:52:44
Hallo Andreas,

sonst soll er nichts machen.
Wie wird das in der IF Abfrage mit eingebaut?
Tausend dank.

Ein LN Frischling.
Titel: Re: Problem bei einer IF Abfrage
Beitrag von: ascabg am 18.08.10 - 12:54:37
Wo hast Du Deine If-Abfrage denn eingebaut?
und
Folgt danach noch weiterer Code?


Andreas
Titel: Re: Problem bei einer IF Abfrage
Beitrag von: madmad am 18.08.10 - 12:55:36
Hallo Andreas,
in einer Schaltfläche ist die IF Abfrage eingebaut.

MFG

Frischling.
Titel: Re: Problem bei einer IF Abfrage
Beitrag von: koehlerbv am 18.08.10 - 12:55:54
Das fehlende Argument könnte der Formelkiller schlecht hin sein:
@Return ("").

Dies beendet den Code, auch wenn noch weitere Anweisungen folgen sollten.

HTH,
Bernhard
Titel: Re: Problem bei einer IF Abfrage
Beitrag von: madmad am 18.08.10 - 12:56:38
Hallo Andreas,
danach folgt kein weiterer CODE.

MFG
Frischling
Titel: Re: Problem bei einer IF Abfrage
Beitrag von: schneie am 18.08.10 - 13:10:00
Dann probiers doch einfach mal mit einem leeren String => ""
Titel: Re: Problem bei einer IF Abfrage
Beitrag von: koehlerbv am 18.08.10 - 13:14:08
Wenn ich mir die Meldung so anschaue: Wäre Überprüfung und Meldung nicht besser in der Eingabevalidierung aufgehoben?
@If (Kategorie = ""; @Failure ("Gemecker"); @Success)

Bernhard
Titel: Re: Problem bei einer IF Abfrage
Beitrag von: madmad am 18.08.10 - 14:03:08
Hallo,
über eine Schalftfäche wurde die IF Abfrage eingebaut weil erst nach dürcken der Schaltfläche
das Feld Kategorie abgefragt werden soll. (Die Schaltfläche steht auch nur einen bestimmten Personenkreis zur Verfügung) (verbergen Formel) Eine Eingabevalidierung ist hier nicht so hilfreich.

Ich habe jetzt die Formel erweitert, leider ohne Erfolg.

Kann mir bitte nochmal jemand sagen wo jetzt der Fehler liegt.

Formel:
@If (Kategorie="";(@Return(@Prompt([Ok];"Hinweis";"Sie haben keine Kategorie eingetragen, Bitte Kategorie eintragen!!!")));@Return(""));

Fehlermeldung:
Ein Operator oder Semikolon wurde erwartet aber nicht gefunden:')'


Tausend dank an die Notes Gemeinde

Der Frischling.
Titel: Re: Problem bei einer IF Abfrage
Beitrag von: koehlerbv am 18.08.10 - 14:07:30
Die gepostete Formel ist in Ordnung - an der Formel liegt die Meldung nicht.

Hinweis: Das erste @Return kannst Du Dir sparen - das ist völlig unnötig.

Bernhard
Titel: Re: Problem bei einer IF Abfrage
Beitrag von: Keydins am 19.08.10 - 16:12:54
Wie Bernhard schon schrieb, an sich ist die Formel i.O., das erste @Return kannst du weglassen und auch die Klammer, die die  then Bedingung des 'if ... then ... else' umspannt ist unnötig.

Als kleinen Tip am Rande: Es ist bei der Programmierung nicht immer sinnvoll, alles in eine Zeile quetschen zu wollen, denn Notes hat leider in der Version 7 keinen Editor, der dir z.B. die verwendeten Klammerebenen deutlich anzeigen kann. Das führt grade bei komplexeren Formeln sehr oft mal dazu, dass du viel Zeit damit verschwendest, um eine fehlende Klammer zu lokalisieren.

Wenn du deinen Code wie folgt schreibst, findest du dich grade als Anfänger deutlich leichter darin zurecht, da du z.B. sofort sehen könntest, dass du eine Klammer um ein Element gespannt hast, bei dem das gar nicht nötig gewesen wäre.

Code
@If (
	Kategorie = "";
		(
			@Return(
					@Prompt(
						[Ok];
						"Hinweis";
						"Sie haben keine Kategorie eingetragen, Bitte Kategorie eintragen!!!"
					)
			)
		);
		@Return("")
	);

Den Regeln der deutschen Sparache ist übrigens mit einem Satzzeichen genüge getan, insbesondere Hinweis- oder Fehlermeldungen sollten einen ordentlichen Eindruck machen und auf derartige Dinge verzichten.

Gruß
Dirk