SoftMaker.de

Deutschsprachiges Diskussionsforum
Aktuelle Zeit: 19.05.2013 11:42:41

Alle Zeiten sind UTC + 1 Stunde




Ein neues Thema erstellen Auf das Thema antworten  [ 17 Beiträge ]  Gehe zu Seite 1, 2  Nächste
Autor Nachricht
 Betreff des Beitrags: Dokumentation der neuen Dateiformate
BeitragVerfasst: 20.11.2011 11:07:10 
Offline
SoftMaker Volunteers
SoftMaker Volunteers

Registriert: 23.04.2008 23:02:12
Beiträge: 1461
Darauf hatte ich schon einmal vor längerer Zeit hingewiesen: Die Programme können nun alle die ...X-Formate von Microsoft Office lesen und schreiben. In der Hilfe und im Handbuch zu BM sind diese aber nicht erwähnt. Daher kann man aus BM heraus auch nicht das Lesen oder Schreiben in diesen neuen Formaten veranlassen.
Tut sich da noch was?


Nach oben
 Profil  
 
BeitragVerfasst: 20.11.2011 12:42:29 
Offline

Registriert: 01.02.2010 19:38:04
Beiträge: 76
Vielleicht hilft das:

Code:
Enum TmSaveFormat
    tmFormatDocument = 0
    tmFormatTemplate = 1
    tmFormatWinWord97 = 2
    tmFormatOpenDocument = 3
    tmFormatRTF = 4
    tmFormatPocketWordPPC = 5
    tmFormatPocketWordHPC = 6
    tmFormatPlainTextAnsi = 7
    tmFormatPlainTextDOS = 8
    tmFormatPlainTextUnicode = 9
    tmFormatPlainTextUTF8 = 10
    tmFormatHTML = 12
    tmFormatWinWord6 = 13
    tmFormatPlainTextUnix = 14
    tmFormatWinWordXP = 15
    tmFormatTM2006 = 16
    tmFormatOpenXML = 17
    tmFormatTM2008 = 18
End Enum


Enum PmSaveFormat
    pmFormatDocument = 0
    pmFormatTemplate = 1
    pmFormatExcel97 = 2
    pmFormatExcel5 = 3
    pmFormatExcelTemplate = 4
    pmFormatSYLK = 6
    pmFormatRTF = 7
    pmFormatTextMaker = 7
    pmFormatHTML = 8
    pmFormatdBaseDOS = 9
    pmFormatdBaseAnsi = 10
    pmFormatDIF = 11
    pmFormatPlainTextAnsi = 12
    pmFormatPlainTextDOS = 13
    pmFormatPlainTextUnix = 14
    pmFormatPlainTextUnicode = 15
    pmFormatdBaseUnicode = 18
    pmFormatPM2004 = 19
    pmFormatPlainTextUTF8 = 21
    pmFormatPM2006 = 22
    pmFormatMSXML = 23
    pmFormatPM2008 = 25
End Enum


Nach oben
 Profil  
 
BeitragVerfasst: 20.11.2011 13:46:52 
Offline
SoftMaker Volunteers
SoftMaker Volunteers

Registriert: 06.02.2007 14:01:47
Beiträge: 956
"enum" ist kein Schlüsselwort in BasicMaker sondern in C# und Java.


Nach oben
 Profil  
 
BeitragVerfasst: 20.11.2011 14:22:51 
Offline

Registriert: 01.02.2010 19:38:04
Beiträge: 76
Es geht nicht um ENUM, sondern um die Formate.
Lies' die Frage von Panosis.


Nach oben
 Profil  
 
BeitragVerfasst: 20.11.2011 14:35:03 
Offline
SoftMaker Volunteers
SoftMaker Volunteers

Registriert: 06.02.2007 14:01:47
Beiträge: 956
Zitat:
Daher kann man aus BM heraus auch nicht das Lesen oder Schreiben in diesen neuen Formaten veranlassen.
Stehe ich an diesem düstern November-Sonntag irgendwo auf dem Schlauch.


Nach oben
 Profil  
 
BeitragVerfasst: 20.11.2011 15:26:48 
Offline

