Das Notes Forum

Domino 9 und frühere Versionen => ND6: Entwicklung => Thema gestartet von: Kadlec am 30.01.07 - 13:24:30

Titel: Dokumente anhand verschiedener Felder und deren Werte finden
Beitrag von: Kadlec am 30.01.07 - 13:24:30
Hallo, über eine Dialogbox möchte ich verschiedenen Feldwerte eingeben und dann die Dokumente finden die der Dialogbox Auswahl entsprechen.

In der Dialogbox kann man nun bis zu 5 Felder mit einem Wert setzen es kann aber auch nur ein Feld sein.

Bsp.:
1. alle docs. die im Feld 1 ein "A" haben und im Feld 4 den Namen Meyer.
2. alle docs. die im  Feld 1 "A"; Feld 2 "Kabelsatz"; Feld 3 "90123456"; Feld 4 "Meyer" haben.
3. alle docs. die im  Feld 4 "Meyer haben"

Gebt mir doch mal nen Tip wie ich dass lösen kann.
Danke und Gruss
Boris
Titel: Re: Dokumente anhand verschiedener Felder und deren Werte finden
Beitrag von: dirk_2909 am 30.01.07 - 13:26:37
Hallo

Mit der Volltextsuche / Suche -> FTSearch / Search
Titel: Re: Dokumente anhand verschiedener Felder und deren Werte finden
Beitrag von: umi am 30.01.07 - 14:30:09
Was machst Du mit den Resultaten?

Wie willst Du sie darstellen?

Soll der User danach ein Dokument auswählen? (suche nach private Folders oder spofu)

gruss

Titel: Re: Dokumente anhand verschiedener Felder und deren Werte finden
Beitrag von: Kadlec am 30.01.07 - 15:03:27
Habe mir jetzt mal einen kleinen codeschnipsel aus der Hilfe geholt, bekomme aber die Fehlermeldung "--maximalzahl erlaubter Dokumente für einen temp. Volltextindex überschritten."

Das Resultat bekommt den Namen des Users in ein Lesefeld geschrieben.
Der user hat diese dann in einer Ansicht zur Weiterverarbeitung.

Boris
Titel: Re: Dokumente anhand verschiedener Felder und deren Werte finden
Beitrag von: umi am 30.01.07 - 15:15:03
Die Fehlermeldung kommt daher, weil der Volltextindex in deiner DB noch nicht existiert. Wenn Du diesen erstellst, sollte die Fehlermeldung nicht mehr kommen.

Titel: Re: Dokumente anhand verschiedener Felder und deren Werte finden
Beitrag von: Kadlec am 30.01.07 - 15:25:06
OK Volltextindex wird erstellt.
Gibt es eigentlich keine andere Möglichkeit die Doks. zu finden??

Boris
Titel: Re: Dokumente anhand verschiedener Felder und deren Werte finden
Beitrag von: umi am 30.01.07 - 15:56:00
Doch über NotesDatabase.search()
Titel: Re: Dokumente anhand verschiedener Felder und deren Werte finden
Beitrag von: koehlerbv am 30.01.07 - 18:20:59
Gibt es eigentlich keine andere Möglichkeit die Doks. zu finden??

Hallo Boris,
natürlich gibt es (etliche mehr oder weniger sinnvolle) weitere Methoden - jede dahin, wohin sie situativ passt. Bevor wir nun spekulieren: Was erwartest Du? Oder besser: Wie stellst Du Dir selbst (völlig losgelöst von der programmatischen Umsetzung) eine "andere Möglichkeit" vor?

Bernhard
Titel: Re: Dokumente anhand verschiedener Felder und deren Werte finden
Beitrag von: Kadlec am 30.01.07 - 18:40:52
Hi Bernhard,

das mit der "Vorstellung" war schonmal das grössere Problem.
Mit Lookup in Ansichten suchen ???==> für jeden Parameter eine eigene Ansicht ??
Wie gesagt, da hatte ich schon gar keine rechte Idee.
Das mit NotesDatabase.search() wie von @umi vorgeschlagen scheint mir recht pasabel zu sein.
Werde das morgen mal näher beleuchten, der Anfang sieht auf alle Fälle gut aus.

Gruss
Boris
Titel: Re: Dokumente anhand verschiedener Felder und deren Werte finden
Beitrag von: koehlerbv am 30.01.07 - 19:19:22
Mit Lookup in Ansichten suchen ???==> für jeden Parameter eine eigene Ansicht ??

Jo, für Lookups brauchst Du immer eigene Ansichten, und es wird sofort unmöglich, wenn Du nur Teilstrings suchen willst.

Was Du halt brauchst, ist eine Routine, die aus den Eingaben in Deine Dialogbox eine gescheite Query für NotesDatabase.FTSearch erstellt. Und wenn Du das flexibel halten willst: Das ist nicht ganz einfach! Ich habe das im letzten Jahr mal als "Copy & Paste"-Routine für meine Applikationen erstellt - das sind etliche Zeilen Code geworden (eine Lib mit 9 Functions, dazu Maske für Setup der Suchfunktionalität (pro Dokumenttyp) plus Maske für eigentliche Suchabfrage plus Folder für Ergebnisse), funktioniert aber hervorragend  :)

Bernhard

PS: Richtig spannende Herausforderungen waren bei der o.g. Sache u.a.
- Allgemein verwendbare Funktionalität - also nicht an eine DB und deren Design gebunden
- Setup der durchsuchbaren Items durch den DB-Admin (ohne dass dieser sämtliche Einstellungen komplett selber machen muss)
- User kennt interne Feldnamen nicht!
- Keyword-Felder mit ihren WIRKLICHEN Werten (Aliasse) anbieten - der User weiss ja nicht, ob hinter "ja" ein "yes" oder ein "1" steht (oder sonstwas)
- den Code kompakt zu halten
Titel: Re: Dokumente anhand verschiedener Felder und deren Werte finden
Beitrag von: Kadlec am 01.02.07 - 09:46:31
Hallo hatte gestern keine Zeit und heute ein unüberwindbares Problem.

Aus meiner "Dialogmaske" übergebe ich nun einen String der folgendes Aussehen hat:
"Feldx_T = 0, Feldy_T = Thomas Mayer".

In die search Formel muss ja nun der Feldname ohne Anführungszeichen dieses ist ja aber immer da weil Text?? wie bekomme ich das weg?

Boris
Titel: Re: Dokumente anhand verschiedener Felder und deren Werte finden
Beitrag von: Kadlec am 01.02.07 - 22:53:43
Tschuldigung erstmal für meinen letzten Beitrag war arg konfus.
Was ich eigentlich wollte .."wie übergebe ich einen Feldnamen als Variable".
Die Lösung habe ich noch selbst gefunden }+feldvar+{.

Boris