Das Notes Forum

Domino 9 und frühere Versionen => Entwicklung => Thema gestartet von: Rob Green am 02.01.03 - 14:26:17

Titel: Multiple Fileselektion zur Weiterverarbeitung
Beitrag von: Rob Green am 02.01.03 - 14:26:17
wenn ich aus einem Notes-Dialog heraus im Rahmen eines Lotus Scripts den User mehrere Files auf Filebene auswählen lassen möchte, was muß ich tun, das zu erreichen?

Hintergrund ist, daß ich 12 Textdateien auf einen Schlag habe, die allesamt in eine Notes DB eingelesen werden sollen, um weiterverarbeitet zu werden. Ich möchte dabei vermeiden, daß der User 12x separat jede einzelne Datei rauspicken muß.

Ideal wäre eine Dialogmaske:
- User markiert im Filedialog die 12 Dateien
- die 12 Dateinamen liest das Script aus
- und Notes startet für jede Datei nunmehr automatisch den Einlesevorgang (ganz simpel per "Open filename For Input As fileNum%")
Titel: Re:Multiple Fileselektion zur Weiterverarbeitung
Beitrag von: ata am 02.01.03 - 15:33:22
Hoy Rob

... wenn ich mich nicht ganz täusche, dann gibts über die Win-API die Möglichkeit, bei Dateiauswahlboxen Mehrfachwerte zu ermöglichen - das müßte das treffen, oder...

ata
Titel: Re:Multiple Fileselektion zur Weiterverarbeitung
Beitrag von: Rob Green am 02.01.03 - 15:55:21
noi, das wird nix, da die PC auch unter OS/2 laufen  :(
Titel: Re:Multiple Fileselektion zur Weiterverarbeitung
Beitrag von: Performance am 02.01.03 - 16:04:36
vielleicht hilft das weiter

dateien = workspace.OpenFileDialog(True, "Dateien", "nur textdateien|*.txt, "C:\")   

Forall datei In dateien

fileDescriptor = Freefile()
fileName = datei   ' mit Pfad
Open fileName For Input As fileDescriptor

Do While Not Eof(fileDescriptor)  
...
Loop

End Forall



cu
Titel: Re:Multiple Fileselektion zur Weiterverarbeitung
Beitrag von: Rob Green am 02.01.03 - 16:05:26
superb, danke performance.

Habe gerade eben in eknoris Schatzkiste das da gefunden, klatt genauso wie ich es brauche. Mit Deinem code habe ich es perfect.

Dim workspace As New NotesUIWorkspace
Dim files As Variant
files = workspace.OpenFileDialog(True, "File List", _
       "", "c:")
Dim messagelist As String
Forall filelist In files
    messagelist = messagelist & filelist & Chr(10)
End Forall
Messagebox messagelist

glücklich und zufrieden bin jetzt (http://mysmilies.no-ip.com/mysmilies/baby2.gif)