Das Notes Forum

Domino 9 und frühere Versionen => Entwicklung => Thema gestartet von: aoibhneach am 08.07.21 - 08:55:46

Titel: Export von Dokumenten mit Form in separate Dateien
Beitrag von: aoibhneach am 08.07.21 - 08:55:46
Guten Morgen,

ich möchte Dokumente exportieren, so dass diese mit Ihrer ursprünglichen Maske zur Verfügung stehen. Das geht mit der "Print"-Methode in "UIView" in einer Schleife schon ganz gut. Die Dokumente befinden sich danach in einzelnen PDF-Dateien auf dem "Desktop". Letzteres ist nicht tragisch, weil sich der Desktop im Datei-Explorer auch als Ordner darstellt.

Aber: Leider haben alle einen vom System vorgegebenen Namen, bestehend aus Druck-Datum+Druck-Uhrzeit+Name der Datenbank+Name der Ansicht. Das ist nicht zu ändern, aber ausgesprochen "blöd".  ;)
Die Methode "Print" übergibt es so direkt an die virtuelle "Drucker-Queue."

Gibt es einen anderen Weg? Ich kann mir im Moment auch nicht vorstellen, dass Lotus Notes Mittel anbietet, nachträglich Dateinamen auf Betriebssystem-Ebene zu ändern, oder?

Vielen Dank für Eure Anregungen und Grüße

Nils
Titel: Re: Export von Dokumenten mit Form in separate Dateien
Beitrag von: eknori am 08.07.21 - 10:43:21
... Ich kann mir im Moment auch nicht vorstellen, dass Lotus Notes Mittel anbietet, nachträglich Dateinamen auf Betriebssystem-Ebene zu ändern, oder?

Ich schon. https://help.hcltechsw.com/dom_designer/9.0.1/appdev/LSAZ_NAME_STATEMENT.html (https://help.hcltechsw.com/dom_designer/9.0.1/appdev/LSAZ_NAME_STATEMENT.html)
Titel: Re: Export von Dokumenten mit Form in separate Dateien
Beitrag von: aoibhneach am 08.07.21 - 11:48:58
Hallo eknori,

hab es ausprobiert und es funktioniert. Sehr schön. Hierfür Danke !!

Ein kleines "aber":

Sowie ich im Befehl "Name" jedoch "wildcards" im Dateinamen der Quelldatei nutze, also z.B."*" zum Maskieren des variablen Datums und der Uhrzeit im Dateinamen, findet der Befehl "Name" die Datei nicht.

Leider enthalten die Dateinamen immer Datum und Uhrzeit.

Was tun? Gibt es eine Lösung?

Danke
Titel: Re: Export von Dokumenten mit Form in separate Dateien
Beitrag von: eknori am 08.07.21 - 12:40:57
Man könnte zunächst alle files in dem Zieldirectory einlesen. Das funktioniert mit wildcard. Dann hat man die genauen Dateinamen.
Anschließend über die Liste iterieren, und die neuen Namen vergeben

https://help.hcltechsw.com/dom_designer/9.0.1/appdev/LSAZ_DIR_FUNCTION_EX.html (https://help.hcltechsw.com/dom_designer/9.0.1/appdev/LSAZ_DIR_FUNCTION_EX.html)
Titel: Re: Export von Dokumenten mit Form in separate Dateien
Beitrag von: aoibhneach am 08.07.21 - 14:16:22
Hallo Eknori,

Volltreffer!  :)

Ich habe schon so viele NotesDb'n entwickelt. Aber mit diesen Dingen hatte ich bisher keine Berührung. So durfte ich wieder etwas lernen und bin begeistert.

Nochmals vielen Dank .

Viele Grüße, Nils
Titel: Re: Export von Dokumenten mit Form in separate Dateien
Beitrag von: aoibhneach am 09.07.21 - 04:07:50
Guten Morgen,

es tritt doch noch ein Zugriffsproblem auf, aber erst, nachdem einige Dateien verschoben wurden. Kann ich diesen Thread für eine weitere Frage nutzen oder ist er abgeschlossen?

Viele Gruße
Titel: Re: Export von Dokumenten mit Form in separate Dateien
Beitrag von: eknori am 09.07.21 - 05:27:06
Du kannst hier weiter schreiben.
Ich würde einen neuen thread mit Verweis auf den bestehenden aufmachen.

So wie beim HCL Support. Ein Issue pro case.
Titel: Re: Export von Dokumenten mit Form in separate Dateien
Beitrag von: aoibhneach am 09.07.21 - 08:08:44
Follow up: https://atnotes.de/index.php/topic,63292.msg403558.html#msg403558 (https://atnotes.de/index.php/topic,63292.msg403558.html#msg403558)

Guten Morgen,

es tritt doch noch ein Zugriffsproblem auf, aber erst, nachdem einige Dateien verschoben wurden. Kann ich diesen Thread für eine weitere Frage nutzen oder ist er abgeschlossen?

Viele Gruße

Guten Morgen,
ich hoffe, das Zitieren ist so gemeint.
Alles lief prima. Aber dann traten plötzlich Zugriffsprobleme auf.
Vielen Dank für Deine/Eure Hilfe!!!

Das "Überspringen" von Dokumenten, die eventuell einen Replizierkonflikt haben, ist im Code-Ausriss nicht enthalten.

Anmerkung: Ich muss jede Datei sofort aus dem Quellverzeichnis löschen, weil ich sonst das wichtige Merkmal "SchluesselNr" verliere. Diese benötige ich für den neuen Namen.

Sub Click(Source As Button)

' Im Original stehen hier Deklarationen
   Set vc = view.AllEntries
   Set entry = vc.GetFirstEntry
   Set doc = entry.Document
   
   pageSeparator = 2 'Neue Seite
   
   Dim altesFile, neuesFile As String
   
   Dim pathname As String
   Dim filename As String
   'Es folgt das Muster des Dokumentnamen der Form: "Datum_Uhrzeit-Dokumentname.pdf"
   'fuer den Befehl: filename = Dir$(pathname,0)

   pathname = "C:\Users\xxxxxx\Desktop\*Dokumentname.pdf*"
   
   Do Until doc Is Nothing   
      Call uiview.SelectDocument(doc)
      SchluesselNr = doc.SchluesselNr(0)   
      Call uiview.Print(1, , , ,pageSeparator ,"Form_des_Dokuments", , , ,"PDF24")

      filename = Dir$(pathname,0)

      altesFile = "C:\Users\xxxxxx\Desktop\" & filename
      
      filename = Dir$()
      neuesFile = "E:\ZIELVERZEICHNIS\" & SchluesselNr & "_Export_Dokument.pdf"
      
      Name altesFile As neuesFile
      
      Call uiview.DeselectAll
      Set entry = vc.GetNextEntry(entry)
      Set doc = entry.Document()
      
   Loop   
   
End Sub
Titel: Re: Export von Dokumenten mit Form in separate Dateien
Beitrag von: eknori am 09.07.21 - 08:57:39
evtl ist es geschickter, erst alle filenames ( in ein variant / eine List ) einzulesen, und anschließend über die Liste zu iterieren.
Schließen muss man die files m.W. nach nicht explizit.
 
Titel: Re: Export von Dokumenten mit Form in separate Dateien
Beitrag von: aoibhneach am 09.07.21 - 09:07:10
Hallo eknori,

vielen Dank. Ich habe doch noch ein neues Thema gestartet; in der Annahme, dass das richtig war.

Viele Grüße

Nils