Autor Thema: Suche nach Dokumenten und dann einige Dokumente aus der Ergebnismenge rausnehmen  (Gelesen 2741 mal)

Offline maxritti

  • Senior Mitglied
  • ****
  • Beiträge: 490
Hallo zusammen,

bei uns gibt es gerade eine Neuentwicklung einer DB, wo ich gerade vor einem kleiner Herausforderung stehe.

Und zwar geht es um eine DB, wo Kontakte also Personen gespeichert werden.
Diesen Personen werden nun unterschiedliche Merkmale zugeordnet.

Nun kann es sein, dass Personen das Merkmal A haben.
Zusätzlich bekommt nun eine Person noch ein Merkmal B.

Jetzt möchte ich gerne als Resultat einer Suche die Personen habe, welche das Merkmal A haben und von denen die Personen rausnehmen, die das Merkmal B haben.

Als bei dem Beispiel sieht das so aus:

Person 1 -> Merkmal A
Person 2 -> Merkmal A und B

Suchergebnis soll dann nur die Person 1 liefern.

Irgendwie bekomme ich da momentan nicht den richtigen Dreh dran, wie ich das am besten löse.
Ich hatte mal den Ansatz zunächst die Personen mit A zu suchen, die UniqueIDs zu speichern und dann nacher aus der Menge die UniqueIDs der Personen mit B wieder rauszunehmen und damit das Ergebnis zu haben.
Die Info speichere ich in einem Suchdokument. Dumm nur, dass Notesfelder ja max 32K speichern können. Da wären dann maximal 1000 Personen mit deren UniqueIDs zu speichern.

Kollegen sagen nun wieder: In SQL kein Problem. Da kann man von Recordsets auch andere wieder abziehen.

In Notes sollte dies doch auch machbar sein.

Es wäre cool, wenn hier einer einen schönen Ansatz hätte.
Oder ein wenig Brainstorming hilft ja auch manchmal :)

Offline maxritti

  • Senior Mitglied
  • ****
  • Beiträge: 490
Argh.
Gerade das Post hier abgeschickt und eventuell die Lösung gefunden:

Mit Collections kann man ja doch so einiges machen.
Ich werde mich hier wohl mal einlesen.

http://www-01.ibm.com/support/knowledgecenter/SSVRGU_9.0.0/com.ibm.designer.domino.main.doc/H_SUBTRACT_METHOD_COLLECTION.html

Nur mal schauen, wie sich das ganze auf die Laufzeit verhält.
Man spricht so von 20000 Dokumenten in unserer DB.
« Letzte Änderung: 29.05.15 - 12:19:37 von maxritti »

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Collections sind eine gute Idee, aber für die verlinkte Methode müsstest Du ja erst zwei Collections bilden. Warum suchst Du Dir nicht gleich die resutlierende Collection mittels NotesDatabase.Search und einem Query wie
Form = "Maskenname" & @Contains (Merkmale; "A") & !@Contains (Merkmale; MerkmalB)

Bernhard

Offline maxritti

  • Senior Mitglied
  • ****
  • Beiträge: 490
Darüber hatte ich auch schon gegrübelt aber wohl irgendwie einen Knoten in der Logik gehabt.
Das ! vor das @Contains zu stellen, auf die Idee bin ich nicht wirklich gekommen.  >:(

Danke Dir Bernhard

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Gerne  ;)   Häff ä neiss wiek ent.

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz