Autor Thema: Alle Dokumente einer view in eine collection übernehmen  (Gelesen 4866 mal)

Offline Micha

  • Aktives Mitglied
  • ***
  • Beiträge: 106
  • Geschlecht: Männlich
  • Not(es) macht erfinderisch
Hallo mal wieder,

ich wollte mal fragen ob jemand eine methode kennt mit der man alle Dokuemente einer view in eine collection übernimmt.
Ich seh nur die mehtode:" GetAllDocumentsByKey( keyArray
[ ,exact ] )", will aber unabhängig von einem key alle haben.

Vielen Dank schonmal,

Micha
5.0.5 Designer und Client
Win NT 4.0

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re:Alle Dokumente einer view in eine collection übernehmen
« Antwort #1 am: 22.01.04 - 13:41:07 »
NotesView.AllEntries gibt Dir eine ViewEntryCollection. Über die ViewEntries selber kannst Du dann auch direkt auf die Dokumente zugreifen.

HTH,
Bernhard

Offline Micha

  • Aktives Mitglied
  • ***
  • Beiträge: 106
  • Geschlecht: Männlich
  • Not(es) macht erfinderisch
Re:Alle Dokumente einer view in eine collection übernehmen
« Antwort #2 am: 22.01.04 - 13:53:58 »
Ich hab mal wieder zu wenig geschrieben  ;)
Die Methode hab ich schon benutzt. Ich will die removeallfromfolder methode einsetzen.
in der viewentry klasse funktioniert die leider nur bis zu einer bestimten Anzahl von Dokumenten in einem Ordner. (bei über 3000 definitiv nicht mehr)
ich hoffe nun das die gleiche Methode aus der coll vielleicht mehr schaft.

Dankeschön

Micha
5.0.5 Designer und Client
Win NT 4.0

Offline Don Pasquale

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.390
  • Geschlecht: Männlich
  • Don Pasquale
    • Auf Verlorenem Posten
Re:Alle Dokumente einer view in eine collection übernehmen
« Antwort #3 am: 22.01.04 - 14:03:49 »

Try this:

Dim session As New NotesSession
Dim doc As NotesDocument
Dim view As NotesView
Dim dc As NotesDocumentCollection
Dim db As NotesDatabase
Dim RemoveDoc As NotesDocument
Set session = New notessession      
Set db = session.CurrentDatabase  
Set view = db.GetView( "($Inbox)" )
Set doc = view.GetFirstDocument
   
While Not ( doc Is Nothing)

if doc.FELDA = XYZ then
  Set RemoveDoc = doc
  Call Removedoc.removeFromFolder("($Inbox)")
end if
           
Set doc = view.GetNextDocument(doc)      


Ciao
Don Pasquale

Offline Micha

  • Aktives Mitglied
  • ***
  • Beiträge: 106
  • Geschlecht: Männlich
  • Not(es) macht erfinderisch
Re:Alle Dokumente einer view in eine collection übernehmen
« Antwort #4 am: 22.01.04 - 14:36:32 »
Das war mal meine erste Idee, ich hatte aber Sorgen dass das zu langsam ist. Habs nun nochmal probiert.
Nach meinen ersten Tests bemerke ich den Fehler 4005 wenn das zu löschende Dokument Kommentare hat.
Muss man die Kommentare vielleicht gesondert löschen?

Danke

Micha
« Letzte Änderung: 22.01.04 - 14:39:03 von Micha »
5.0.5 Designer und Client
Win NT 4.0

Offline Don Pasquale

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.390
  • Geschlecht: Männlich
  • Don Pasquale
    • Auf Verlorenem Posten
Re:Alle Dokumente einer view in eine collection übernehmen
« Antwort #5 am: 22.01.04 - 14:56:34 »
Oh, schnell ist das wirklich nicht. Es ist halt bei mir im Einsatz
und so weiss ich dass es funzt.

Was sind Kommentare ?

Ciao
Don Pasquale

Offline Micha

  • Aktives Mitglied
  • ***
  • Beiträge: 106
  • Geschlecht: Männlich
  • Not(es) macht erfinderisch
Re:Alle Dokumente einer view in eine collection übernehmen
« Antwort #6 am: 22.01.04 - 15:07:35 »
In meiner db heißen Antwortdokumente Kommentare.
Sorry ich hab mich da schon so dran gewöhnt  :-\
5.0.5 Designer und Client
Win NT 4.0

Offline Don Pasquale

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.390
  • Geschlecht: Männlich
  • Don Pasquale
    • Auf Verlorenem Posten
Re:Alle Dokumente einer view in eine collection übernehmen
« Antwort #7 am: 22.01.04 - 15:22:50 »
Ich glaube mich zu erinnern, dass es da irgendwo ein Häkchen gibt,
so dass Hauptdokumente löschbar sind, auch wenn Antwortdokumente dazu existieren. Ich kann mich aber auch täuschen.

Ciao
Don Pasquale

Offline Micha

  • Aktives Mitglied
  • ***
  • Beiträge: 106
  • Geschlecht: Männlich
  • Not(es) macht erfinderisch
