Autor Thema: Private Ordner löschen aus Skript heraus  (Gelesen 2386 mal)

Offline Don Pasquale

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.390
  • Geschlecht: Männlich
  • Don Pasquale
    • Auf Verlorenem Posten
Private Ordner löschen aus Skript heraus
« am: 11.02.03 - 12:39:56 »
Hallo Leute,

Ich habe einen Ordner Private on first use, der aktualisiert werden soll,
d.h. aus 2 Ansichten sollen alle Dokumente mit Namen des Users in einem
bestimmten Feld in diesen Ordner kopiert werden.
Vom Vorlauf könnte er aber noch Dokumente haben, in denen sein Name drin stand, aber jetzt nicht mehr. Diese Dokumente möchte ich raus haben.
Ich habe das so gelöst, das der Ordner jedesmal gelöscht wird und dann
neu gefüllt.

Nun bekomme ich die Fehlermeldung

B-Structure is invalid

   viewName = ORDNER_EIGENE_DOKUMENTE
   If viewName = "" Then Exit Sub
   Set view = db.GetView(viewName)
   Call view.Remove


Nun bekomme ich die Fehlermeldung

B-Structure is invalid

Sagt das jemandem etwas ?

Ciao
Don Pasquale

   Dim ws As New NotesUiWorkspace
   Dim s As New NotesSession
   Dim view As NotesView
   Dim dc As NotesDocumentCollection
   Dim db As NotesDatabase
   Dim doc As NotesDocument
   Dim DocDelete As NotesDocument
   Dim ORDNER_DOKS_NACH_INITIATOREN As String
   Dim ORDNER_DOKS_NACH_SENDEN_AN As String
   Dim ORDNER_EIGENE_DOKUMENTE As String
   
   ORDNER_DOKS_NACH_INITIATOREN =  "_Initiator"
   ORDNER_DOKS_NACH_SENDEN_AN = "_Senden"
   ORDNER_EIGENE_DOKUMENTE  = "Eigene Dokumente"
   
   
   Dim session As New NotesSession
   Dim vc As NotesViewEntryCollection
   
   Set db = s.CurrentDatabase  
   Set db = session.CurrentDatabase
   
   viewName = ORDNER_EIGENE_DOKUMENTE
   If viewName = "" Then Exit Sub
   Set view = db.GetView(viewName)
   Call view.Remove
   
   Set db = session.CurrentDatabase
   Set view = db.GetView(ORDNER_DOKS_NACH_INITIATOREN)
   Set vc = view.GetAllEntriesByKey(session.CommonUserName,False)
   Call vc.PutAllInFolder( ORDNER_EIGENE_DOKUMENTE, True)
   
   
   Set view = db.GetView(ORDNER_DOKS_NACH_INITIATOREN)      
   Set vc = view.GetAllEntriesByKey(s.CommonUserName, False)
   Call vc.PutAllInFolder( ORDNER_EIGENE_DOKUMENTE, True )
   
   Set view = db.GetView(ORDNER_DOKS_NACH_SENDEN_AN)      
   Set vc = view.GetAllEntriesByKey(s.CommonUserName, False)
   Call vc.PutAllInFolder(ORDNER_EIGENE_DOKUMENTE, True )
   
   Set view = db.GetView( ORDNER_EIGENE_DOKUMENTE )      
   Call ws.ViewRefresh
« Letzte Änderung: 14.02.03 - 11:00:32 von 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:Private Ordner löschen aus Skript heraus
« Antwort #1 am: 11.02.03 - 13:12:08 »
Hi,

ich hab das mal gemacht. Hier ein Auszug aus meinem Code.

...
Dim session As New NotesSession
Dim view As NotesView
Dim vc As NotesViewEntryCollection
Dim foldername As String

foldername = "Recherche"

Set db = session.CurrentDatabase   
Set view = db.GetView(foldername)
Set vc = view.AllEntries

Call vc.RemoveAllFromFolder(foldername) ' Entfernt alle Dokumente aus dem Ordner            
...


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

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:Private Ordner löschen aus Skript heraus
« Antwort #2 am: 11.02.03 - 13:35:13 »
@Axel,

:-)

Danke sehr.

Thema erledigt (Habe ich versucht anzuklicken, scheint in diesem Client nicht zu funktionieren)

Ciao

Don Pasquale

« Letzte Änderung: 11.02.03 - 13:56:06 von Don Pasquale »

Offline Mandalor

  • Senior Mitglied
  • ****
  • Beiträge: 359
  • Geschlecht: Männlich
Re: Private Ordner löschen aus Skript heraus
« Antwort #3 am: 08.04.05 - 14:24:14 »
Ich muss auch private ordner löschen, aber alle in der DB

habe mir folgendes überlegt:

   Dim se As NotesSession
   Dim db As notesdatabase
   Dim views As Variant
   views = db.Views
   Forall view In views
      If view.isprivate Then
         call view.remove()
      End If
   End Forall

das bringt mir aber den Fehler, das er einen index auf dem server nicht erstellen kann ???
mit besten Grüßen

Markus Petzold

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: Private Ordner löschen aus Skript heraus
« Antwort #4 am: 08.04.05 - 14:38:59 »
Hi,

kann das sein, dass der/die Ordner nicht in der Datenbank selbst sondern auf dem Desktop abgelegt sind?


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

Driri

  • Gast
Re: Private Ordner löschen aus Skript heraus
« Antwort #5 am: 08.04.05 - 14:49:24 »
Oder kommt Notes evtl. mit dem Variant durcheinander ?

Versuchs mal so :

Dim se As NotesSession
Dim db As notesdatabase
Forall v In db.views
   If v.isprivate Then
      call v.remove()
   End If
End Forall

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz