Autor Thema: Export von Dokumenten mit Form in separate Dateien  (Gelesen 1455 mal)

Offline aoibhneach

  • Aktives Mitglied
  • ***
  • Beiträge: 101
  • Geschlecht: Männlich
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
"Der verlorenste aller Tage ist der, an dem man nicht gelacht hat."

Sébastien-Roch Nicolas de Chamfort

Offline eknori

  • @Notes Preisträger
  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 11.615
  • Geschlecht: Männlich
Re: Export von Dokumenten mit Form in separate Dateien
« Antwort #1 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

Offline aoibhneach

  • Aktives Mitglied
  • ***
  • Beiträge: 101
  • Geschlecht: Männlich
Re: Export von Dokumenten mit Form in separate Dateien
« Antwort #2 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
"Der verlorenste aller Tage ist der, an dem man nicht gelacht hat."

Sébastien-Roch Nicolas de Chamfort

Offline eknori

  • @Notes Preisträger
  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 11.615
  • Geschlecht: Männlich
Re: Export von Dokumenten mit Form in separate Dateien
« Antwort #3 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

Offline aoibhneach

  • Aktives Mitglied
  • ***
  • Beiträge: 101
  • Geschlecht: Männlich
Re: Export von Dokumenten mit Form in separate Dateien
« Antwort #4 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
"Der verlorenste aller Tage ist der, an dem man nicht gelacht hat."

Sébastien-Roch Nicolas de Chamfort

Offline aoibhneach

  • Aktives Mitglied
  • ***
  • Beiträge: 101
  • Geschlecht: Männlich
Re: Export von Dokumenten mit Form in separate Dateien
« Antwort #5 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
"Der verlorenste aller Tage ist der, an dem man nicht gelacht hat."

Sébastien-Roch Nicolas de Chamfort

Offline eknori

  • @Notes Preisträger
  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 11.615
  • Geschlecht: Männlich
Re: Export von Dokumenten mit Form in separate Dateien
« Antwort #6 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.

Offline aoibhneach

  • Aktives Mitglied
  • ***
  • Beiträge: 101
  • Geschlecht: Männlich
Re: Export von Dokumenten mit Form in separate Dateien
« Antwort #7 am: 09.07.21 - 08:08:44 »
Follow up: 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!!!

  • Es wird, nachdem einige Dateien erfolgreich verschoben wurden, plötzlich ein Verzeichnis mit dem Namen aus "neuesFile" angelegt. Dann bricht die Aktion mit Fehler ab.
  • Außerdem hatte ich mitunter auch die Fehlermeldung, dass "filename = Dir$()" nicht ausgeführt werden konnte.
  • Muss ich zum Abschluss die verwendeten Dateien altesFile und neuesFile freigeben? "Reset" ist sicher nicht richtig, oder?

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
« Letzte Änderung: 09.07.21 - 09:12:41 von eknori »
"Der verlorenste aller Tage ist der, an dem man nicht gelacht hat."

Sébastien-Roch Nicolas de Chamfort

Offline eknori

  • @Notes Preisträger
  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 11.615
  • Geschlecht: Männlich
Re: Export von Dokumenten mit Form in separate Dateien
« Antwort #8 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.
 

Offline aoibhneach

  • Aktives Mitglied
  • ***
  • Beiträge: 101
  • Geschlecht: Männlich
Re: Export von Dokumenten mit Form in separate Dateien
« Antwort #9 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
"Der verlorenste aller Tage ist der, an dem man nicht gelacht hat."

Sébastien-Roch Nicolas de Chamfort

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz