Seite 1 von 1
Re: per script csv Datei aus Tabelle erstellen mit Dialog
Verfasst: So, 16.02.2014 19:05
von lorbass
piet hat geschrieben:Ist so etwas überhaupt mit einem Script möglich.
In der Kategorie
OOo Basic und Java finden sich gleich im ersten sticky Post
Informationen zur StarBasic-Programmierung, die Stephan zusammengestellt hat, darin auch ein Link auf Michael Dannenhöfers
StarBasic / OpenOffice.org Basic FAQ.
Für dich von Interesse dürfte
6.1.15 Wie kann man einen Öffnen- oder Speichern-Dialog aufrufen? sein.
Gruß
lorbass
Re: per script csv Datei aus Tabelle erstellen mit Dialog
Verfasst: Di, 18.02.2014 22:29
von F3K Total
Nur ein Schuß ins Blaue:
Code: Alles auswählen
Sub my_cvs
Dim myProps(1) as New com.sun.star.beans.PropertyValue
sPath="/home/user"
sFile="mycsv.csv"
'Dim Dialogtyp(0)
'DialogTyp(0) =com.sun.star.ui.dialogs.TemplateDescription.FILESAVE_SIMPLE
myDialog=createunoservice("com.sun.star.ui.dialogs.FilePicker")
'myDialog.initialize(DialogTyp())
myDialog.setdefaultname(sFile)
myDialog.appendfilter("Text CSV",sFile)
myDialog.execute
FileName=MyDialog.Files(0)
sUrl=ConvertToUrl (FileName)
myProps(0).Name = "FilterName"
myProps(0).Value ="Text - txt - csv (StarCalc)"
myProps(1).Name="FilterOptions"
myProps(1).Value ="59/9,34,Unicode (UTF-8) ,1,1/1/2/1" 'string mit den Optionen
myDoc = thisComponent
myDoc.storeAsUrl(sUrl,myProps())
End Sub
per script csv Datei aus Tabelle erstellen mit Dialog
Verfasst: Do, 20.02.2014 14:04
von Martin312
Welche OO-Version und welches Betriebssystem setzt Du ein?
Welcher Fehlermeldungstext kommt?
Ich habe es unter OO3.1 und 4.0.1 unter Windows versucht. Die von Dir angegebene Stelle funktioniert bei mir.
Nach der Beschreibung sucht Du den FolderPicker anstelle des FilePickers?
Code: Alles auswählen
Sub my_cvs
ON ERROR GOTO Errorhandler
Dim myProps(1) as New com.sun.star.beans.PropertyValue
' X-System
' sPath = "/home/user"
' Fenster-System?
sPath = ENVIRON("HOMEDRIVE") + ENVIRON("HOMEPATH") + "\Eigene Dateien"
sFile = "mycsv.csv"
myDoc = ThisComponent
myProps(0).Name = "FilterName"
myProps(0).Value = "Text - txt - csv (StarCalc)"
myProps(1).Name = "FilterOptions"
myProps(1).Value = "59/9,34,Unicode (UTF-8) ,1,1/1/2/1" 'string mit den Optionen
myDialog = createunoservice("com.sun.star.ui.dialogs.FolderPicker")
myDialog.setDisplayDirectory(sPath)
myDialog.setTitle("Verzeichnis zum Speichern der CSV-Datei auswählen")
ret = myDialog.execute
Select case ret
case 0 ' Abbrechen
case 1 ' OK gedrückt
sUrl = ConvertToURL(myDialog.getDirectory + sFile) ' hier noch ggf. prüfen, ob der gewählte Pfad auf einen Trenner ("/"oder "\")endet
myDoc.storeAsUrl(sUrl, myProps())
end select
exit sub
Errorhandler:
MsgBox "Fehler" + chr(13) + err + ": "+ ERROR + chr(13) + "Zeile: " + erl
End Sub
Die MsgBox gibt ev. etwas deutlichere Hinweise...
Wenn Du die IDE geöffnet hast und einen Brechpunkt setzt, sollte das Skript auch bei der Betätigung des Buttons im Tabellendokument unterbrechen.
Gruß
Martin
Re: per script csv Datei aus Tabelle erstellen mit Dialog
Verfasst: Fr, 21.02.2014 09:06
von komma4
da gibt es doch noch einen Schalter (Extras>Einstellungen>OpenOffice>Allgemein>Öffnen-/Speichern-Dialoge), der auch mal für unterschiedliches Verhalten beim Scripting gesorgt hatte... ob das für die verwendeten Brand-Varianten auch so ist?