Das Notes Forum

Domino 9 und frühere Versionen => ND8: Entwicklung => Thema gestartet von: Kaljamam am 03.05.12 - 08:51:52

Titel: @Prompt Befehl - zuweisen des eingegebenen Wertes
Beitrag von: Kaljamam am 03.05.12 - 08:51:52
Hallo zusammen,

ich würde mal wieder Hilfe benötigen, weil ich mit meinem Wissen hier nicht mehr weiterkomme.

Mein Ziel:

User gibt Zahl zwischen 0 und 10.001 ein. Im Feld wird dann ein 4 ausgegeben.
User gibt Zahl zwischen 10.001 und 20.000 ein. Im Feld wird eine 8 ausgegeben.

Mein Code:

result := @Prompt([OkCancelEdit]; "Geben Sie das Guthaben ein"; "Guthaben"; "") ;
@True;
v_Haben := @TextToNumber(result);
@If(v_Haben := 0-10001; Ausgabe:= 4; v_Haben := 10001-20000; Ausgabe:= 8;0);
v_Haben := @Text(Ausgabe);
@SetField("a_Haben"; v_Haben);

Mein Problem:

Gebe ich 555 ein, gibt er tatsächlich auch 4 im Feld a_Haben aus. Gebe ich 15.000 ein, gibt er aber immer noch 4, statt 8 aus. Wäre über einen Tipp dankbar!
Titel: Re: @Prompt Befehl - zuweisen des eingegebenen Wertes
Beitrag von: Glombi am 03.05.12 - 09:04:07
v_Haben := 0-10001
netter Versuch ;-)

Notes interpretiert das "-" zwischen den Zahlen aber als Subtraktionsoperator und rechnet dann
v_Haben := 0-10001 = -10001

:= macht dann zudem noch eine Zuweisung und keinen Vergleich. Also = verwenden


Also so:
...@If(v_Haben >= 0 & v_Haben <= 10001;...

Andreas
Titel: Re: @Prompt Befehl - zuweisen des eingegebenen Wertes
Beitrag von: ata am 03.05.12 - 09:04:14
Zitat
@If(v_Haben := 0-10001; Ausgabe:= 4; v_Haben := 10001-20000; Ausgabe:= 8;0);
Die Zuweisung, bzw. der Vergleich der Werte innerhalb der @IF-Verzweigung funktioniert so nicht...


Toni

*** edit ***
@Andreas
Ups - da warst du schneller

Ausgabe := @If(
v_Haben > 1 & v_Haben <= 10001 ; 4 ;
v_Haben > 10001 ; 8 ;
0  );

Wobei die Konvertierung in Zahl so ohne Fehler abfangen auch etwas wage ist
Titel: Re: @Prompt Befehl - zuweisen des eingegebenen Wertes
Beitrag von: Axel am 03.05.12 - 09:06:39
Deine @If - Abfrage ist falsch. Du kannst hier keinen Bereich angeben und außerdem ist := falsch. Das ist ein Zuweisungsoperator

Aus dem Bauch heraus müsste das so aussehen:

...
@If((v_Haben > 0 & v_Haben <10001); Ausgabe:= 4; (v_Haben > 10000 & v_Haben < 20001); Ausgabe:= 8;0);
...

Ich hab's allerdings nicht getestet.

Axel
 
Titel: Re: @Prompt Befehl - zuweisen des eingegebenen Wertes
Beitrag von: Kaljamam am 03.05.12 - 10:20:31
Tausend Dank mal wieder. Jetzt ist alles klar, hab es eingebaut und schon erweitern können und alles klappt prima.... :D