Voil�, je dois r�aliser un publipostage openoffice en le pilotant � partir d'une
appli delphi. Ce publipostage concerne un .sxw et un .txt (avec des ";" comme
s�parateurs)
Je sais r�aliser un publipostage si la source existe dans openoffice, mon
probl�me est que lors de l'installation de l'application , la source ne sera
pas dans openoffice... Il me faut donc savoir la cr�er (on ne va pas demander �
un utilisateur lambda de le faire).
Je me suis donc renseign� et j'ai trouv� comment cr�er une DataSource... Celle
ci se cr�e bien mais le probl�me est qu'elle ne contient aucune table...
Comment puis je faire pour qu'elle en contienne ou que celles ci soient
visibles.

Je vous passe mon code en m�me temps (juste pour la DataSource mais si quelqu'un
veut le MailMerge en Delphi c'est tout � fait faisable)

procedure TTest.bt_creation_datasourceClick(Sender: TObject);
var  arguments:variant;
     PropertyValue :variant;
     CoreReflection: Variant;
begin
   //cr�ation d'un database context qui contient toutes les sources de donn�es
   //connait open office
   Datacontext:=OpenOffice.createInstance('com.sun.star.sdb.DatabaseContext');
   //si openoffice connait la source src1
   if Datacontext.hasbyname('src1')
   then Memo_Enumeration.Lines.Add('src1 trouv�')
   else
      begin
      // Core reflection est utilis� pour pouvoir cr�er des property value
      CoreReflection := OpenOffice.createInstance
                     ('com.sun.star.reflection.CoreReflection');
      // un tableau dynamique de propertyvalues
      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 := 0;
      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
      Datasource:=OpenOffice.createInstance('com.sun.star.sdb.DataSource');
      //enregistrement dans openoffice
      datacontext.registerObject('src1',Datasource);
      Datasource.URL:= 'sdbc:flat:file:///C:/Dossiers/coquery';
      Datasource.Info:= arguments;
      connection:=datasource.getconnection('','');
      {datasource.TableFilter.('essai');
      datasource.TableTypeFilter.'TABLE';}
       datasource.TableTypeFilter.getType
      {connection.tables;}
    end;
end;
Je rappelle mon probl�me vient du fait que le MailMerge ne d�tecte pas ma table
(essai) qui correspond au fichier .txt

Sinon toutes mes excuses � Laurent Godard que j'ai importun� sur un mail
professionnel alors que cette liste existait...(je ne le savais pas encore)


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Répondre à