Das Notes Forum

Domino 9 und frühere Versionen => ND6: Entwicklung => Thema gestartet von: RvM am 17.08.06 - 16:55:50

Titel: Berechnetes Listenfeld im Web
Beitrag von: RvM am 17.08.06 - 16:55:50
Folgende Augabenstellung:
Anmeldeformular für eine Besichtigung. Es wird alle 15 Minuten eine Besichtigung gestartet. Pro Zeiteinheit können max. 25 Personen teilnehmen. Ich habe nun als erstes ein Dokument erstellt, in dem es Zahlenfelder gibt, in der pro Zeiteinheit die max. Besucherzahl eingetragen wird.
Nun soll im Anmeldeformular der Besucher angeben, wieviele Besucher er mitbringt. Dann soll er eine Zeitspanne aus einem Listenfeld aussuchen. Normalerweise gibt man ja ins Listenfeld so etwas wie
11.00 - 11.15 Uhr|1" usw. ein. Dieser Eintrag soll aber nun berechnet werden.
Ich bin soweit, das im o.g. Dokumente die Anzahl der Besucher pro Zeitspanne berechnet werden. Wenn nun für eine Zeitspanne der Wert 0 ist, so soll diese Zeitspanne auch nicht mehr im Listenfeld  erscheinen.
Gedacht hatte ich mir folgende Lösung:
mit der Formel:
Code
u11_1=@GetDocField("281E16A5A7BA6FF7C12571CD0048EF33";"U_11_1");
u11_2=@GetDocField("281E16A5A7BA6FF7C12571CD0048EF33";"U_11_2");
wollte ich die Werte der Zeitspannen auslesen und mit einer @IF Formel den Inhalt des Listenfeldes darstellen. Diese Formel sollte so ausshen:
Code
@If(u11_1=0;"";"11.00 - 11.15 Uhr";u11_2=0;"";"11.15 - 11.30 Uhr";"")
Das klappt aber nicht, denn dann spuckt mir der  Browser einen 500er mit folgender Fehlermeldung aus:
Code
Incorrect data type for operator or @Function: Number expected
Wo liegt der Fehler?
Titel: Re: Berechnetes Listenfeld im Web
Beitrag von: umi am 18.08.06 - 10:23:37
evtl. liegts an den fehlenden Doppelpunkten

Code
u11_1:=@GetDocField("281E16A5A7BA6FF7C12571CD0048EF33";"U_11_1");
u11_2:=@GetDocField("281E16A5A7BA6FF7C12571CD0048EF33";"U_11_2");
@If(@tonumbeR(u11_1)=0;"";"11.00 - 11.15 Uhr";@tonumber(u11_2)=0;"";"11.15 - 11.30 Uhr";"")
Titel: Re: Berechnetes Listenfeld im Web
Beitrag von: RvM am 18.08.06 - 10:29:37
Danke für die Hilfe - aber das war es leider nicht  :-[
Titel: Re: Berechnetes Listenfeld im Web
Beitrag von: tks am 18.08.06 - 13:52:14
1. Der @If funktioniert so nicht.
@If(cond1;act1;cond2;act2;...;elseact). Dein If versucht aber Wenn(u11_1 = 0;dann dies;ansonsten das;wenn u11_2 = 0;dann dies;ansonstendas;und zum Schluss dieses).

2. Wenn Listenfeld, musst Du auch eine Liste ausgeben. Das geht nicht in einer einzigen If-Abfrage, weil sobald die erste Bedingung aber zutrifft, wird der Rest vom If nicht mehr augeführt.

Versuche es mal mit diesem Code (als Anregung):

_liste := "";
_liste := @If(f1>0;_liste + ";10:00 - 10:15";_liste);
_liste := @If(f2>0;_liste + ";10:15-10:30";_liste);
@Explode(_liste;";")

Gruß

Thomas
Titel: Re: Berechnetes Listenfeld im Web
Beitrag von: tks am 21.08.06 - 11:38:01
@RvM

Hat's eigentlich was geholfen?  :-: