version 5
Date du jour {(*)} Date
| Paramètre | Type | Description | |
| * | Retourne la date du jour du serveur | ||
| Résultat | Date | Date du jour |
Description
Date du jour retourne la date courante telle que définie dans l'horloge système de la machine.
4D Server : Si vous passez le paramètre astérisque (*) lors d'une exécution sur un poste 4D Client , la fonction retourne la date du jour telle que définie dans l'horloge du poste serveur.
Exemples
(1) L'exemple suivant fait apparaître une boîte de dialogue d'alerte affichant la date du jour :
ALERTE("Nous sommes le " + Chaine(Date du jour) + ".")
(2) Vous développez une application pour le marché international. Vous souhaitez savoir si la version de 4D avec laquelle votre application est exécutée fonctionne avec des dates formatées en MM/JJ/AAAA (version US) ou JJ/MM/AAAA (version française). Cette information est nécessaire pour vous permettre, par exemple, de personnaliser correctement les zones de saisie.
La méthode projet suivante vous permet de traiter cette question :
` Méthode projet (fonction) Format date système
` Format date système -> Chaine
` Format date système -> Format de données 4D par défaut
C_ALPHA(31;$0;$vsDate;$vsMJA;$vsMois;$vsJour;$vsAnnée)
C_ENTIER LONG($1;$vlPos)
C_DATE($vdDate)
` Récupérer une date dans laquelle les valeurs de mois, de jour et d'année sont toutes différentes
$vdDate:=Date du jour
Repeter
$vsMois:=Chaine(Mois de($vdDate))
$vsJour:=Chaine(Jour de($vdDate))
$vsAnnée:=Chaine(Annee de($vdDate)%100)
Si (($vsMois=$vsJour) | ($vsMois=$vsAnnée) | ($vsJour=$vsAnnée))
OK:=0
$vdDate:=$vdDate+1
Sinon
OK:=1
Fin de si
Jusque (OK=1)
$0:="" ` Initialisation du résultat de la fonction
$vsDate:=Chaine($vdDate)
$vlPos:=Position("/";$vsDate) ` Trouver le premier séparateur / dans la chaîne ../../..
$vsMJA:=Sous chaine($vsDate;1;$vlPos-1) ` Extraire les premiers chiffres de la date
$vsDate:=Sous chaine($vsDate;$vlPos+1) ` Eliminer les premiers chiffres et le premier séparateur /
Au cas ou
: ($vsMJA=$vsMois) ` Les chiffres expriment le mois
$0:="MM"
: ($vsMJA=$vsJour) ` Les chiffres expriment le jour
$0:="JJ"
: ($vsMJA=$vsAnnée) ` Les chiffres expriment l'année
$0:="AAAA"
Fin de cas
$0:=$0+"/" ` Commencer à construire le résultat de la fonction
$vlPos:=Position("/";$vsDate) ` Trouver le deuxième séparateur dans la chaîne ../..
$vsMJA:=Sous chaine($vsDate;1;$vlPos-1) ` Extraire les chiffres suivants de la date
$vsDate:=Sous chaine($vsDate;$vlPos+1) ` Réduire la chaîne aux derniers chiffres de la date
Au cas ou
: ($vsMJA=$vsMois) ` Les chiffres expriment le mois
$0:=$0+"MM"
: ($vsMJA=$vsJour) ` Les chiffres expriment le jour
$0:=$0+"JJ"
: ($vsMJA=$vsAnnée) ` Les chiffres expriment l'année
$0:=$0+"AAAA"
Fin de cas
$0:=$0+"/" ` Poursuivre la construction du résultat de la fonction
Au cas ou
: ($vsDate=$vsMois) ` Les chiffres expriment le mois
$0:=$0+"MM"
: ($vsDate=$vsJour) ` Les chiffres expriment le jour
$0:=$0+"DD"
: ($vsDate=$vsAnnée) ` Les chiffres expriment l'année
$0:=$0+"AAAA"
Fin de cas
` A ce moment, $0 vaut soit MM/JJ/AAAA soit JJ/MM/AAAA, ou encore...
Référence
Annee de, Jour de, Mois de, Opérateurs sur les dates.