Domino 9 und frühere Versionen > Entwicklung

Detach Ordnersauswahl

(1/2) > >>

MrMagoo:
Hallo, folgendes Script funktioniert eigentlich bestens. Da ist "natürlich" aber eine kleine Sache. Ist es möglich, anstatt den Ordner vorzugeben, eine Dialogbox für die Ordnerauswahl zu öffen?

ich verwende das Script in einem Agenten und es sollen nur ausgewählte Mails berücksichtigt werden.
Danke

Sub Initialize
   Dim session As New NotesSession
   Dim db As NotesDatabase
   Dim collection As NotesDocumentCollection
   Dim doc As NotesDocument
   Dim rtitem As Variant
   
   Set db = session.CurrentDatabase
   Set collection = db.UnprocessedDocuments
   Set doc = collection.GetFirstDocument
   
   While Not (doc Is Nothing)
      Set rtitem = doc.GetFirstItem( "Body" )
      If ( rtitem.Type = RICHTEXT ) Then
         Forall o In rtitem.EmbeddedObjects
        'Dateien in Verzeichnis c:\Ordner lösen
            Call o.ExtractFile( "c:\Ordner\" & o.Name )
         End Forall
      End If
      Set doc = collection.GetNextDocument(doc)
   Wend
End Sub

koehlerbv:
Hilft Dir nicht  notesUIWorkspace.SaveFileDialog ?

MrMagoo:
hm ich glaub ich verstehe dich nicht richtig. Ich will ja in einer Ansicht mehrer Mails erst per hand auswählen, den Agenten starten, der soll Fragen welches Verzeichnis und dann alle Datein in das Verzeichnis lösen. geht das mit ui ??

koehlerbv:
Du stellst doch nur die Frage im FrontEnd.
Ansonsten: Die Abfrage Pfad in den Button, Übergabe Pfad ins Environment, dann Agent aufrufen, der die Anhänge der gelösten Docs löst.

Driri:
Hi,

ich hab so was mal mit nem Script gelöst (das ich mir irgendwo geklaut hatte  ;D). Funktioniert aber glaub ich nur unter Windows.

Hier mal die Funktion :

Function BrowseFolder (path As String, windowtitle As String) As String
   
   Dim X As Long, bi As BROWSEINFO, dwIList As Long
   Dim wPos As Integer
   Dim cam2 As String
   
   bi.pszDisplayName = path
   bi.hOwner = hWndAccessApp
   bi.lpszTitle = title
   bi.ulFlags = BIF_RETURNONLYFSDIRS
   
   dwIList = SHBrowseForFolder (bi)
   cam2 = Space$(512)
   X = SHGetPathFromIDList(Byval dwIList, Byval cam2)
   
   If X Then
      wPos = Instr (cam2, Chr(0))
      BrowseFolder = Left$ (cam2, wPos - 1)
   Else
      BrowseFolder = ""
   End If
   
End Function

Navigation

[0] Themen-Index

[#] Nächste Seite

Zur normalen Ansicht wechseln