Re:Alle Dokumente einer view in eine collection übernehmen
« Antwort #8 am: 22.01.04 - 15:30:59 »
Danke, aber ich kann da keinen Haken finden.
Leider ensteht der Fehler nicht immer.
Vielleicht hat ja noch jemand eine Idee zu meiner ersten Anfrage?
5.0.5 Designer und Client
Win NT 4.0

Glombi

  • Gast
Re:Alle Dokumente einer view in eine collection übernehmen
« Antwort #9 am: 22.01.04 - 15:50:00 »
Muss das unbedingt in Script sein? In diesem Fall wäre auch die Formelsprache geeignet.

Andreas

Offline Micha

  • Aktives Mitglied
  • ***
  • Beiträge: 106
  • Geschlecht: Männlich
  • Not(es) macht erfinderisch
Re:Alle Dokumente einer view in eine collection übernehmen
« Antwort #10 am: 22.01.04 - 16:49:33 »
Das ist wirklich ein schweres Problem.
wenn ich mit wie obern beschrieben eine schleife baue und er trifft auf einen Kommentar, dann kommt ein Fehler.
Wenn ich den Abfange und sage mach weiter (resume next) dann gibt es kein Dokument danach :(

Wie geht denn das sicher mit Formelsprache?
Vielleicht kann ich einen Agenten aufrufen?

Dankschön :)
5.0.5 Designer und Client
Win NT 4.0

Offline Don Pasquale

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.390
  • Geschlecht: Männlich
  • Don Pasquale
    • Auf Verlorenem Posten
Re:Alle Dokumente einer view in eine collection übernehmen
« Antwort #11 am: 22.01.04 - 16:51:50 »
Vielleicht erweiterst Du einfach meinen Code um
eine weitere Schleife in der alle AntwortDokumente gesucht werden.
Es müßte doch sicher einen zeiger auf Antwortdokumente geben.
Ciao
Don Pasquale

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:Alle Dokumente einer view in eine collection übernehmen
« Antwort #12 am: 22.01.04 - 17:13:06 »
Hi,

versuch's doch mal so (Erweiterung von Don Pasquale's Code):

...
Dim collection As NotesDocumentCollection
...

...
if doc.FELDA = XYZ then
  Set RemoveDoc = doc

  Set collection = RemoveDoc.Responses   'Alle Antwortdoks in eine Collection aufnehmen
  If collection.Count > 0 Then  'Wenn Antworten vorhanden, alle aus Ordner entfernen
    Call collection.RemoveAllFromFolder("($Inbox)")
  End If

  Call Removedoc.removeFromFolder("($Inbox)")
end if
...


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

Offline Micha

  • Aktives Mitglied
  • ***
  • Beiträge: 106
  • Geschlecht: Männlich
  • Not(es) macht erfinderisch
Re:Alle Dokumente einer view in eine collection übernehmen
« Antwort #13 am: 22.01.04 - 17:28:32 »
Oh je, ich hätte wohl lieber alle meine Fehlversuche aufheben sollen, damit ihr nicht die auch noch ausprobieren müsst.
Ich denke ich habe jede erdenkliche art ausprobiert einen Kommentar aus dem ordner zu löschen, leider immer der gleiche Fehler 4005. Über die Viewcollection ging es ja komischerweise, aber eben nur mit nicht zu vielen Doks.
Nur nach so langer Zeit hätte das doch mal jemanden auffallen müssen. ???

Ich danke euch vielmals für die Mithilfe und gehe erstmal mit Kopfschmerzen nach Hause.
5.0.5 Designer und Client
Win NT 4.0

Glombi

  • Gast
Re:Alle Dokumente einer view in eine collection übernehmen
« Antwort #14 am: 22.01.04 - 17:56:28 »
In Formelsprache:

@Command([OpenView];"Folder name");
@Command([EditSelectAll]);
@Command([RemoveFromFolder])

Andreas

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re:Alle Dokumente einer view in eine collection übernehmen
« Antwort #15 am: 22.01.04 - 19:08:30 »
Hallo, Micha,

es kann sein, dass ich hier (so auf die Schnelle) völlig daneben liege, vor allem kriege ich derzeit den Bezug zu Error 4005 nicht mehr rekonstruiert. Probier doch aber bitte mal folgendes:
Füge doch mal zu Don's Code folgendes hinzu, bevor Du ein Dokument aus dem Folder 'rausschmeisst:

Code
If Not (NotesDocument.IsValid And Isarray (NotesDocument.Items)) Then ...

Ich habe es schon erlebt, dass selbst nach einem Fixup, Updall, Compress etc. noch gelöschte Docs im Ansichtsindex waren (man hat ja auch schon Pferde kotzen sehen, und das vor der Apotheke).
Dass es bei "Kommentaren" (= ResponseDocs) scheppert, ist ja evtl. gar nicht gesagt. Vielleicht liegt da - gerade bei so einer grossen Dokumentenmenge) eine "Leiche" dazwischen ...

HTH,
Bernhard

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz