SealRange (TSealOpeLogRegClass)
De Wiki1000
(Différences entre les versions)
(Une révision intermédiaire par un utilisateur est masquée) | |||
Ligne 1 : | Ligne 1 : | ||
<source lang='delphi'>class function SealRange(iFirstSequenceNumber:Integer; iLastSequenceNumber:Integer; var aReason:string):Integer;</source> | <source lang='delphi'>class function SealRange(iFirstSequenceNumber:Integer; iLastSequenceNumber:Integer; var aReason:string):Integer;</source> | ||
− | |||
− | |||
{|class="wikitable" | {|class="wikitable" | ||
Ligne 20 : | Ligne 18 : | ||
|Information sur l'erreur | |Information sur l'erreur | ||
|} | |} | ||
+ | |||
+ | Cette méthode scelle les objets dont le numéro de séquence est compris entre iFirstSequenceNumber (inclu) et iLastSequenceNumber (exclu) et crée un enregistrement de journal. | ||
+ | |||
+ | * Crée un enregistrement de journal | ||
+ | * Gère une transaction longue si aucune transaction longue n'est ouverte. | ||
+ | |||
+ | Le premier numéro de séquence (iFirstSequenceNumber) doit être le prochain numéro de séquence du dernier enregistrement du journal. | ||
+ | |||
+ | Exemple : | ||
+ | |||
+ | <source lang="delphi"> | ||
+ | function SealInstancesByRange(iFirstSequence:Integer; iLastSequence:Integer; var aReason:string):Integer; | ||
+ | var aSequenceNumber:Integer; AStr:string; | ||
+ | begin | ||
+ | ClassManager.BeginLongTran(0,'ClassSealed'); | ||
+ | try | ||
+ | Result := ClassSealOpeLog.SealRange(iFirstSequence,iLastSequence,AStr); | ||
+ | aReason := AStr; | ||
+ | if Result=0 then | ||
+ | begin | ||
+ | ClassManager.RollBackLongTran; | ||
+ | Exit; | ||
+ | end; | ||
+ | ClassManager.CommitLongTran; | ||
+ | except | ||
+ | Result := 0; | ||
+ | ClassManager.RollBackLongTran; | ||
+ | end; | ||
+ | end; | ||
+ | </source> | ||
Version actuelle en date du 13 avril 2017 à 09:10
class function SealRange(iFirstSequenceNumber:Integer; iLastSequenceNumber:Integer; var aReason:string):Integer;
Paramètre | Usage |
---|---|
Result | Nombre d'objet scellé, 0 indique une erreur |
iFirstSequenceNumber | Premier numéro de séquence. |
iLastSequenceNumber | Dernier numéro de séquence. |
aReason | Information sur l'erreur |
Cette méthode scelle les objets dont le numéro de séquence est compris entre iFirstSequenceNumber (inclu) et iLastSequenceNumber (exclu) et crée un enregistrement de journal.
- Crée un enregistrement de journal
- Gère une transaction longue si aucune transaction longue n'est ouverte.
Le premier numéro de séquence (iFirstSequenceNumber) doit être le prochain numéro de séquence du dernier enregistrement du journal.
Exemple :
function SealInstancesByRange(iFirstSequence:Integer; iLastSequence:Integer; var aReason:string):Integer; var aSequenceNumber:Integer; AStr:string; begin ClassManager.BeginLongTran(0,'ClassSealed'); try Result := ClassSealOpeLog.SealRange(iFirstSequence,iLastSequence,AStr); aReason := AStr; if Result=0 then begin ClassManager.RollBackLongTran; Exit; end; ClassManager.CommitLongTran; except Result := 0; ClassManager.RollBackLongTran; end; end;
Voir aussi
— Classe_journal de scellement_(stereotype) — Développement DSM —