« Invoke (selector) » : différence entre les versions

De Wiki1000
Aucun résumé des modifications
Aucun résumé des modifications
 
(2 versions intermédiaires par le même utilisateur non affichées)
Ligne 12 : Ligne 12 :
|-
|-
|iMethodName
|iMethodName
|Méthode la classe du sélecteur
|Méthode de la classe du sélecteur
|-
|-
|iArgs
|iArgs
Ligne 19 : Ligne 19 :


Exemple :
Exemple :
<source lang='delphi'>
Procedure WFClasseA.Populate(ls:TStringList);
begin
  ls.Add(unCode);
end
procedure TestSelector.TestInvoke;
var sel:TSelector; S,SS:string; stag:string; ls:TStringList;
begin
  sel := WFClasseA.CreateSelector('','',true,[]);
  ls := TStringList.Create;
  sel.Invoke(ocSelect, 'Populate', [ls]);
  S := ''; stag := '';
  foreach SS in  ls do
  begin
    S := S+stag+SS;
    stag := ',';
  end;
  ShowMessage(S);
end;
</source>


{{tip|Dans cet exemple la transaction est géré par la sélection.}}
{{tip|Dans cet exemple la transaction est géré par la sélection.}}
Ligne 34 : Ligne 59 :
   sel := WFClasseA.CreateSelector('','',true,[]);
   sel := WFClasseA.CreateSelector('','',true,[]);
   sel.Invoke(ocManageTran, 'Increment', [10]);
   sel.Invoke(ocManageTran, 'Increment', [10]);
end;</source>
end;
</source>
 
 


Voir aussi :
Voir aussi :

Dernière version du 1 avril 2014 à 09:49

function Invoke(iCursorMode:TCursorMode; const iMethodName:string; iArgs:Array of variant):Integer;

Cette fonction invoque la méthode iMethodName de la classe du sélecteur pour chaque objet de la sélection.

Result Le nombre d'objet sur lesquels la méthode a été exécuté.
iCursorMode Le mode d'exécution du curseur.
iMethodName Méthode de la classe du sélecteur
iArgs Tableau des arguments à passer à la méthode

Exemple :

Procedure WFClasseA.Populate(ls:TStringList);
begin
  ls.Add(unCode);
end

procedure TestSelector.TestInvoke;
var sel:TSelector; S,SS:string; stag:string; ls:TStringList;
begin
  sel := WFClasseA.CreateSelector('','',true,[]);

  ls := TStringList.Create;
  sel.Invoke(ocSelect, 'Populate', [ls]);

  S := ''; stag := '';
  foreach SS in  ls do
   begin
     S := S+stag+SS;
     stag := ',';
   end;
  ShowMessage(S);
end;
Tip : Dans cet exemple la transaction est géré par la sélection.
Procedure WFClasseA.Increment(aValue:Integer);
begin
  unEntier := unEntier+aValue;
end

procedure TestSelector.TestInvoke;
var sel:TSelector; 
begin
  sel := WFClasseA.CreateSelector('','',true,[]);
  sel.Invoke(ocManageTran, 'Increment', [10]);
end;


Voir aussi :

Selecteur (tech)Développement DSM