Autor Thema: Ungleich operator in Formula will nicht wie ich will  (Gelesen 4983 mal)

Offline Senfkorn

  • Junior Mitglied
  • **
  • Beiträge: 57
Hallo zusammen

ich habe folgendes Problem mit Formula:

In einer @if-abfrage habe ich folgende Bedingung:

@Middle(Code; 2; 13) = @Middle(V2; 2; 13); @URLOpen(@WebDbName + "/de/errorcode");

Ich vergleiche also einen 'Code', den der User eingegeben hat, mit einem Resultat aus einer DB-Abfrage ("V2 := @DbColumn( _ClassCache ; "":_DB; _View  ;1);").

Wenn die Bedingung so konstruiert ist wie oben, dann erscheint immer dann eine Fehlermeldung ('errorcode'), wenn der Code richtig ist - was so natürlich unsinn ist. Sobald ich aber das "=" durch "!=" ersetze, funktioniert die Abfrage nicht mehr - es erscheint jetzt immer die Fehlermeldung ('errorcode'), also auch dann, wenn der Code richtig ist.

Hat mir dazu jemand einen Tip?
« Letzte Änderung: 16.08.05 - 16:01:19 von Senfkorn »

Offline Axel

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.658
  • Geschlecht: Männlich
  • It's not a bug, it's Notes
Re: Ungleich operator in Formula will nicht wie ich will
« Antwort #1 am: 16.08.05 - 16:07:58 »
Wenn die Bedingung so konstruiert ist wie oben, dann erscheint immer dann eine Fehlermeldung ('errorcode'), wenn der Code richtig ist - was so natürlich unsinn ist. Sobald ich aber das "=" durch "!=" ersetze, funktioniert die Abfrage nicht mehr - es erscheint jetzt immer die Fehlermeldung ('errorcode'), also auch dann, wenn der Code richtig ist.

Ja was denn nu?

Das ist doch nicht die ganze IF-Abfrage.


Axel
Ohne Computer wären wir noch lange nicht hinterm Mond!

Driri

  • Gast
Re: Ungleich operator in Formula will nicht wie ich will
« Antwort #2 am: 16.08.05 - 16:09:30 »
Ich versteh auch nur Bahnhof.

Willst Du das hier erreichen ?

@If(@Middle(Code; 2; 13) = @Middle(V2; 2; 13); ""; @URLOpen(@WebDbName + "/de/errorcode"))

Also wenn A = B dann nix, ansonsten Fehler.

Offline Axel

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.658
  • Geschlecht: Männlich
  • It's not a bug, it's Notes
Re: Ungleich operator in Formula will nicht wie ich will
« Antwort #3 am: 16.08.05 - 16:11:13 »
Hi,

außerdem liefert @DbColumn eigentlich eine Liste mit mehreren Werten zurück. Müßte man es nicht @DbLookup heißen?


Axel


Ohne Computer wären wir noch lange nicht hinterm Mond!

Offline Senfkorn

  • Junior Mitglied
  • **
  • Beiträge: 57
Re: Ungleich operator in Formula will nicht wie ich will
« Antwort #4 am: 16.08.05 - 16:23:24 »
ja, ich weiss, dass die @if abfrage da nicht zu ende ist. Da käme noch eine Menge sonst dazu. Aber mir geht es nur um diesen Teil... Denn dieser Funktioniert nicht...

Das ganze sieht in etwa so aus:
@if(
bedingung1; tuetwas1;
bedingung2; tuetwas2;
@Middle(Code; 2; 13) = @Middle(V2; 2; 13); @URLOpen(@WebDbName + "/de/errorcode");
bedingung4; tuetwas4;
bedingung5; tuetwas5;
bedingung6; tuetwas6; tusonstwas);

Hoffentlich ist es so etwas klarer...


Offline Senfkorn

  • Junior Mitglied
  • **
  • Beiträge: 57
Re: Ungleich operator in Formula will nicht wie ich will
« Antwort #5 am: 16.08.05 - 16:24:32 »
Axel: ja, die liefert eine Liste zurück, und diese Liste kann durchsucht werden.

Offline Axel

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.658
  • Geschlecht: Männlich
  • It's not a bug, it's Notes
Re: Ungleich operator in Formula will nicht wie ich will
« Antwort #6 am: 16.08.05 - 16:28:29 »
Hi,

meines Wissens erwartet @Middle eine Zeichenfolge und keine Liste.


Axel
Ohne Computer wären wir noch lange nicht hinterm Mond!

Driri

  • Gast
Re: Ungleich operator in Formula will nicht wie ich will
« Antwort #7 am: 16.08.05 - 16:35:35 »
Ich denke auch, es wir daran liegen :

@Middle(Code; 2; 13) = @Middle(V2; 2; 13)


Ich verstehe auch den Sinn des DBColumn an der Stelle nicht. Du willst doch offensichtlich einen bestimmten Wert haben, oder nicht ?
Mit DBColumn bekommst Du aber doch alle Werte, die in der Spalte der View vorhanden sind.


Sonst gib uns mal bitte ein Beispiel, was denn in Code und in V2 drinstehen sollte, das macht die Sache evtl. nen bißchen einfacher.

Offline Senfkorn

  • Junior Mitglied
  • **
  • Beiträge: 57
Re: Ungleich operator in Formula will nicht wie ich will
« Antwort #8 am: 16.08.05 - 17:11:23 »
Ich habs mit DBLookup schon versucht, bin aber auf keinen grünen Zweig gekommen.
Aber dennoch eine Frage: was gibt @DBLookup zurück, wenn es den 'key' nicht gibt in der View?

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: Ungleich operator in Formula will nicht wie ich will
« Antwort #9 am: 16.08.05 - 17:42:37 »
Dann bekommst Du den Zustand @Error zurück ... Steht auch in der DesignerHelp.

Bernhard

Offline Axel

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.658
  • Geschlecht: Männlich
  • It's not a bug, it's Notes
Re: Ungleich operator in Formula will nicht wie ich will
« Antwort #10 am: 16.08.05 - 19:06:14 »
Ich verstehe immer noch nicht was das Ganze werden soll. Klär uns mal ein bisschen genauer auf und gibt mal ein paar Beispiele. Vielleicht wird's dann einfacher.


Axel
Ohne Computer wären wir noch lange nicht hinterm Mond!

Offline eknori

  • @Notes Preisträger
  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 11.730
  • Geschlecht: Männlich
Re: Ungleich operator in Formula will nicht wie ich will
« Antwort #11 am: 16.08.05 - 19:13:53 »
Ich verstehe das auch nicht, aber ich würde einfach mal sehen, was @Middle(V2; 2; 13) denn so ergibt. Dann kommt man sehr schnell dahinter, warum das nicht funzt ...

und was ist mit _ClassCache? Cash or NoCash ? :D
« Letzte Änderung: 16.08.05 - 19:18:56 von eknori »
Egal wie tief man die Messlatte für den menschlichen Verstand auch ansetzt: jeden Tag kommt jemand und marschiert erhobenen Hauptes drunter her!

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: Ungleich operator in Formula will nicht wie ich will
« Antwort #12 am: 17.08.05 - 00:03:45 »
Ich verstehe immer noch nicht was das Ganze werden soll. Klär uns mal ein bisschen genauer auf und gibt mal ein paar Beispiele. Vielleicht wird's dann einfacher.

Axel hat den Punkt getroffen, meine ich. Wenn man oft bei Fragen wüsste,
- wozu das ganze
- Welcher Input ist da ? Welcher Output wird erwartet
- Was sind die anderen Rahmenbedingungen
dann würde manche Beantwortung viel einfacher sein (wenn auch manchmal aufwändiger, aber wenigstens zielführender). Oft stimmt ja auch das ganze Konzept nicht, und wenn man (weil man es als Antwortender eben weiss) dann den Schubs in eine ganz andere Richtung geben könnte ...

Es sind eine Menge guter Leute hier, die sich auch gerne länger Zeit für eine Antwort nehmen - nur muss man dazu "die ganze Wahrheit kennen". Auf diese Art und Weise ist hier schon vielen geholfen worden. Und noch mehr waren frustriert, obwohl sie selber diese Chance vergeben haben.

Bernhard

PS: In Form einer Metapher die Situation in diesem Thread: Mit @dbLookup öffnet man einen (handelsüblichen) Wasserhahn. Mit @dbColumn die Tore einer Staumauer. Wenn man denkt, das miteinander "testweise" austauschen zu können, der hat ein Problem.
Und wenn man uns sagen würde, was man will (und hoch und heilig versichert, die DesignerHelp wenigstens in dieser Sache hochgradig studiert zu haben), dann können wir auch helfen. Sonst nicht.

Offline Senfkorn

  • Junior Mitglied
  • **
  • Beiträge: 57
Vielen Dank!
« Antwort #13 am: 17.08.05 - 16:07:13 »
Vielen Dankfür eure Hilfe!

Wenn die Fragestellung etwas missverständlich oder ungenau war, tut mir dies leid.
In der Designer-Help steht leider nichts davon, dass man ein @Error zurückerhält bei leeren @DBlookups... Auf jeden Fall nicht in meiner Version 6.5.1
Ich habe das Problem dank derm @Error auf eine sauberere Art gelöst.

Danke nochmals!

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: Ungleich operator in Formula will nicht wie ich will
« Antwort #14 am: 17.08.05 - 16:16:49 »
Also in meiner DesignerHelp (die nennt sich auch 6.5.1) steht das eindeutig drin:

Zitat
FIELD Telefon := @DbLookup(""; "Becker" : "names.nsf"; "People";
@Right(Name; " ") + " , " + @Left(Name; " "); "OfficePhoneNumber");
@If(@IsError(Telefon);"Not available")

Aber Spass beiseite - das findet sich unter Beispielen für @IsError. Bei @dbLookup kein einziges Wort. Und das ist nicht fair  :-[

Aber wir haben ja das Forum als geballtes Wissen  ;)

Bernhard

PS: Wegen der Behauptung, es stünde in der DesignerHelp, bitte ich um Entschuldigung.

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: Ungleich operator in Formula will nicht wie ich will
« Antwort #15 am: 17.08.05 - 16:19:04 »
Senfkorn, kannst Du für die Nachwelt noch kurz erläutern, wie Du Dein Problem konkret gelöst hast ? Ich bin mir sicher, dass Dir der Dank Einiger später einmal lange nachschleichen wird. Ernsthaft.

Bernhard

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz