« Descriptor (TQueryExecuteTask) » : différence entre les versions

De Wiki1000
Aucun résumé des modifications
Ligne 50 : Ligne 50 :
   //  
   //  
   itv := itvs.AddItem('value');
   itv := itvs.AddItem('value');
   itv.AddAttribute('odlValue','O');
   itv.AddAttribute('oldValue','O');
   itv.AddAttribute('newValue','true');
   itv.AddAttribute('newValue','true');



Version du 14 janvier 2020 à 15:49

<source lang='delphi'>property Descriptor:TfwxmlDocument;</source>

Cette propriété contient le descriptif d'exportation.

Un descriptif d'exportation à trois sections principales :

queries

Cette section est une collection de requêtes (query)

query

Cette section décrit une requête

output

Cette section décrit la destination de l'export

exporter

Cette section décrit le formatage des données exportées.

Exemple :

Création dynamique de descriptif d'exportation :

<source lang="delphi"> //Function CreateDescriptor():TxmlDocument; var itr,itqs,itq,itt,itcs,itc,itu,itvs,itv:TxmlItem; begin

 Result := TxmlDocument.Create(nil); 
 itr  := TxmlItem.Create(Result); 
 itr.ItemName := 'root';
 // 
 itqs := itr.AddItem('queries');
 itq  := itqs.AddItem('query'); 
 itq.AddItems(['QueryName','ClassName'],['main','WfClasseA']); 
 // 
 itt := itr.addItem('output');  
 itt.AddItemText('ExportColumns','true'); 
 itcs := itt.AddItem('columns');
 // 
 itc := itcs.AddItem('column');
 itc.AddItems(['PropName','Title'],['unCode','Code']); 
 // 
 itc := itcs.AddItem('column');
 itc.AddItems(['PropName','Title'],['unBool','Boolean']); 
 itvs := itc.AddItem('values');
 // 
 itv := itvs.AddItem('value');
 itv.AddAttribute('oldValue','N');
 itv.AddAttribute('newValue','false');
 // 
 itv := itvs.AddItem('value');
 itv.AddAttribute('oldValue','O');
 itv.AddAttribute('newValue','true');
 itc := itcs.AddItem('column');
 itc.AddItems(['PropName','Title'],['unCompteur','Compteur']); 
 itc := itcs.AddItem('column');
 itc.AddItems(['PropName','Title'],['unEntier','Entier']); 
 itc := itcs.AddItem('column');
 itc.AddItems(['PropName','Title'],['unEtat','Enuméré']); 
 itc := itcs.AddItem('column');
 itc.AddItems(['PropName','Title'],['unDouble','Double']); 
 itu := itr.AddItem('exporter'); 
 itu.AddItems(['ClassName'],['TCSVExporter']);

end; </source>

Affectation du descriptif à l'instance :

<source lang="delphi"> //Procedure Test; var qbe:TQueryExecuteTask; doc:TxmlDocument; begin

 qbe := TQueryExecuteTask.Create;
 doc := CreateDescriptor();
 AStr := doc.SaveToString;
 // Do not create the descriptor directly inside the Descriptor.document
 // instead, use an intermediate document.
 // This will recreate the document with the correct internal item classes
 //
 qbe.Descriptor.Document.LoadFromString(AStr);
 ...

end; </source>


Voir aussi:

{{#if:TQueryExecuteTask_(class)|

{{#if:TQueryExecuteTask_(class)|— TQueryExecuteTask_(class) |}} — Développement DSM

|

{{#if:|— [[{{{1}}}]] |}} — Développement DSM

}}