Registriert: 01.02.2010 19:38:04
Beiträge: 76
Wenn du die in der BM-Hilfe angegebenen Formate mit den ausgelesenen vergleichst, siehst du die Unterschiede.

TM
Code:
Aus der Hilfe

tmFormatDocument         =  0 ' Dokument, ist der Standardwert           
tmFormatTemplate         =  1 ' Dokumentvorlage                         
tmFormatWinWord97        =  2 ' Microsoft Word für Windows 97 und 2000   
tmFormatOpenDocument     =  3 ' OpenDocument, OpenOffice.org, StarOffice
tmFormatRTF              =  4 ' Rich Text Format                         
tmFormatPocketWordPPC    =  5 ' Pocket Word auf dem Pocket PC           
tmFormatPocketWordHPC    =  6 ' Pocket Word auf dem Handheld PC (Windows
tmFormatPlainTextAnsi    =  7 ' Textdatei mit Windows-Zeichensatz       
tmFormatPlainTextDOS     =  8 ' Textdatei mit DOS-Zeichensatz           
tmFormatPlainTextUnicode =  9 ' Textdatei mit Unicode-Zeichensatz       
tmFormatPlainTextUTF8    = 10 ' Textdatei mit UTF8-Zeichensatz           
tmFormatHTML             = 12 ' HTML                                     
tmFormatWinWord6         = 13 ' Microsoft Word für Windows 6.0           
tmFormatPlainTextUnix    = 14 ' Textdatei für UNIX, Linux, FreeBSD       
tmFormatWinWordXP        = 15 ' Microsoft Word für Windows XP und 2003   

Ausgelesen:

tmFormatDocument = 0
    tmFormatTemplate = 1
    tmFormatWinWord97 = 2
    tmFormatOpenDocument = 3
    tmFormatRTF = 4
    tmFormatPocketWordPPC = 5
    tmFormatPocketWordHPC = 6
    tmFormatPlainTextAnsi = 7
    tmFormatPlainTextDOS = 8
    tmFormatPlainTextUnicode = 9
    tmFormatPlainTextUTF8 = 10
    tmFormatHTML = 12
    tmFormatWinWord6 = 13
    tmFormatPlainTextUnix = 14
    tmFormatWinWordXP = 15
    tmFormatTM2006 = 16
    tmFormatOpenXML = 17
    tmFormatTM2008 = 18


PM
Code:
Aus der Hilfe:

     pmFormatDocument         =  0 ' Dokument, ist Default
     pmFormatTemplate         =  1 ' Dokumentvorlage
     pmFormatExcel97          =  2 ' Excel 97/2000/XP
     pmFormatExcel5           =  3 ' Excel 5.0/7.0
     pmFormatExcelTemplate    =  4 ' Excel-Vorlage
     pmFormatSYLK             =  6 ' Sylk
     pmFormatRTF              =  7 ' Rich Text Format
     pmFormatTextMaker        =  7 ' TextMaker (= RTF)
     pmFormatHTML             =  8 ' HTML
     pmFormatdBaseDOS         =  9 ' dBASE-Datenbank im DOS-Zeichensatz
     pmFormatdBaseAnsi        = 10 ' dBASE-Datenbank im Windows-Zeichensatz
     pmFormatDIF              = 11 ' Textdatei mit Windows-Zeichensatz
     pmFormatPlainTextAnsi    = 12 ' Textdatei mit Windows-Zeichensatz
     pmFormatPlainTextDOS     = 13 ' Textdatei mit DOS-Zeichensatz
     pmFormatPlainTextUnix    = 14 ' Textdatei mit ANSI-Zeichensatz für UNIX, Linux und FreeBSD
     pmFormatPlainTextUnicode = 15 ' Textdatei mit Unicode-Zeichensatz
     pmFormatdBaseUnicode     = 18 ' dBASE-Datenbank mit Unicode-Zeichensatz
     pmFormatPlainTextUTF8    = 20 ' Textdatei mit UTF8-Zeichensatz

Ausgelesen:

pmFormatDocument = 0
    pmFormatTemplate = 1
    pmFormatExcel97 = 2
    pmFormatExcel5 = 3
    pmFormatExcelTemplate = 4
    pmFormatSYLK = 6
    pmFormatRTF = 7
    pmFormatTextMaker = 7
    pmFormatHTML = 8
    pmFormatdBaseDOS = 9
    pmFormatdBaseAnsi = 10
    pmFormatDIF = 11
    pmFormatPlainTextAnsi = 12
    pmFormatPlainTextDOS = 13
    pmFormatPlainTextUnix = 14
    pmFormatPlainTextUnicode = 15
    pmFormatdBaseUnicode = 18
    pmFormatPM2004 = 19
    pmFormatPlainTextUTF8 = 21
    pmFormatPM2006 = 22
    pmFormatMSXML = 23
    pmFormatPM2008 = 25


Diesmal ohne ENUM.


Nach oben
 Profil  
 
BeitragVerfasst: 20.11.2011 16:12:32 
Offline
SoftMaker Volunteers
SoftMaker Volunteers

Registriert: 06.02.2007 14:01:47
Beiträge: 956
Ich kann auch einen kleinen Umweg über WSH nehmen:

Code:
set wshell = CreateObject("Wscript.shell")
wshell.run "C:\etw.xlsx"

Setzt natürlich voraus, dass das Dateiformat entsprechend verknüpft ist, also wenn die Endung "xlsx" mit Excel verknüpft ist, kann ich sie so nicht mit PlanMaker öffnen.


Nach oben
 Profil  
 
BeitragVerfasst: 20.11.2011 16:15:02 
Offline
SoftMaker Team
SoftMaker Team

Registriert: 03.12.2003 14:32:06
Beiträge: 2976
Dewes hat geschrieben:
Zitat:
Daher kann man aus BM heraus auch nicht das Lesen oder Schreiben in diesen neuen Formaten veranlassen.
Stehe ich an diesem düstern November-Sonntag irgendwo auf dem Schlauch.

Ja :wink:

Es geht ja eigentlich nur darum, dass Sie bei Open und SaveAs auch die neuen Formate ansprechen wollen. Diese sind zwar im BasicMaker-Handbuch noch nicht dokumentiert (kommt noch), jedoch in der Software schon vorhanden:

tmFormatOpenXML = 17 ' Das ist DOCX
pmFormatMSXML = 23 ' Das ist XLSX

Einfach diese Werte übergeben, und Sie können die Formate ansprechen.

_________________
Martin Kotulla
SoftMaker Software GmbH


Nach oben
 Profil  
 
BeitragVerfasst: 20.11.2011 16:18:38 
Offline
SoftMaker Volunteers
SoftMaker Volunteers

Registriert: 06.02.2007 14:01:47
Beiträge: 956
Alles klar jetzt.


Nach oben
 Profil  
 
BeitragVerfasst: 26.12.2011 10:21:15 
Offline
SoftMaker Volunteers
SoftMaker Volunteers

Registriert: 23.04.2008 23:02:12
Beiträge: 1461
So, dann kommt hier mal das ergänzte Skript - mit der Bitte, mir Fehler bzw. Korrekturen zu melden.

Code:
REM Versuch TM Automation Dateikonversion
Set tm = CreateObject("TextMaker.Application")
tm.Application.Visible = True

DIM x, y, z AS Long

DIM DateitypB(17) AS String
   DateitypB(0)="TextMaker-Dokument"
   DateitypB(1)="Dokumentvorlage"
   DateitypB(2)="Microsoft Word für Windows 97 und 2000"
   DateitypB(3)="OpenDocument, OpenOffice.org, StarOffice"
   DateitypB(4)="Rich Text Format"
   DateitypB(5)="Pocket Word auf dem Pocket PC"
   DateitypB(6)="Pocket Word auf dem Handheld PC"
   DateitypB(7)="Textdatei mit Windows-Zeichensatz"
   DateitypB(8)="Textdatei mit DOS-Zeichensatz"
   DateitypB(9)="Textdatei mit Unicode-Zeichensatz"
   DateitypB(10)="Textdatei mit UTF8-Zeichensatz"
   DateitypB(11)="HTML"
   DateitypB(12)="Microsoft Word fr Windows 6.0"
   DateitypB(13)="Textdatei für UNIX, Linux, FreeBSD"
   DateitypB(14)="Microsoft Word für Windows XP und 2003"
   DateitypB(15)="TextMaker-Dokument, Version 2006"
   DateitypB(16)="OpenXML (DOCX)"
   DateitypB(17)="TextMaker-Dokument, Version 2008"


Begin Dialog DIALOG_1 147,49, 200, 92, "Quellformat"
  Text 4,4,188,24, "Wählen Sie den Dateityp der Quelldateien aus der Liste unten aus."
  DropListBox 4,36,144,32, DateitypB(), .DropDown_1
  OKButton 160,60,24,20
End Dialog

DIM Dlg1 AS DIALOG_1

Begin Dialog DIALOG_2 147,49, 200, 92, "Zielformat"
  Text 4,4,188,24, "Wählen Sie den Dateityp der Zieldateien aus der Liste unten aus."
  DropListBox 4,36,144,32, DateitypB(), .DropDown_1
  OKButton 160,60,24,20
End Dialog

DIM Dlg2 AS DIALOG_2

x=Dialog(Dlg1)
y=Dlg1.DropDown_1
if y>10 then y=y+1

Set sl = CreateObject("Shell.Application")
Set ordner = sl.BrowseForFolder(0, "Bitte den zu konvertierenden Ordner auswählen.", 0, 0)
        If not ordner is Nothing then
           quellordnername = ordner.self.Path
        Else
          MsgBox "Kein Ordner gefunden!"
          End
        End If

x=Dialog(Dlg2)
z=Dlg2.DropDown_1
Select Case z
Case 0, 15, 17
   endg="tmd"
Case 1
   endg="tmv"
Case 2, 12, 14
   endg="doc"
Case 3
   endg="odt"
Case 4
   endg="rtf"
Case 5
   endg="psw"
Case 6
   endg="pwd"
Case 11
   endg="htm"
Case 7, 8, 9, 10, 13
   endg="txt"
Case 16
   endg="docx"
End Select
if z>10 then z=z+1

Set ordner = sl.BrowseForFolder(0, "Bitte den Ziel-Ordner auswählen.", 0, 0)
        If not ordner is Nothing then
           zielordnername = ordner.self.Path
        Else
          MsgBox "Kein Ordner gefunden!"
          End
        End If

Set fs = CreateObject("Scripting.FileSystemObject")
Set dr = fs.GetFolder(quellordnername)
For each dateiname in dr.files
   tm.Documents.Open dateiname, Empty, Empty, Empty, y
dname=tm.ActiveDocument.Name
l=len(dname)
test=Right(dname, 5)
test=LCase(test)
If test=".docx" Then l=l-4 Else l=l-3
dname=mid(dname, 1, l)
neuername=zielordnername+"\"+dname+endg
     tm.ActiveDocument.SaveAs neuername, z
   tm.ActiveDocument.Close smoDoNotSaveChanges
next
tm.Application.Quit
Set tm = Nothing
End


Nach oben
 Profil  
 
BeitragVerfasst: 26.12.2011 12:06:09 
Offline

Registriert: 01.02.2010 19:38:04
Beiträge: 76
Korrektur: Dateityp 11 gibt's nicht

tmFormatDocument = 0
tmFormatTemplate = 1
tmFormatWinWord97 = 2
tmFormatOpenDocument = 3
tmFormatRTF = 4
tmFormatPocketWordPPC = 5
tmFormatPocketWordHPC = 6
tmFormatPlainTextAnsi = 7
tmFormatPlainTextDOS = 8
tmFormatPlainTextUnicode = 9
tmFormatPlainTextUTF8 = 10
tmFormatHTML = 12
tmFormatWinWord6 = 13
tmFormatPlainTextUnix = 14
tmFormatWinWordXP = 15
tmFormatTM2006 = 16
tmFormatOpenXML = 17
tmFormatTM2008 = 18


Nach oben
 Profil  
 
BeitragVerfasst: 26.12.2011 15:58:31 
Offline
SoftMaker Volunteers
SoftMaker Volunteers

