Seite 1 von 1
dBase Datei öffnen
Verfasst: Mo, 03.03.2008 13:01
von Hago
Hallo,
ich lasse mit einem Perl-Script eine dBase Datei von OOCalc öffnen.
Das klappt, nur nicht ganz so, wie ich es will.
Sofort nach dem Start von OO poppt das kleine Fenster hoch ("DBaseimport"), in dem ich nach dem zu verwendenden Zeichensatz gefragt werde.
Das möchte ich gerne vermeiden.
Gibt es irgendeine Möglichkeit, diese Entscheidung beim Aufruf als Parameter mit anzugeben oder einen Standard im Programm festzulegen?
Ich wäre für Hilfe sehr dankbar.
Gruß, Hago
Re: dBase Datei öffnen
Verfasst: Mo, 03.03.2008 17:35
von komma4
siehe
viewtopic.php?f=18&t=16481
Das bekommst Du auch in Perl verpackt?!
Re: dBase Datei öffnen
Verfasst: Do, 06.03.2008 13:55
von Hago
Hallo,
ich hab's inzwischen raus bekommen.
Christian Winter aus der Perl-Newsgroup hat's gewusst:
Code: Alles auswählen
use strict;
my $dir = ("-Pfad zu OO-Calc-");
my $file = "-Pfad zur DBF-Datei-";
my $enc = "IBMPC_850"; 'das ist der wesentliche Zeichensatz, den dBase verwendet
my @cmd = (
$dir."scalc.exe",
qq[macro:///Standard.Module1.openDBFwithEnc("$file","$enc")]
);
system( @cmd );
Im "Standard.Module1" braucht man dann dieses Makro mit der Funktion(auch von Christian Winter):
Code: Alles auswählen
Function MakePropertyValue( Optional cName As String, Optional uValue ) As com.sun.star.beans.PropertyValue
Dim oPropertyValue As New com.sun.star.beans.PropertyValue
If Not IsMissing( cName ) Then
oPropertyValue.Name = cName
EndIf
If Not IsMissing( uValue ) Then
oPropertyValue.Value = uValue
EndIf
MakePropertyValue() = oPropertyValue
End Function
sub openDBFwithEnc( iFile As String, inputCharset As String )
' dim document as object
dim oDoc as object
inURL = ConvertToURL( "-Pfad zur DBF-Datei-" )
oDesk = createUNOService("com.sun.star.frame.Desktop")
oDoc = oDesk.loadComponentFromURL( inURL, "_blank", 0, Array(_
MakePropertyValue("FilterOptions", inputCharset),_
MakePropertyValue("FilterName", "dBase"),_
MakePropertyValue("Hidden", False) ) )
end sub
Vielleich interessiert es ja jemanden.
Gruß, Hago
Re: dBase Datei öffnen
Verfasst: Do, 28.06.2012 18:56
von JuSe
Hallo,
ich brings einfach nicht hinne !
Eine vorhandene dbf Datei aus einem Makro heraus öffnen schlägt genau so wie beschrieben fehl.
Könnten Sie bitte mal ihren vollständigen problemlösenden Modulcode zum Nachvollziehen ins Forum stellen. Ich verzweifle nämlich langsam aber sicher. Die Importmethoden aus Fachbüchern (Thomas Krumbein) funktionieren bei mir einfach nicht . Ihre Lösung würde ich gerne ausprobieren, mir fehlt allerdings die Einbindung der Funktion. Auch kann ich mit dem Begriff "Perl-Newsgroup" nichts anfangen.
Bitte helfen sie mir weiter.
Vielen Dank
Jürgen