Autor Thema: Formeln werden nicht ausgeführt  (Gelesen 1164 mal)

Offline Gogun_Beokz

  • Junior Mitglied
  • **
  • Beiträge: 83
  • Geschlecht: Männlich
Formeln werden nicht ausgeführt
« am: 22.08.05 - 14:28:38 »
Hi @all

hab ein Problem und ich hoffe ihr wisst woran das liegt. Ich habe diese Validierungsformeln für eine IP, es wird jedoch nur die letzte Formel ausgeführt (dass das Feld nicht leer sein darf)...

_______________________________________________________

alph := "A" : "B" : "C" : "D" : "E" : "F" : "G" : "H" : "I" : "J" : "K":"L":"M":"O":"P":"Q":"R":"S":"T":"U":"V": "W":"X":"Y":"Z" : "," : ":" : "#" : "+" : "*";

@If(@Contains(@ThisValue;alph) & @IsNewDoc  ; @Failure("IP ist ungültig");@Success);

@If(@Word(@ThisValue;".";5) = "" & @IsNewDoc;@Success;@Failure("IP ist ungültig"));

@If(@Word(@ThisValue;".";4) = "" & @IsNewDoc;@Failure("IP ist ungültig");@Success);

@If(@ThisValue = "" & @IsNewDoc;@Failure("Sie müssen einen RNamen angeben");@Success);

Liste := @DbColumn("":"nocache";@DbName;"Übersicht";3);
@If(@Contains(Liste;@ThisValue);@Failure("Die IP existiert bereits in der Datenbank");@Success);

@If(@ThisValue = "" & @IsNewDoc;@Failure("Sie müssen eine IP-Adresse angeben");@Success)

________________________________________________________________

eine Idee?

Mit freundlichen Grüßen

G0gUn_b3ok*Z
_______________________________________________________

Offline Tode

  • Moderatoren
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 6.883
  • Geschlecht: Männlich
  • Geht nicht, gibt's (fast) nicht... *g*
Re: Formeln werden nicht ausgeführt
« Antwort #1 am: 22.08.05 - 17:44:20 »
das ist doch ganz einfach:

Notes ist eine Sequentielle Sprache, die immer Ihren kompletten Code abarbeitet, wenn man es Ihr nicht explizit anders sagt.

Deine erste @If- Schleife validiert damit möglicherweise in einen Failure, der Wert des Failures wird aber nicht ausgegeben, sondern im Internen "ergebnisspeicher" gepuffert.

Mit der nächsten @If- Schleife überschreibst Du diesen Puffer wieder mit dem nächsten Ergebnis.

Wenn man in der Formel- Sprache möchte, dass die Auswertung an einer bestimmten Stelle endet, dann muss man das dem Client sagen:

@If(@Contains(@ThisValue;alph) & @IsNewDoc  ; @Return( @Failure("IP ist ungültig") );@Success);

@Return() bricht die Formelausführung an einer bestimmten Stelle ab, und führt als letztes die in den Klammern befindliche Funktion aus, in Deinem Fall wird also mit einem Failure returned (tolles denglisch) und der Client sagt "IP ist ungültig"

HTH
Tode

HTH
Tode
Gruss
Torsten (Tode)

P.S.: Da mein Nickname immer mal wieder für Verwirrung sorgt: Tode hat NICHTS mit Tod zu tun. So klingt es einfach, wenn ein 2- Jähriger versucht "Torsten" zu sagen... das klingt dann so: "Tooode" (langes O, das r, s und n werden verschluckt, das t wird zum badischen d)

Offline Gogun_Beokz

  • Junior Mitglied
  • **
  • Beiträge: 83
  • Geschlecht: Männlich
Re: Formeln werden nicht ausgeführt
« Antwort #2 am: 23.08.05 - 08:42:17 »
Danke für die ausführliche Antwort!

Habs ausprobiert klappt wie eine Eins.

Mit freundlichen Grüßen

G0gUn

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz