Das Notes Forum
Domino 9 und frühere Versionen => ND6: Entwicklung => Thema gestartet von: eknori am 29.09.05 - 07:50:04
-
Wie erhalte ich eigentlich den Namen eines markierten Ordners ? ( vermutlich wieder mal so ein IBM 80% - ter )
-
Indem du den Namen im Queryopen des Ordners irgendwo reinschreibst?
-
Oh, Outline Entry:
Da kannst Du ja auch eine Aktion auf den OE legen, die erst einen Wert setzt und dann den Ordner öffnet.
-
Und was mache ich im Mailfile ? Da legt der User selber seine Ordnerstruktur an; ich mache da gar nix dran.
-
Hallo!
Im Mailfile müßte der Namen des markierten Ordners doch mit dem @viewtitle übereinstimmen, oder!?
Gruß
Frank
-
Das wird dann knifflig...
Was hast Du denn damit vor? Der markierte ist ja auch gleich dem aktuell geöffneten Ordner.
Hilft Dir currentview nicht?
-
Im Mailfile müßte der Namen des markierten Ordners doch mit dem @viewtitle übereinstimmen, oder!?
Ah, Licht am Ende des Tunnels ;D Das ist dochschon mal was.
OK, was habe ich vor. Ich war vorgestern auf der DMS in Essen und habe mir dort Archivsysteme angesehen, um ( auch ) Notes Dokument GDPdU konform archivieren zu können. Die können das alle wunderbar mit "selected documents".
Aber unsere User würden wohl kaum in jeden Unterordner reingehen und dann die Dokumente auswählen, archivieren und dann in den nächsten Unterordner gehen u.s.w.
Einfach einen Ordner auswählen und alle dokumente in diesem Ordner inkl. aller Dokumente in den darunterliegenden Unterordnern zu sichern; das konnte keines der Systeme, die ich mir angeschaut habe.
Und jetzt interessiert mich einfach mal, warum die das nicht können. :D
-
OK, hier also meine Lösung für das "Problem". Mit den NotesOutline Klassen kommt man nicht recht zum Ziel.
folgender Code liefert alle Folder unterhalb eines gewählten Folder incl des gewählten Folders
Sub Initialize
Dim session As New NotesSession
Dim workspace As New NotesUIWorkspace
Dim db As NotesDatabase
Dim view As NotesUIView
Dim AllViewsInDB As Variant
Dim SelectedFolderName As String
Dim FolderNames() As String
Dim i As Integer
i = 1
Set db = session.CurrentDatabase
AllViewsInDB = db.Views
Set view = workspace.CurrentView
SelectedFolderName = view.ViewName
Forall v In AllViewsInDB
If Instr ( Cstr(v.name), Left(SelectedFolderName,Len(SelectedFolderName)) ) > 0 Then
Redim Preserve FolderNames(i) As String
FolderNames(i -1 ) = Cstr(v.name)
i = i +1
End If
End Forall
End Sub
FolderNames enthält nun alle Werte, die man für die Weiterbearbeitung benötigt.
-
hier noch eine gekürzte Version:
Sub Initialize
Dim s As New NotesSession
Dim ws As New NotesUIWorkspace
Dim i As Integer
i = 1
Forall v In s.CurrentDatabase.Views
If Instr ( v.name , ws.CurrentView.ViewName ) > 0 Then
Redim Preserve FolderNames ( i ) As String
FolderNames ( i -1 ) = v.name
i = i +1
End If
End Forall
For i = 0 To ( Ubound ( FolderNames ) - 1 )
Msgbox FolderNames ( i )
Next
End Sub
-
@Frank: Danke für den Tip ! Hier noch ein Link zu http://www.eknori.de/home/detail.php?nr=1345&kategorie=home
-
Freut mich sehr, dass Dir mein kleiner Denkanstoß weitergeholfen hat. Ich habe hier in dem Forum schon so viel von Dir gelernt ( böse Zungen würden sagen "geklaut" ) - dass kann ich in diesem Leben eh nicht wieder gutmachen ;)
Gruß & schönes WE
Frank