AnnualCounter

Lecture et incrémentation d'un compteur annuel

Syntaxe

function AnnualCounter(counterName: String; increment: Integer = 1): Integer
counterName: nom du compteur annuel
increment: augmentation du compteur après l'appel

Remarques

La fonction renvoie la valeur courante du compteur puis l'incrémente de la valeur de increment (par défaut : 1).

Si le compteur n'existe pas, il sera automatiquement créé et renverra la valeur 0.

Un compteur annuel revient automatiquement à zéro au premier appel après minuit le premier jour de l'année.

Pour garantir l'unicité des valeurs de compteur, elles sont attribuées par la base de données.
Ainsi, la lecture d'un compteur fait des requêtes, ce qui peut prendre du temps.
Quand on doit prendre plusieurs valeurs d'un même compteur, il est recommandé de les prendre "en masse" et d'utiliser le paramètre increment pour décaler d'autant la valeur du compteur.

Exemples

// Exemple de création de 10 numéros de lot
// en appelant une seule fois le compteur
var artGPAOID:='AB123';
var nbLots:=10;

// Le numéro de lot contient l'année suivie d'un compteur annuel
var numLot:=AnnualCounter('NUM LOT', nbLots);
for var i:=1 to nbLots do begin
   var gpaoidLot:=FormatDateTime('yyyy', Date)+FormatInteger('%.5d', numLot);
   CreateLot(gpaoidLot, artGPAOID);
   Inc(numLot);
end;

Classification

QuBES