Valeur système IBM i (AS/400) · Date et heure
QDAY
Jour du mois de la date système
Contient le jour de la date système et permet de le modifier seul, sans toucher au mois, à l'année ni à l'heure.
À quoi elle sert
QDAY est une des composantes de la date système, avec QMONTH, QYEAR et QCENTURY. Elle sert aux programmes qui ont besoin du seul jour sans analyser une date complète.
La valeur est sur trois caractères et la plage documentée va de 1 à 366 : au-delà de 31, il s'agit d'un jour de l'année (format julien). IBM conseille QDATETIME dès qu'on lit ou règle la date et l'heure ensemble.
Les valeurs possibles
| Valeur | Signification |
|---|---|
01-31 | Jour du mois. |
001-366 | Jour de l'année, jusqu'à 366 ; la documentation donne la plage globale 1-366 sans détailler le format julien. |
Prise en compte : Immédiate. Le droit spécial *ALLOBJ est nécessaire.
La valeur recommandée
Ne la modifiez pas isolément en production : passez par QDATETIME ou, mieux, par l'ajustement d'heure, qui garantit la cohérence de l'ensemble de l'horloge.
La changer
CHGSYSVAL SYSVAL(QDAY) VALUE('15')
Pour lire la valeur actuelle et celle de la livraison, en SQL :
SELECT SYSTEM_VALUE_NAME, SYSTEM_VALUE, SHIPPED_DEFAULT_VALUE
FROM QSYS2.SYSTEM_VALUE_INFO
WHERE SYSTEM_VALUE_NAME = 'QDAY'
Le piège
Régler le jour sans régler le mois peut produire une date voisine mais fausse. La date change d'elle-même à minuit : une correction ratée un soir se paie le lendemain dans tous les horodatages.