Registriert: 23.04.2008 23:02:12
Beiträge: 1461
Wer mein Skript genau durchsieht, wird erkennen, dass die Nummern 0 bis 17 nur intern verwendet werden, um eine Klappliste daraus zu erstellen. Für die Aufrufe der Datei-Funktionen werden die Werte ab 11 um 1 erhöht, so dass 11 bis 17 zu 12 bis 18 werden.
Ganz so dumm bin ich nämlich nicht.


Nach oben
 Profil  
 
BeitragVerfasst: 27.12.2011 11:00:08 
Offline
SoftMaker Volunteers
SoftMaker Volunteers

Registriert: 23.04.2008 23:02:12
Beiträge: 1461
Hier noch die Beta-Version des entsprechenden Skripts für PM wieder mit der Bitte um Korrekturen und Fehlermeldungen - die Numerierung der Formate ist auch hier wieder intern abgefangen, versteht sich.
Code:
REM Versuch PM Automation Dateikonversion
Set pm = CreateObject("PlanMaker.Application")
pm.Application.Visible = True

DIM x, y, z AS Long

DIM DateitypB(20) AS String
   DateitypB(0)="PlanMaker-Dokument"
   DateitypB(1)="Dokumentvorlage"
   DateitypB(2)="Excel 97/2000/XP"
   DateitypB(3)="Excel 5.0/7.0"
   DateitypB(4)="Excel-Vorlage"
   DateitypB(5)="Sylk"
   DateitypB(6)="Rich Text Format"
   DateitypB(7)="HTML"
   DateitypB(8)="dBASE-Datenbank im DOS-Zeichensatz"
   DateitypB(9)="dBASE-Datenbank im Windows-Zeichensatz"
   DateitypB(10)="Textdatei mit Windows-Zeichensatz (DIF)"
   DateitypB(11)="Textdatei mit Windows-Zeichensatz (ANSI)"
   DateitypB(12)="Textdatei mit DOS-Zeichensatz"
   DateitypB(13)="Textdatei mit ANSI-Zeichensatz für UNIX, Linux und FreeBSD"
   DateitypB(14)="Textdatei mit Unicode-Zeichensatz"
   DateitypB(15)="dBASE-Datenbank mit Unicode-Zeichensatz"
   DateitypB(16)="PlanMaker-Dokument, Version 2004"
   DateitypB(17)="Textdatei mit UTF8-Zeichensatz"
   DateitypB(18)="PlanMaker-Dokument, Version 2006"
   DateitypB(19)="OpenXML (XLSX)"
   DateitypB(20)="PlanMaker-Dokument, Version 2008"

Begin Dialog DIALOG_1 147,49, 200, 92, "Quellformat"
  Text 4,4,188,24, "Wählen Sie den Dateityp der Quelldateien aus der Liste unten aus."
  DropListBox 4,36,144,32, DateitypB(), .DropDown_1
  OKButton 160,60,24,20
End Dialog

DIM Dlg1 AS DIALOG_1

Begin Dialog DIALOG_2 147,49, 200, 92, "Zielformat"
  Text 4,4,188,24, "Wählen Sie den Dateityp der Zieldateien aus der Liste unten aus."
  DropListBox 4,36,144,32, DateitypB(), .DropDown_1
  OKButton 160,60,24,20
End Dialog

DIM Dlg2 AS DIALOG_2

x=Dialog(Dlg1)
y=Dlg1.DropDown_1
if y>4 then y=y+1
if y>15 then y=y+2
if y>19 then y=y+1
if y=24 then y=25

Set sl = CreateObject("Shell.Application")
Set ordner = sl.BrowseForFolder(0, "Bitte den zu konvertierenden Ordner auswählen.", 0, 0)
        If not ordner is Nothing then
           quellordnername = ordner.self.Path
        Else
          MsgBox "Kein Ordner gefunden!"
          End
        End If

x=Dialog(Dlg2)
z=Dlg2.DropDown_1
Select Case z
Case 0, 16, 18, 20
   endg="pmd"
Case 1
   endg="pmv"
Case 2, 3
   endg="xls"
