UpsPls.PeriodeCalendrier

Définition

/***************************************************************/
Type PeriodeCalendrier Defaut Final TailleSegment 8 ConserverObjets
/* Objet : Type des objets correspondant aux periodes des */
/* calendriers. */
/***************************************************************/
/*-------------------------------------------------------------*/
/* Heritage des proprietes d'Objet. */
/*-------------------------------------------------------------*/
Prive : /*-------------------------------------------------------------*/
/* Proprietes propres. */
/*-------------------------------------------------------------*/
Prive : /*-------------------------------------------------------------*/
/* Heritage des methodes d'Objet. */
/*-------------------------------------------------------------*/
Public : Prive : /*-------------------------------------------------------------*/
/* Methodes propres. */
/*-------------------------------------------------------------*/
Public : Prive : Fin Type

Le type PeriodeCalendrier possède un constructeur explicite. Le paramètre TypeDeLaPeriode permet de préciser s'il s'agit d'une période journalière, hebdomadaire, bimensuelle, mensuelle, bimestrielle, semestrielle ou annuelle. Le paramètre DatePremierePlanification permet de définir à partir de quelle date et à quelle heure s'applique la période de répétition du calendrier.

Il est possible de différer l'application de la période en spécifiant une date de première planification qui soit éloignée de plus d'une période de la date courante. Il est également possible de spécifier une date limite de planification au moyen du paramètre DateDArret. A partir de cette date, la période du calendrier est supprimée du calendrier. Si DateDArret est nulle, alors la répétition est sans limite.

Lorsque le jour de planification est arrivé, l'heure effective est celle spécifiée dans la date DatePremierePlanification. Il n'y a qu'un déclenchement ce jour si le paramètre FrequenceDeRepetition vaut zéro. Sinon il y a un déclenchement tous les FrequenceDeRepetition minutes dans ce même jour. Il est également possible de spécifier une heure limite de répétition au moyen du paramètre HeureDArret. A partir de cette heure, la répétition dans la journée est déprogrammée.

Opérateurs

Le type PeriodeCalendrier possède les opérateurs standards suivant :

Exemple

Pour un exemple complet, merci de se référer à Files d'attentes et travaux.

Variable
/******/


FileDAttente
/**********/

Principal
/*******/
Debut
E=10;
MonTravail=P(E)||MaFile;
/* Mise en file de l'appel de 'P' dans la file 'MaFile'. Le travail est 'MonTravail'. */
MonCalendrier=Calendrier("MonCalendrier");
Periode=PeriodeCalendrier(PeriodeJournaliere, Date("1-1-1 8:0:0"));
MonCalendrier.AjouterPeriodeIncluse(Periode);
/* Le calendrier comprend tous les jours de la semaine avec un déclenchement à 8 heures du matin. */
Periode=PeriodeCalendrier(PeriodeHedomadaire, Date("7-8-1999 8:0:0"));
MonCalendrier.AjouterPeriodeExclue(Periode);
/* Le calendrier ne comprend pas les samedis. */
Periode=PeriodeCalendrier(PeriodeHedomadaire, Date("8-8-1999 8:0:0"));
MonCalendrier.AjouterPeriodeExclue(Periode);
/* Le calendrier ne comprend pas les dimanches. */
MonTravail.PlanifierPeriodiquement(MonCalendrier);
/* Le travail est à déclencher selon le calendrier 'MonCalendrier'. */
Fin Principal

Traduction

---------