4D v16.3

Date du jour

Accueil

 
4D v16.3
Date du jour

Date du jour 


 

Date du jour {( * )} -> Résultat 
Paramètre Type   Description
Opérateur in Retourne la date du jour du serveur
Résultat  Date in Date du jour

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.

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)+".")

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...



Voir aussi  

Annee de
Jour de
Mois de
Opérateurs sur les dates

 
PROPRIÉTÉS 

Produit : 4D
Thème : Dates et heures
Numéro : 33
Nom intl. : Current date

Commande(s) éligible(s) à l'exécution dans un process préemptifComportement différent en mode distant

 
HISTORIQUE 

Créé : < 4D v6

 
UTILISATION DE L'ARTICLE

4D - Langage ( 4D v16)
4D - Langage ( 4D v16.1)
4D - Langage ( 4D v16.2)
4D - Langage ( 4D v16.3)