« BeginLongTran (CM) » : différence entre les versions

De Wiki1000
(Nouvelle page : <source lang='delphi'>procedure BeginTranLongTran(iBatchSize:Integer; iParam:Variant);</source> Démarre une transaction longue. {|class="wikitable" |- |iBatchSize |Taille de lot. ...)
 
Aucun résumé des modifications
 
(Une version intermédiaire par le même utilisateur non affichée)
Ligne 6 : Ligne 6 :
|-
|-
|iBatchSize
|iBatchSize
|Taille de lot.
|Taille de lot minimum.
Zéro pour utiliser la valeur par défaut.
|-
|-
|iParam
|iParam
Ligne 14 : Ligne 15 :
*Un chaîne nom de classe.
*Un chaîne nom de classe.
|}
|}
{{tip|iBatchSize indique la taille de lot minimum, si BatchLongTran est appelé alors que le nombre d'instance en transaction est inférieur à iBatchSize alors BatchLongTran est ignoré}}
{{tip|Positionnez iBatchSize à zéro pour utiliser la taille de batch par défaut déterminée par le Framework.}}


Exemple
Exemple
Ligne 24 : Ligne 28 :
     begin
     begin
       doProcessItem(idx);
       doProcessItem(idx);
       ClassManager.BatchLongTran;
       if idx mod 100 =0 then ClassManager.BatchLongTran;
     end;
     end;
     ClassManager.CommitLongTran;
     ClassManager.CommitLongTran;
Ligne 34 : Ligne 38 :
</source>
</source>


Voir aussi
Voir aussi :
 
* [[BatchLongTran (CM)|BatchLongTran]]
* [[CommitLongTran (CM)|CommitLongTran]]
* [[RollBackLongTran (CM)|RollBackLongTran]]


{{Footer|Gestion des transactions (CM)}}
{{Footer|Gestion des transactions (CM)}}
[[category:ClassManager]]
[[category:ClassManager]]
[[category:CMT]]
[[category:CMT]]

Dernière version du 15 mars 2013 à 13:42

<source lang='delphi'>procedure BeginTranLongTran(iBatchSize:Integer; iParam:Variant);</source>

Démarre une transaction longue.

iBatchSize Taille de lot minimum.

Zéro pour utiliser la valeur par défaut.

iParam Paramètre indiquant une classe métier.

Ce paramètre peut être :

  • Une instance d'objet, la classe de l'instance est utilisée.
  • Un chaîne nom de classe.
Tip : iBatchSize indique la taille de lot minimum, si BatchLongTran est appelé alors que le nombre d'instance en transaction est inférieur à iBatchSize alors BatchLongTran est ignoré
Tip : Positionnez iBatchSize à zéro pour utiliser la taille de batch par défaut déterminée par le Framework.

Exemple <source lang='delphi'> var idx:Integer; begin

 ClassManager.BeginLonTran(100,'MaClass');
 try
   for idx:=0 to VeryBigInt do
    begin
      doProcessItem(idx);
      if idx mod 100 =0 then ClassManager.BatchLongTran;
    end;
   ClassManager.CommitLongTran;
 except
   ClassManager.RollBackLongTran;
   raise;
 end; 

end; </source>

Voir aussi :

{{#if:Gestion des transactions (CM)|

{{#if:Gestion des transactions (CM)|— Gestion des transactions (CM) |}} — Développement DSM

|

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

}}