Das Notes Forum

Domino 9 und frühere Versionen => ND8: Entwicklung => Thema gestartet von: Keydins am 14.05.14 - 12:44:54

Titel: Einfache Möglichkeit zum Enpacken von Zip-Archiven?
Beitrag von: Keydins am 14.05.14 - 12:44:54
Moin zusammen,

ich bin auf der Suche nach einer schlanken Lösung für folgendes Problem:

Ich benötige für regelmäßige automatisierte Datenimporte csv-Dateien in bestimmten Verzeichnissen auf dem Domino. Bisher wurden die Dateien auf Netzwerkebene auf den Domino übertragen, allerdings ist das Verfahren zukünftig auf Grund von Vorgaben unseres Rechenzentrums nicht mehr möglich.

Als neue Lösung habe ich eine Mail-In geschaffen, an die die zu verarbeitenden Dateien gesendet werden. Ein Agent erkennt an Hand des Betreffs, in welches Verzeichnis die Dateianhänge gelöst werden sollen. Leider ist das System, dass die csv erzeugt so konfiguriert, dass es Dateien automatisch zipt, wenn die Dateigröße einen vorgegebenen Schwellenwert übersteigt und die Dateien per Mail gesendet werden sollen (bei der direkten Ablage im Dateisystem gab es diese Regel nicht).

Da die Prozesse auch weiterhin vollautomatisch ablaufen sollen brauche ich eine Lösung, um die Zip-Archive nach dem Lösen automatisiert zu entpacken. Die Lösung muss mit den Bordmitteln eines Domino 8.5.3 FP3 auf einem Windows 2008 Server funktionieren, die Installation von weiterer Software ist leider nicht möglich, sofern es sich dabei nicht um Notesanwendungen handelt.

Jemand eine Idee?


Gruß
Dirk
Titel: Re: Einfache Möglichkeit zum Enpacken von Zip-Archiven?
Beitrag von: Tode am 14.05.14 - 13:26:55
Zum entpacken unter Windows brauchst Du Ein Objekt vom Typ "Shell.Application". Hier mal ein paar Zeilen Beispielcode aus einer meiner Applikationen:
Code
'- CopyHere options for Unzip
Const FOF_SILENT = &H4&
Const FOF_RENAMEONCOLLISION = &H8&
Const FOF_NOCONFIRMATION = &H10&
Const FOF_ALLOWUNDO = &H40&
Const FOF_FILESONLY = &H80&
Const FOF_SIMPLEPROGRESS = &H100&
Const FOF_NOCONFIRMMKDIR = &H200&
Const FOF_NOERRORUI = &H400&
Const FOF_NOCOPYSECURITYATTRIBS = &H800&
Const FOF_NORECURSION = &H1000&
Const FOF_NO_CONNECTED_ELEMENTS = &H2000&

Set objApp = CreateObject ("Shell.Application")
varFlags = FOF_SILENT + FOF_NOCONFIRMATION + FOF_NOERRORUI

Call objApp.NameSpace(strTargetPath).CopyHere (objApp.NameSpace (strDetachedZIPFile).Items(), varFlags)
Titel: Re: Einfache Möglichkeit zum Enpacken von Zip-Archiven?
Beitrag von: Glombi am 14.05.14 - 13:27:16
hier ist auch was

http://daniel-lotusdomino.blogspot.de/2010/06/unzip-zip-file-lotus-script.html
Titel: Re: Einfache Möglichkeit zum Enpacken von Zip-Archiven?
Beitrag von: Tode am 14.05.14 - 13:49:16
Ja, das ist im Prinzip der selbe Code nur "schöner" durch das zuweisen dedizierter Objekte und das prüfen, ob der Zielordner schon existiert.
Ich hatte halt die Flags dazugenommen, damit kein Fenster aufgeht...
Titel: Re: Einfache Möglichkeit zum Enpacken von Zip-Archiven?
Beitrag von: Keydins am 16.05.14 - 10:10:28
Besten Dank für die Tipps, ich werde das nächste Woche mal in meine Lösung integrieren.