Autor Thema: Qualifizierte und unqualifizierte Adressen  (Gelesen 1206 mal)

Offline chris2212

  • Aktives Mitglied
  • ***
  • Beiträge: 162
  • Geschlecht: Männlich
Qualifizierte und unqualifizierte Adressen
« am: 19.07.04 - 09:50:25 »
Hallo,

tolle Aufgabe zum Wochenbeginn und keine Lösung in Sicht

Wir haben eine Adress- und eine Dokumentendatenbank anhand einer Felddefinition muss geprüft werden ob die letzten 6 Monate oder
welcher Zeitraum auch immer in der Felddefinition steht ein Dokument zu der Adresse erstellt wurde.

Wenn z.b. die letzten 6 Monate kein Dokument zu einer Adresse erstellt wurde,
soll der Wert eines Feldes, das es noch nicht gibt, auf unqualified gesetzt werden, wenn innerhalb der letzten 6 Monate ein Dokument erstellt wurde, soll
der Wert auf qualified gesetzt werden.

Hat jemand eine Tipp für mich wie ich das lösen kann?
Die Prüfung muss autom. und wöchentlich erfolgen.

Für jede Unterstützung dankbar!!

Gruß
Chris

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re:Qualifizierte und unqualifizierte Adressen
« Antwort #1 am: 19.07.04 - 10:01:09 »
An sich ist das ja kein Akt. Zum Aufbau Eurer DB müsste man natürlich mehr wissen, daher nur grob:
- Collection der Adressdokumente erstellen und per Schleife abarbeiten
- Zu jedem Adressdokument zugehörige Dokumente in Collection holen
- Diese Collection per Schleife durchlaufen
- Ist ein Dokument jünger als Grenzwert -> Feld im Adressdokument auf "qualifiziert" setzen, Schleife beenden
- Wurde Collection ohne Treffer komplett durchlaufen -> Feld im Adressdokument auf "nicht qualifiziert" setzen.
Das Ganze in einem scheduled Agent. Ggf. die Zeitspanne in einem Setup-Dokument vorhalten für mehr Flexibilität.

HTH,
Bernhard

Offline chris2212

  • Aktives Mitglied
  • ***
  • Beiträge: 162
  • Geschlecht: Männlich
Re:Qualifizierte und unqualifizierte Adressen
« Antwort #2 am: 19.07.04 - 13:13:40 »
Hallo Bernhard,

und genau da hab ich meine Probleme.

Wie bekomme meine doc-Collection habe ich beisher "nur" über Aktionen
erstellt die über eine Schaltfläche gelaufen sind erstellt.

Ich denke das wird sich nicht 1:1 für auf einen Agenten übertragen lassen
der am Server läuft. Wie dann prüfe ob es in einer anderen Dstenbank
ein Dokument zur aktuell in der Collection "ausgewählten" Adresse gibt weis
ich genauso wenig wie ich ich ein Feld der dritten DB (Konfigurationsdatenbank)
auslesen kann in dem der Zeitraum angegeben ist.

Der Aufbau in der Adress-DB
ist so abgebildet.

Adresse (Hauptdokument)
 -> Kontakt (Unterdokument)


Dokument-DB
in der Dok-DB gibt es zwei versteckte Ansichten die ich evtl. dafür
brauchen kann

DocByAdr-Key
Adr-DocID
>Dokumente (die direkt zur Adresse erstellt wurden)


DocBy-Kontakt
Kontaktname
> Dokumente die direkt zum Kontakt erstellt wurden

ist es sinnvoller der Agent in der Dokument-DB  laufen zu lassen,
oder passt das wenn er in der Adressdatenbank läuft?

Danke & Gruß
Chris

Offline Tode

  • Moderatoren
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 6.883
  • Geschlecht: Männlich
  • Geht nicht, gibt's (fast) nicht... *g*
du brauchst LotusScipt
« Antwort #3 am: 19.07.04 - 13:34:13 »
Kannst Du uns bitte kurz sagen, wie gut Du Dich im Programmieren auskennst ? Kennst Du nur die Formel- Sprache, oder bist Du auch fit in LotusScript ?

Denn ohne Scritp wirst Du diese Aufgabe nicht bewältigen...

Grob sieht das dann so aus:

in der Adr.-Datenbank alle Dokumente durchlaufen...
entweder über alle Dokumente in der DB:

Set dc = db.AllDocuments
For i = 1 to dc.Count
...
Next

oder über eine Ansicht, die allen relevanten Dokumente beinhaltet:

set doc = viw.GetFirstDocument
while not doc is nothing
...
set doc = viw.GetNExtDocument( doc )
wend

in dem Teil mit ... suchst Du aus der Dokumentendatenbank die Dokumente, die zu Deiner Adresse gehören:

z.B. aus der Ansicht DocByAdr-Key

set docViw = docDB.GetView( "DocByAdr-Key" )
dim docDC as NotesDocumentCollection
set docDC = docViw.GetAlldocumentsByKey( doc.UniversalID )

und durchläufst diese collection dann wie koehlerbv das Skizziert hat...

So, das ist -denke ich- das maximum an Quellcode, dass Dir hier im Forum gepostet werden wird, denn alles was darüber hinausgeht, ist schon fast ne komplettlösung... und ich für meinen Teil verdiene mit solchen Lösungen mein Geld...

Hoffe, ich konnte Dir trotzdem helfen.

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 chris2212

  • Aktives Mitglied
  • ***
  • Beiträge: 162
  • Geschlecht: Männlich
Re:Qualifizierte und unqualifizierte Adressen
« Antwort #4 am: 19.07.04 - 14:06:07 »
@All

danke für die Unterstützung!

Ich werde das jetzt mal in unserer Testumgebung
probieren, dann meld ich mich wieder....

Danke & Gruß
Chris

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz