Autor Thema: DBLookup mit Listenfeld als Schlüssel  (Gelesen 2720 mal)

Offline Julle

  • Junior Mitglied
  • **
  • Beiträge: 80
  • Geschlecht: Weiblich
  • Ad astra!
DBLookup mit Listenfeld als Schlüssel
« am: 12.08.05 - 10:02:39 »
Guten Morgen,

Eine Userin möchte im Adressbuch bei den Gruppen nicht nur die Mitglieder sehen, sondern auch deren Mailadressen. Ich versuche das über ein weiteres Feld "Mailadressen" in der Maske Gruppe abzufackeln. Das Feld ist berechnet und mit folgender Formel belegt: @For(n := 1;n <= @Elements(members);n := n + 1;
         FIELD Mailadresse := @DbLookup  "":"NoCache" ; "" ;"(Personen)"; "Members" ;"MailAddress")); Mailadresse

Die Felder Members und Mailadresse sind Mehrfachwertfelder.

Beim Testen kommt immer die Fehlermeldung "Eintrag im Index nicht gefunden, oder der Index ist für die Ansicht nicht aufgebaut". Die Ansicht ist indiziert, die erste Spalte der Ansicht (Personen) ist sortiert, daher verstehe ich die Fehlermeldung nicht.

Was ist falsch? Was muss ich ändern?

Die Notes Version ist 6.5.3

Grüße
Julle
Windows NT4.0
Notes 5.09

Offline umi

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 2.062
  • Geschlecht: Männlich
  • one notes to rule'em all, one notes to find'em....
    • Belsoft AG
Re: DBLookup mit Listenfeld als Schlüssel
« Antwort #1 am: 12.08.05 - 10:08:46 »
Die Fehlermeldung bedeutet nur, dass er den Schlüssel "Members" nicht in der Ansicht gefunden hat.

Versuch mal das:
Code
_Members:=Members;
@For(n := 1;n <= @Elements(_members);n := n + 1;
_Mailadresse := @DbLookup("":"NoCache" ; @dbname ;"(Personen)"; _Members[n] ;"MailAddress";[FailSilent]):_Mailadresse);
Field Mailadresse:=_mailadresse;
« Letzte Änderung: 12.08.05 - 10:11:02 von umi »
Gruss

Urs

<:~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Jegliche Schreibfehler sind unpeabischigt
http://www.belsoft.ch
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~:>

Offline Julle

  • Junior Mitglied
  • **
  • Beiträge: 80
  • Geschlecht: Weiblich
  • Ad astra!
Re: DBLookup mit Listenfeld als Schlüssel
« Antwort #2 am: 12.08.05 - 10:42:17 »
Hallo umi,

ich bekomme jetzt zwar keine Fehlermeldung mehr, aber dafür steht im Feld Mailadresse jetzt nur eine "1".

Grüße
Julle
Windows NT4.0
Notes 5.09

Offline umi

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 2.062
  • Geschlecht: Männlich
  • one notes to rule'em all, one notes to find'em....
    • Belsoft AG
Re: DBLookup mit Listenfeld als Schlüssel
« Antwort #3 am: 12.08.05 - 10:46:28 »
Evtl musst Du die Formel noch anpassen.

Code
_Members:=Members;
@For(n := 1;n <= @Elements(_members);n := n + 1;
@prompt([ok];"DEBUG";_Members[n];
_Mailadresse := @DbLookup("":"NoCache" ; @dbname ;"(Personen)"; _Members[n] ;"MailAddress";[FailSilent])+","+_Mailadresse);
Field Mailadresse:=_mailadresse;
Gruss

Urs

<:~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Jegliche Schreibfehler sind unpeabischigt
http://www.belsoft.ch
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~:>

Offline Julle

  • Junior Mitglied
  • **
  • Beiträge: 80
  • Geschlecht: Weiblich
  • Ad astra!
Re: DBLookup mit Listenfeld als Schlüssel
« Antwort #4 am: 12.08.05 - 11:13:16 »
Hallo umi

Danke für die prompte Antwort.

Ich habe die Anpassung vorgenommen. Er zeigt mir brav alle members auf. In einem zweiten prompt zeigt er mir aber nur die Mailadresse des letzten members. Im Feld steht danach weiterhin eine 1.
Auch wenn ich die Members auf einen einzigen Eintrag verringere, zeigt er nicht die Mailadresse an. Mir ist das Ganze langsam nur noch schleierhaft.

Grüße
Julle
Windows NT4.0
Notes 5.09

Offline umi

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 2.062
  • Geschlecht: Männlich
  • one notes to rule'em all, one notes to find'em....
    • Belsoft AG
Re: DBLookup mit Listenfeld als Schlüssel
« Antwort #5 am: 12.08.05 - 11:20:48 »
Warte mal, Die Formel steht doch im Feld selbst oder?
dann müsste die letzte Zeile nicht
Field Mailadresse:=_Mailadresse heissen, sondern
nur
_Mailadresse

Gruss

Urs

<:~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Jegliche Schreibfehler sind unpeabischigt
http://www.belsoft.ch
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~:>

Offline Julle

  • Junior Mitglied
  • **
  • Beiträge: 80
  • Geschlecht: Weiblich
  • Ad astra!
Re: DBLookup mit Listenfeld als Schlüssel
« Antwort #6 am: 12.08.05 - 11:29:13 »
Yoo, der letzte steht jetzt im Feld, aber leider nicht die ganze Liste der zur Liste Members passenden E-Mail-Adressen. Kann man Notes beibringen, doch bitte alle Schlüssel des Feldes Members zu nehmen und die dazu passenden Einträge aus der Ansicht in das Feld Mailadressen zu schreiben?

Grüße
Julle
Windows NT4.0
Notes 5.09

Offline sja

  • Senior Mitglied
  • ****
  • Beiträge: 328
  • Geschlecht: Weiblich
  • Ich liebe dieses Forum!
Re: DBLookup mit Listenfeld als Schlüssel
« Antwort #7 am: 12.08.05 - 14:52:56 »
Hallo,

sollte die Formel nicht so aussehen:

FIELD Mailadresse:=Mailadresse : _Mailadresse;
Mailadresse

sonst den nächsten Eintrag überschreibt vorherige


Gruesse
Sofia
« Letzte Änderung: 18.08.05 - 11:06:10 von sja »

Offline Tode

  • Moderatoren
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 6.883
  • Geschlecht: Männlich
  • Geht nicht, gibt's (fast) nicht... *g*
Re: DBLookup mit Listenfeld als Schlüssel
« Antwort #8 am: 15.08.05 - 11:53:59 »
Wegen solcher Beiträge bin ich von Anfang an Skeptisch gegenüber diesen komischen Schleifen und zeugs in R6 gewesen.

Warum mit ner For- Schleife rummurksen, wenn die Formelsprache doch per se schon (fast) perfekt mit Listen umgehen kann:

Das ist das einzige was man in einem Feld (Mehrfachwerte, berechnet) in der Formel benötigt:

@DbLookup("":"NoCache" ; "" ;"(Personen)"; Members ;"MailAddress";[FailSilent]);

Aus die Maus....

Gruß
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 Julle

  • Junior Mitglied
  • **
  • Beiträge: 80
  • Geschlecht: Weiblich
  • Ad astra!
Re: DBLookup mit Listenfeld als Schlüssel
« Antwort #9 am: 18.08.05 - 10:30:00 »
Danke Tode,
das war's. ich habe es zu Anfang mit einem einfachen Lookup probiert, aber es muss noch ein Fehler drin gewesen sein, jedenfalls klappte es nicht.

Grüße
Julle
Windows NT4.0
Notes 5.09

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz