Autor Thema: @DBLookup-Rückgabewert bei keiner Übereinstimmung  (Gelesen 2059 mal)

Offline Silver

  • Senior Mitglied
  • ****
  • Beiträge: 294
  • Geschlecht: Männlich
  • "free your mind"
Hallo!

Ich hab folgende Teil-Formel in einer Schaltfläche:

temp := @DbLookup("" ; "" ; "MAALLE" ; @Name([CN];@UserName); "Filiale" ; [FailSilent] );
temp1 := @DbLookup("" ; "" ; "MAALLE" ; @Name([CN];@UserName); "Abteilung");
temp_endg := @If(temp=""; "NO" ; @If(temp = "Zentrale" ; temp1 ; temp));

Diese funzt auch soweit über Notes 6 (da dort wohl die Funktion [FailSilent] integriert ist)

Brauche allerdings so etwas unter Notes 5.5 (hier erscheint bei dieser Formel "Zu viele Argumente").

D. h. Wenn der User, der die Datebank aufmacht nicht in der Ansicht MAALLE gefunden werden kann, soll "" übergeben werden. Denn hierüber steuere ich, welche Ansicht aufgemacht werden soll. Momentan bekomme ich aber die Meldung "Serverfehler: Eintrag im Indes nicht gefunden". Welchen Wert gibt mir @DBLookup bei keiner Übereinstimmung zurück? Habs mit 0 und mit "" versucht. Aber das selbe Prob.

Hat jemand eine Idee?  ???
« Letzte Änderung: 01.12.05 - 09:08:12 von Silver »

Offline Thomas Schulte

  • @Notes Preisträger
  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 4.388
  • Geschlecht: Männlich
  • Ich glaub mich tritt ein Pferd
Re: @DBLookup-Rückgabewert bei keiner Übereinstimmung
« Antwort #1 am: 30.11.05 - 09:13:04 »
@if(@iserror (@dblookup....);"";@Dblookup(...))
Damit wird das ding zwar im Erfolgsfall zweimal aufgerufen aber das ist da die einzige Möglichkeit
« Letzte Änderung: 30.11.05 - 09:49:46 von Thomas Schulte »
Thomas Schulte

Collaborative Project Portfolio and Project Management Software

"Aber wo wir jetzt einmal soweit gekommen sind, möchte ich noch nicht aufgeben. Versteh mich recht, aufgeben liegt mir irgendwie nicht."

J.R.R.Tolkien Herr der Ringe, Der Schicksalsberg

OpenNTF Project: !!HELP!! !!SYSTEM!!  !!DRIVER!!

Skype: thomasschulte-kulmbach

klaussal

  • Gast
Re: @DBLookup-Rückgabewert bei keiner Übereinstimmung
« Antwort #2 am: 30.11.05 - 09:14:13 »
Aus der Hilfe:
Zitat
Damit die Suche erfolgreich durchgeführt wird, muss die Ansicht eine sortierte Spalte enthalten, weil andernfalls ein NULL-Wert zurückgegeben wird.

Offline Knarfbrain

  • Frischling
  • *
  • Beiträge: 17
  • Geschlecht: Männlich
Re: @DBLookup-Rückgabewert bei keiner Übereinstimmung
« Antwort #3 am: 30.11.05 - 09:33:01 »
ich frage solche Fälle mit folgenden Formeln ab:

user:=@DbColumn("" : "NoCache"; "" : ""  ;"Ansicht"; 1);
erg:=@If(@IsMember(@Name([CN];@UserName);user);@DbLookup("" : "NoCache"; "" : ""  ;"Ansicht"; @Name([CN];@UserName);2);"");

Ich hoffe es hilft.

Gruß
Frank

Offline Thomas Schulte

  • @Notes Preisträger
  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 4.388
  • Geschlecht: Männlich
  • Ich glaub mich tritt ein Pferd
Re: @DBLookup-Rückgabewert bei keiner Übereinstimmung
« Antwort #4 am: 30.11.05 - 09:52:48 »
@Klaus, das ist richtig aber denke ich bei diesem Problem nicht relevant. Er fragt ja wie er den [FailSilent] in R5 nachbilden kann.

@Frank, Hmm ein anderer Ansatz, der aber bei großen Rückgabewerten nicht mehr funktioniert.
Thomas Schulte

Collaborative Project Portfolio and Project Management Software

"Aber wo wir jetzt einmal soweit gekommen sind, möchte ich noch nicht aufgeben. Versteh mich recht, aufgeben liegt mir irgendwie nicht."

J.R.R.Tolkien Herr der Ringe, Der Schicksalsberg

OpenNTF Project: !!HELP!! !!SYSTEM!!  !!DRIVER!!

Skype: thomasschulte-kulmbach

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: @DBLookup-Rückgabewert bei keiner Übereinstimmung
« Antwort #5 am: 30.11.05 - 10:34:26 »
@if(@iserror (@dblookup....);"";@Dblookup(...))
Damit wird das ding zwar im Erfolgsfall zweimal aufgerufen aber das ist da die einzige Möglichkeit

Das zweimal aufrufen lässt sich m.E. so umgehen:


tmpValue := @DbLoopup(...);
value := @If(@IsError(tmpValue); ""; tmpValue);


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

Offline Silver

  • Senior Mitglied
  • ****
  • Beiträge: 294
  • Geschlecht: Männlich
  • "free your mind"
Re: @DBLookup-Rückgabewert bei keiner Übereinstimmung
« Antwort #6 am: 01.12.05 - 09:09:11 »
Super, dank! Hatte mich gleich für die erste Lösung entschieden. Funzt! Danke nochmals!  :-*  ;D

Offline Thomas Schulte

  • @Notes Preisträger
  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 4.388
  • Geschlecht: Männlich
  • Ich glaub mich tritt ein Pferd
Re: @DBLookup-Rückgabewert bei keiner Übereinstimmung
« Antwort #7 am: 01.12.05 - 09:43:56 »
tmpValue := @DbLoopup(...);
value := @If(@IsError(tmpValue); ""; tmpValue);
Stimmt. Auf den Trichter bin ich irgendwie nie gekommen.

Das Kommt dabon wenn man stur an einer Sache festhält die man vor Jahren mal als richtig erkannt zu haben meint.
Thomas Schulte

Collaborative Project Portfolio and Project Management Software

"Aber wo wir jetzt einmal soweit gekommen sind, möchte ich noch nicht aufgeben. Versteh mich recht, aufgeben liegt mir irgendwie nicht."

J.R.R.Tolkien Herr der Ringe, Der Schicksalsberg

OpenNTF Project: !!HELP!! !!SYSTEM!!  !!DRIVER!!

Skype: thomasschulte-kulmbach

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz