Je cherche � comprendre... Ma m�thode m�me corrig�e ne fonctionne pas alors que
si je me sers du morceau de code que Bernard m'a gentiment donn� cela marche...
code de bernard:(l�g�rement retouch� pour les noms et chemins)
ConnectOpenOffice; // �tablir la connexion, si pas d�j� fait
DataContext:= CreateUnoService('com.sun.star.sdb.DatabaseContext');
NomSource:= 'src1';
if DataContext.hasbyname(NomSource) then
Memo_Enumeration.Lines.Add(NomSource +' existe')
else begin
// mettre les fichiers dans ce r�pertoire
Chemin:= convertToURL('c:\Dossiers\Coquery');
lesProps:= CreateProperties([
'Extension', 'txt', 'CharSet', 'ISO-8859-15',
'FixedLength', True, 'HeaderLine', True,
'FieldDelimiter', ';', 'StringDelimiter', '"',
'DecimalDelimiter', '.', 'ThousandDelimiter', ',']);
uneInstance:= DataContext.createInstance;
DataContext.registerObject(NomSource, uneInstance);
uneInstance.URL:= 'sdbc:flat:' + Chemin;
uneInstance.Info:= lesProps;
Memo_Enumeration.Lines.Add('src ajout�e');
end;
mon code:
//cr�ation du service databasecontext
Datacontext:=OpenOffice.createInstance('com.sun.star.sdb.DatabaseContext');
//si openoffice connait la source src1
if Datacontext.hasbyname('src1')
then Memo_Enumeration.Lines.Add('src1 existe d�j�')
else
begin
// Core reflection est utilis� pour pouvoir cr�er des property value
CoreReflection := OpenOffice.createInstance
('com.sun.star.reflection.CoreReflection');
//cr�ation d' un tableau de propertyvalues �quivalent � createproperties
arguments:= VarArrayCreate([0,7], varVariant);
CoreReflection.forName('com.sun.star.beans.PropertyValue').createObject(PropertyValue);
PropertyValue.Name := 'Extension';
PropertyValue.Value := 'txt';
arguments[0]:= PropertyValue ;
PropertyValue.Name := 'CharSet';
PropertyValue.Value := 'ISO-8859-15'; //ou 'ISO646-FR1'
arguments[1]:= PropertyValue ;
PropertyValue.Name := 'FixedLength';
PropertyValue.Value := true;
arguments[2]:= PropertyValue ;
PropertyValue.Name := 'HeaderLine';
PropertyValue.Value := true;
arguments[3]:= PropertyValue ;
PropertyValue.Name := 'FieldDelimiter';
PropertyValue.Value := ';';
arguments[4]:= PropertyValue ;
PropertyValue.Name := 'StringDelimiter';
PropertyValue.Value := '"';
arguments[5]:= PropertyValue ;
PropertyValue.Name := 'DecimalDelimiter';
PropertyValue.Value := '.';
arguments[6]:= PropertyValue ;
PropertyValue.Name := 'ThousandDelimiter';
PropertyValue.Value := ',';
arguments[7]:= PropertyValue ;
//cr�ation de la datasource avec parametres
instance:=Datacontext.createInstance;
//enregistrement dans openoffice
datacontext.registerObject('src1',instance);
instance.URL:= 'sdbc:flat:file:///C:/Dossiers/coquery';
instance.Info:= arguments;
end;
Quelle diff�rence y a-t-il entre le CreateProperties et ma cr�ation d'un tableau
de propertyvalues???
ou alors cela vient-il du fait que bernard utilise un ConnectOpenOffice qui
instancie des services que je n'utilise pas mais qui seraient n�cessaires???
(Introspection et DispatchHelper)
J'aimerais bien comprendre les diff�rences car si je trouve pratique d'utiliser
des outils faits par d'autres j'aime bien savoir ce qu'ils font de plus...
Je les ai �pluch�s d�j� mais � part le ConnectOpenOffice qui contient des
instanciations suppl�mentaires , je ne voie pas trop de diff�rences...
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]