« SealSelector (TSealOpeLogRegClass) » : différence entre les versions

De Wiki1000
Aucun résumé des modifications
 
(2 versions intermédiaires par le même utilisateur non affichées)
Ligne 1 : Ligne 1 :
<source lang='delphi'>class function SealSelector(Sel:TSelector; var aReason:string):Integer;</source>
<source lang='delphi'>class function SealSelector(Sel:TSelector; var aReason:string):Integer;</source>
Cette méthode scelle les objets référencés par le sélecteur et crée un enregistrement de journal.


{|class="wikitable"
{|class="wikitable"
Ligne 18 : Ligne 16 :
|}
|}


Cette méthode :
* Vérrouille la classe journal
* Crée un enregistrement de journal
* Gère une transaction longue si aucune transaction longue n'est ouverte.
Les objets du sélecteur doivent être numérotés suivant l'ordre de la séquence de scellement, le numéro de séquence du premier objet doit être le prochain numéro de séquence du dernier enregistrement du journal.
Exemple:
<source lang="Delphi">
function SealInstancesUsingSelector(iFirstSequence:Integer; iCount:Integer; var aReason:string):Integer;
var sel:TSelector; aSequenceNumber:Integer; AStr:string;
begin
  ClassManager.BeginLongTran(0,'ClassSealed');
  try
  sel := ClassSealed.CreateSelector('(sequenceNumber>=%1)and(sequenceNumber<%2)','sequenceNumber',True,[iFirstSequence,iFirstSequence+iCount]);
  Result := ClassSealOpeLog.SealSelector(sel,AStr);
  aReason := AStr;
  if Result=0 then
    begin
      ClassManager.RollBackLongTran;
      Exit;
    end;
  ClassManager.CommitLongTran;
  except
  Result := 0;
  ClassManager.RollBackLongTran;
end;
end;
</source>


Voir aussi
Voir aussi


*[[Classe_protégée_(stereotype)|Classe protégée]]
*[[Classe_scellée_(stereotype)|Classe scellée]]


{{Footer|Classe_journal de scellement_(stereotype)}}
{{Footer|Classe_journal de scellement_(stereotype)}}
[[Category:Stéréotype classe journal de scellement]]
[[Category:Stéréotype classe journal de scellement]]

Dernière version du 13 avril 2017 à 08:03

<source lang='delphi'>class function SealSelector(Sel:TSelector; var aReason:string):Integer;</source>

Paramètre Usage
Result Nombre d'objet scellé, 0 indique une erreur
Sel sélecteur sur la classe scellée.
aReason Information sur l'erreur

Cette méthode :

  • Vérrouille la classe journal
  • Crée un enregistrement de journal
  • Gère une transaction longue si aucune transaction longue n'est ouverte.

Les objets du sélecteur doivent être numérotés suivant l'ordre de la séquence de scellement, le numéro de séquence du premier objet doit être le prochain numéro de séquence du dernier enregistrement du journal.

Exemple: <source lang="Delphi"> function SealInstancesUsingSelector(iFirstSequence:Integer; iCount:Integer; var aReason:string):Integer; var sel:TSelector; aSequenceNumber:Integer; AStr:string; begin

 ClassManager.BeginLongTran(0,'ClassSealed');
 try
  sel := ClassSealed.CreateSelector('(sequenceNumber>=%1)and(sequenceNumber<%2)','sequenceNumber',True,[iFirstSequence,iFirstSequence+iCount]);
  Result := ClassSealOpeLog.SealSelector(sel,AStr);
 aReason := AStr;
  if Result=0 then
   begin
     ClassManager.RollBackLongTran;
     Exit;
   end;
  ClassManager.CommitLongTran;
 except
 Result := 0;
 ClassManager.RollBackLongTran;
end;

end; </source>

Voir aussi

{{#if:Classe_journal de scellement_(stereotype)|

{{#if:Classe_journal de scellement_(stereotype)|— Classe_journal de scellement_(stereotype) |}} — Développement DSM

|

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

}}