Einzelnen Beitrag anzeigen

Grolle

Registriert seit: 5. Nov 2004
Ort: Coesfeld
1.268 Beiträge
 
Delphi 2010 Professional
 
#1

Hilfe bei Macro Übersetzung (OOO Basic)

  Alt 12. Feb 2008, 14:37
Hallo,

ich versuche gerade folgendes Macro zu übersetzen:
Delphi-Quellcode:
    Sub Main

    dim Args(1) as new com.sun.star.beans.PropertyValue
    dim InfoArray(7) as new com.sun.star.beans.PropertyValue

    InfoArray(0).name = "Extension"
    InfoArray(0).Value = "txt"
    InfoArray(1).name = "HeaderLine"
    InfoArray(1).Value = True
    InfoArray(2).name = "FieldDelimiter"
    InfoArray(2).Value = ";"
    InfoArray(3).name = "StringDelimiter"
    InfoArray(3).Value = ""
    InfoArray(4).name = "DecimalDelimiter"
    InfoArray(4).Value = "."
    InfoArray(5).name = "ThousandDelimiter"
    InfoArray(5).Value = ","
    InfoArray(6).name = "EnableSQL92Check"
    InfoArray(6).Value = False
    InfoArray(7).name = "PreferDosLikeLineEnds"
    InfoArray(7).Value = True
    loDataManager = createUnoService("com.sun.star.sdb.DatabaseContext")
    loNewDatasource = loDataManager.createInstance()
    loNewDatasource.URL = "sdbc:flat:C:\temp\vorlagen\"
    loNewDatasource.setPropertyvalue( "Info", InfoArray() )
    loNewDatasource.databaseDocument.storeAsUrl(convertToURL("C:\temp\vorlagen\adressen.odb"), Args())
    loDataManager.RegisterObject("MD Adressbuch pro", loNewDatasource)
    loNewDatasource.databaseDocument.store

    End Sub
Delphi Code:
Delphi-Quellcode:
procedure TForm1.Button2Click(Sender: TObject);
var
infoArray, loDataManager, loNewDatasource , args: Variant;
begin
  infoArray := CreateProperties(['Extension','txt','HeaderLine',True,'FieldDelimiter',';',
                                 'StringDelimiter','','DecimalDelimiter','.','ThousandDelimiter',',',
                                 'EnableSQL92Check',False,'PreferDosLikeLineEnds',True]);
  loDataManager := createUnoService('com.sun.star.sdb.DatabaseContext');
  loNewDatasource := loDataManager.createInstance(); ### ERROR (Ungültige Variablenoperation)
  loNewDatasource.URL := 'sdbc:flat:C\temp\vorlagen';
  loNewDatasource.Propertyvalue('Info', infoArray);
  loNewDatasource.databaseDocument.storeAsUrl(convertToUrl('C:\temp\vorlagen\adressen.odb'), args);
  loDataManager.RegisterObject('MD Adressbuch pro', loNewDatasource);
  loNewDatasource.databaseDocument.store;
end;
In der Zeile loNewDatasource := loDataManager.createInstance(); bekomme ich eine Fehlermeldung Ungültige Variablenoperation.
Kann mir da jemand weiterhelfen?

Viele Grüße ...

  Mit Zitat antworten Zitat