Case 4
   endg="xlt"
Case 5
   endg="slk"
Case 6
   endg="rtf"
Case 7
   endg="htm"
Case 8, 9, 15
   endg="dbf"
Case 10
   endg="dif"
Case 11, 12, 13, 14, 17
   endg="txt"
Case 19
   endg="xlsx"
End Select
if z>4 then z=z+1
if z>15 then z=z+2
if z>19 then z=z+1
if z=24 then z=25

Set ordner = sl.BrowseForFolder(0, "Bitte den Ziel-Ordner auswählen.", 0, 0)
        If not ordner is Nothing then
           zielordnername = ordner.self.Path
        Else
          MsgBox "Kein Ordner gefunden!"
          End
        End If

Set fs = CreateObject("Scripting.FileSystemObject")
Set dr = fs.GetFolder(quellordnername)
For each dateiname in dr.files
   pm.Workbooks.Open dateiname, False, y
dname=pm.ActiveWorkbook.Name
l=len(dname)
test=Right(dname, 5)
test=LCase(test)
If test=".xlsx" Then l=l-4 Else l=l-3
dname=mid(dname, 1, l)
neuername=zielordnername+"\"+dname+endg
     pm.ActiveWorkbook.SaveAs neuername, z, Empty, Empty
   pm.ActiveWorkbook.Close smoDoNotSaveChanges
next
pm.Application.Quit
Set pm = Nothing
End


Nach oben
 Profil  
 
BeitragVerfasst: 21.10.2012 15:46:24 
Offline
SoftMaker Volunteers
SoftMaker Volunteers

Registriert: 05.12.2003 22:47:22
Beiträge: 1486
Wohnort: Solingen
Ich habe gerade das Skript für TextMaker ausprobiert. Läuft soweit prima, nur wenn im Quellordner Dokumente in einem Format liegen, das nicht von TextMaker geöffnet werden kann (z.B. eine Präsentation zwischen den Texten), bricht das Skript mit den Fehlermeldungen "Datei konnte nicht geöffnet werden" und "Error in line 94 - invalid procedure or argument" ab. Wäre es vielleicht möglich, das Skript noch dahingehend zu ergänzen, dass solche Dateien im Quellordner einfach übersprungen werden? Ich selbst bin leider ein kompletter BasicMaker-N00b.
Außerdem ist mir aufgefallen, dass, wenn ich "TextMaker-Dokument" als Quellformat wähle, auch RTF- und Word-Dokumente umgewandelt werden.
Und wo ich schon einmal dabei bin: Die Listboxen zum Auswahl von Quell- und Zielformat sind nur jeweils zwei Zeilen hoch, das ist ein bisschen lästig.


Nach oben
 Profil  
 
BeitragVerfasst: 21.10.2012 16:43:45 
Offline
SoftMaker Volunteers
SoftMaker Volunteers

Registriert: 23.04.2008 23:02:12
Beiträge: 1461
Zitat:
Und wo ich schon einmal dabei bin: Die Listboxen zum Auswahl von Quell- und Zielformat sind nur jeweils zwei Zeilen hoch, das ist ein bisschen lästig.

Das ist einfach zu ändern: Bei den Einträgen DropListBox den Wert 32 vor Dateiname einfach grösser wählen, z. B. 50.

Das andere ist leider nicht so einfach zu ändern, das kann ich jetzt nicht mal schnell aus dem Ärmel schütteln.


Nach oben
 Profil  
 
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 17 Beiträge ]  Gehe zu Seite 1, 2  Nächste

Alle Zeiten sind UTC + 1 Stunde


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 0 Gäste


Sie dürfen keine neuen Themen in diesem Forum erstellen.
Sie dürfen keine Antworten zu Themen in diesem Forum erstellen.
Sie dürfen Ihre Beiträge in diesem Forum nicht ändern.
Sie dürfen Ihre Beiträge in diesem Forum nicht löschen.
Sie dürfen keine Dateianhänge in diesem Forum erstellen.

Suche nach:
Gehe zu:  
Powered by phpBB® Forum Software © phpBB Group
Deutsche Übersetzung durch phpBB.de