Speicherort nach Exportieren zu Word

Fragen zum Thema Import und Export und Importieren von Kontoauszügen
Antworten
Kuschel1234
Profi
Beiträge: 43
Registriert: So, 24 Okt, 2010 14:26

Speicherort nach Exportieren zu Word

Beitrag von Kuschel1234 » Sa, 02 Jul, 2011 17:20

Hallo,

ich exportiere gerade meine Buchungen über einen Bericht in ein Word-Dokument.

Dabei wird das Dokument ja in den Ordner: "EuroKass/Office/Dokuments"
gespeichert. Kann man den Ordner auch ändern in dem das Dokument gespeichert wird. Und kann man auch den Dateinamen ändern, weil bisher heißen meine Dokumente ja jetzt so: 1,2,3,...

Vielen Dank

Liebe Grüße
Kuschel1234

Benutzeravatar
Team Schauries
Site Admin
Beiträge: 1058
Registriert: Mo, 17 Jan, 2005 20:25
Wohnort: Essen

Beitrag von Team Schauries » So, 03 Jul, 2011 8:39

Hallo Kuschel1234,

im Programm-Center gibt es ein Ereignis "Beim Erstellen eines Dateinamens". Hier kann man Einfluss auf den Speicherort und Dateinamen nehmen.

Ein Beispiel für einen festgelegten Dateinamen:

Code: Alles auswählen

Procedure OnCreateNewFileName(Template : String; Var FileName : String)

  FileName = "C:\Temp\MeinWordDokument.Doc"

EndProcedure
Ein Beispiel für einen dynamisch erzeugten Dateinamen:

Code: Alles auswählen

Procedure OnCreateNewFileName(Template : String; Var FileName : String)

  FileName = "C:\Temp\" + RandomText(8,"a","z") + ".Doc"

EndProcedure
Ein Beispiel, in dem der Dateiname abgefragt wird:

Code: Alles auswählen

Procedure OnCreateNewFileName(Template : String; Var FileName : String)

  Var NewFileName : String

  NewFileName = OpenFileDialog(FileName,"","",FileName)
  If NewFileName > ""
    FileName = NewFileName
  EndIf

EndProcedure 
Viele Grüße,
Dirk Schauries
Team Schauries

Kuschel1234
Profi
Beiträge: 43
Registriert: So, 24 Okt, 2010 14:26

Beitrag von Kuschel1234 » So, 03 Jul, 2011 10:27

Vielen Dank für die schnelle Antwort. Ist es denn auch möglich das der Dateiname für jeden Bericht einzeln festgelegt wird. Also das ich die Funktion nicht im Programm-Center sondern in meinen Bericht gleich einbaue?

Im Moment sieht das bei mir so aus:

Procedure Aktionsliste_OnExecute(Index : Integer; Name : String)

Var Row : Integer
Var ExportFilePath : String
Var ExportFileName : String
Var ExportFileNameUserItem : String
Var FileName : String

If Name = "actExportieren"
If FeldVorlage.Text = ""
Sm("Es wurde kein Report festgelegt!")
Exit
EndIf
ExportFilePath = Office.CreateDocumentMonthPath
ExportFileNameUserItem = stripfilename(ExportFileNameUserItem)
ExportFileName = Office.CreateDocumentIncFileName
(ExportFilePath,ExportFileNameUserItem,"Doc")
PrintTemplate(FeldVorlage.Text,ExportFileName,True,False)
EndIf

EndProcedure

Benutzeravatar
Team Schauries
Site Admin
Beiträge: 1058
Registriert: Mo, 17 Jan, 2005 20:25
Wohnort: Essen

Beitrag von Team Schauries » So, 03 Jul, 2011 12:01

Hallo Kuschel1234,

ich dachte, Du erstellst die Dokumente über das EuroKass-Fenster "Druckvorlagen" aber das geht natürlich auch.
Und wie ich sehe, setzt Du das in Deinem Beispielcode bereits um oder verstehe ich Deine Frage nicht richtig?

Deine Zeilen…

Code: Alles auswählen

Procedure Aktionsliste_OnExecute(Index : Integer; Name : String)

Var Row : Integer 
Var ExportFilePath : String 
Var ExportFileName : String 
Var ExportFileNameUserItem : String 
Var FileName : String 

If Name = "actExportieren" 
  If FeldVorlage.Text = "" 
    Sm("Es wurde kein Report festgelegt!") 
    Exit 
  EndIf 
  ExportFilePath = Office.CreateDocumentMonthPath 
  ExportFileNameUserItem = stripfilename(ExportFileNameUserItem) 
  ExportFileName = Office.CreateDocumentIncFileName(ExportFilePath,ExportFileNameUserItem,"Doc") 
  PrintTemplate(FeldVorlage.Text,ExportFileName,True,False) 
EndIf 

EndProcedure
Möglich ware z. B. auch…

Code: Alles auswählen

Procedure Aktionsliste_OnExecute(Index : Integer; Name : String)
  PrintTemplate(FeldVorlage.Text,"C:\Temp\1234.Doc",True,False) 
EndProcedure
Team Schauries

Antworten