pictogram Auteur: Patrick Biker
Date: 18 mars 2006
Maj : 21 Mars 2015

Des exemples d'utilisation des fonctions du WLangage

Rien de tel qu'un exemple pour comprendre une fonction de WLangage. Dans cette section, vous trouverez des exemples simples.

Des exemples évolués, où la fonction est utilisée en contexte, sont également disponible sur ce site.

Aller à la page des exemples évolués

ChaineVersDate (en anglais StringToDate)

Res = ChaîneVersDate ("25/12/2001"// Res = "20011225"
Res = ChaîneVersDate ("25-12-2001")  // Res = "20011225"
ChaîneVersDate ("")                  // Renvoie ""
Res = ChaîneVersDate ("12-25-2001", "MM-JJ-AAAA")  // Res = "20011225"
Res = ChaîneVersDate ("12-25-01", "MM-JJ-AA")      // Res = "20011225"
Res = ChaîneVersDate ("12-25-2001", "MM-JJ-AA")    // Res = "20201225"
Res = ChaîneVersDate ("12-25-01","MM-JJ-AAA")      // Res = ""


Début de la page

ChaineVersDuree (en anglais StringToDuration)

// pour remplir une durée à partir du résultat de DateHeureDifférence
sDiff est une chaîne = DateHeureDifference(sDebut,sFin)
// on convertit la différence dans une variable de type durée
dDurée est une Durée = ChaineVersDurée (sDiff, duréeCentième )


Début de la page

DateDifference (en anglais DateDifference)

// Affiche le nombre de jours écoulés depuis le 01/01/1998
Info(NumériqueVersChaîne( DateDifférence ("19980101", ...
        DateSys())) + " jours écoulés")


Début de la page

DateDuJour (en anglais Today)

Res = DateDuJour ()   // Res = "20011225"
Res = DateVersChaîne( DateDuJour ()) // Res = "25/12/2001"
Année = Gauche( DateDuJour (), 4)
// Année retourne l'année en cours (par exemple 2001)


Début de la page

DateDuJour (en anglais Today)

// Change la date système et affiche la nouvelle date
DateDuJour("20020101")
Info( DateDuJour ())


Début de la page

DateHeureDifference (en anglais DateTimeDifference)

// Temps écoulé depuis le 01/01/1998 à 12h15
Diff est une chaîne
Diff = DateHeureDifférence ("199801011215", DateSys()+HeureSys())
// Affichage temps écoulé
Info("Temps écoulé : " + RC + ...
    Gauche(Diff, 8) + "jours" + RC + ...
    Milieu(Diff, 9, 2) + "heures" + RC + ...
    Milieu(Diff, 11, 2) + "minutes" + RC + ...
    Milieu(Diff, 13, 2) + "secondes" + RC + ...
    Milieu(Diff, 15, 2) + "centièmes de seconde")


Début de la page

DateHeureDifference (en anglais DateTimeDifference)

// Pour remplir une durée à partir du résultat de DateHeureDifférence
Diff est une chaîne = DateHeureDifference ("199801011215", DateSys()+HeureSys())
// convertir la différence dans une variable de type durée
Durée est une Durée = ChaineVersDurée(Diff, duréeCentième )
// Affichage temps écoulé
Info("Temps écoulé : " + Durée..Jour + "jours" + RC + …
    Durée..Heure + "heures" + RC + ...
    Durée..Minute + "minutes" + RC + ...
    Durée..Seconde + "secondes" + RC + ...
    Durée..Milliseconde + "millièmes de seconde")


Début de la page

DateHeureParDefaut (en anglais DateTimeByDefault)

// Initialisation de toutes les variables Date, Heure,
// et DateHeure au 1er Janvier 2000 à 0H00
DateHeureParDéfaut ("20000101","0000")


Début de la page

DateSys (en anglais DateSys)

Res = DateSys ()   // Res = "20011225"
Res = DateVersChaîne( DateSys ()) // Res = "25/12/2001"
Année = Gauche( DateSys (), 4)
// Année retourne l'année en cours (par exemple 2001)


Début de la page

DateSys (en anglais DateSys)

// Change la date système et affiche la nouvelle date
DateSys("20020101")
Info( DateSys ())


Début de la page

DateValide (en anglais DateValid)

Res = DateValide ("20011225")  // Res retourne Vrai
Res = DateValide ("20012512")  // Res retourne Faux
Res = DateValide ("2001")      // Res retourne Faux
Res = DateValide ("14821225")  // Res retourne Vrai


Début de la page

DateVersChaine (en anglais DateToString)

Res = DateVersChaîne ("20011225")   // Res = "25/12/2001"
Res = DateVersChaîne (EntierVersDate(73773)) // Res = "25/12/2001"
DateVersChaîne ("")      // Retourne ""
Res = DateVersChaîne ("20011225", "MM-JJ-AAAA") // Res = "12-25-2001"
Res = DateVersChaîne ("20011225", ...
     "Le numéro du jour JJ du mois n° MM de l'année AAAA")
Res = DateVersChaine ("20031202","JJJ JJ MMM AAAA") //Res = "Mar. 02 Déc. 2003"
Res = DateVersChaine ("20031202","JJJJ JJ MMMM AAAA") //Res = "Mardi 02 Décembre 2003"


Début de la page

DateVersEntier (en anglais DateToInteger)

// Nombre de jours écoulés entre le 01/01/1800 et le 25/12/2001
DateVersEntier
("20011225")   // Retourne 73773

// Nombre de jours écoulés entre le 01/01/1800 et le 03/01/1800
DateVersEntier ("18000103")   // Retourne 3


Début de la page

DateVersEntier (en anglais DateToInteger)

// Nombre de jours écoulés entre le 01/01/2004 et le 25/01/2004
DateVersEntier
"20040125" Vrai // Retourne 25


Début de la page

DateVersJour (en anglais DateToDay)

DateVersJour ("20011225") // Retourne 2
SI DateVersJour (DateSys()) > 5 ALORS
    Info("C'est le week-end")
FIN


Début de la page

DateVersJourEnLettre (en anglais DateToDayInAlpha)

DateVersJourEnLettre ("20011225") // Renvoie "Mardi"
MaDate est une date = "20011225"
DateVersJourEnLettre(MaDate)      // Renvoie "Mardi"


Début de la page

DateVersMoisEnLettre (en anglais DateToMonthInAlpha)

DateVersMoisEnLettre ("20011225") // Renvoie "Décembre"


Début de la page

DateVersNumeroDeSemaine (en anglais DateToWeekNumber)

DateVersNuméroDeSemaine ("20011225") // Retourne 52

MaDate est une date =Datesys()
DateVersNuméroDeSemaine(MaDate)


Début de la page

DureeVersChaine (en anglais DurationToString)

// Heures de début et de fin
Debut est une heure = "125324"
Fin est une heure = "140852"
// Calcul de la durée
Duree est une durée = Fin - Debut
// Formatage de la durée pour obtenir un résultat au même format
// que DateHeureDifférence
Res = DureeVersChaîne (Duree, duréeCentième ) // Res = "001152800"
// Formatage personnalisé
Res = DureeVersChaîne (Duree,"J-HH:MM")     // Res = "0-01:15"


Début de la page

EntierVersDate (en anglais IntegerToDate)

EntierVersDate (73773)       // Retourne "20011225"
EntierVersDate (73773, "A")  // Retourne "2001"
EntierVersDate (73773, "M")  // Retourne "12"
EntierVersDate (73773, "J")  // Retourne "25"

// Calcul de la date du lendemain
Demain = EntierVersDate (DateVersEntier(DateSys())+1)


Début de la page

EntierVersHeure (en anglais IntegerToTime)

EntierVersHeure (0)   // Retourne "00000000"
// Attente de 4 secondes
Départ est un entier
t est un entier
Départ = HeureVersEntier(HeureSys())
BOUCLE
  t = HeureVersEntier(HeureSys()) - Départ
  // Champ_Heure affiche le temps écoulé entre 0 et 4s
  Champ_Heure = EntierVersHeure (t)
  SI t > 400 ALORS SORTIR
FIN


Début de la page

EntierVersJour (en anglais IntegerToDay)

EntierVersJour (DateVersEntier("20011225")) // Retourne 2
EntierVersJour (73773)                      // Retourne 2

SI EntierVersJour (DateVersEntier(DateSys())) > 5 ALORS
    Info("C'est le week-end")
FIN


Début de la page

EntierVersJourEnLettre (en anglais IntegerToDayInAlpha)

EntierVersJourEnLettre (DateVersEntier("20011225")) // Renvoie "Mardi"
EntierVersJourEnLettre (73773)      // Renvoie "Mardi"


Début de la page

EntierVersMoisEnLettre (en anglais IntegerToMonthInAlpha)

EntierVersMoisEnLettre (DateVersEntier("20011225")) // Renvoie "Décembre"


Début de la page

EntierVersNumeroDeSemaine (en anglais IntegerToWeekNumber)

EntierVersNuméroDeSemaine (DateVersEntier("20011225")) // Retourne 52


Début de la page

HeureDifference (en anglais TimeDifference)

// Affiche le temps écoulé depuis 12h15
Diff est un entier = HeureDifférence ("1215", HeureSys())
Signe_temps est une chaîne
Résultat est une chaîne = EntierVersHeure(Abs(Diff))
SI Diff < 0 ALORS Signe_temps = "-"
Info("Temps écoulé : " + Signe_Temps + Gauche(Résultat, 2) + " heures "+ ...
     Milieu(Résultat, 3, 2) + " minutes "+ ...
     Milieu(Résultat, 5, 2) + " secondes "+ ...
     Milieu(Résultat, 7, 2) + " centièmes de seconde")


Début de la page

HeureSys (en anglais TimeSys)

Res HeureSys ()        // Res = "15332105"
Res = HeureVersChaîne ( HeureSys ())    // Res = "15:33:21:05"
HeureAct = Gauche( HeureSys (), 4)    // HeureAct = "1533"


Début de la page

HeureSys (en anglais TimeSys)

// Afficher l'heure actuelle dans le champ HeureActuelle

-- Code d'initialisation d'une fenêtre / page
// Appeler toutes les secondes la procédure "Horloge"
TimerSys("Horloge", 100, 1)

-- Procédure Horloge
Procédure Horloge()
HeureActuelle = HeureVersChaîne( HeureSys ())


Début de la page

HeureSys (en anglais TimeSys)

// Change l'heure système et affiche la nouvelle heure
HeureSys ("17280000")
Info( HeureSys ())


Début de la page

HeureValide (en anglais TimeValid)

HeureValide ("23122222"// Retourne Vrai
HeureValide ("2312")      // Retourne Vrai
HeureValide ("23")        // Retourne Vrai
HeureValide ("24")        // Retourne Faux
HeureValide ("23137099"// Retourne Faux


Début de la page

HeureVersChaine (en anglais TimeToString)

// Formater l'heure spécifiée selon le format "HH:MM:SS:CC"
HeureVersChaîne
("12005956")   // Renvoie "12:00:59:56"
Gauche( HeureVersChaîne ("12005956"), 5) // Renvoie "12:00"


Début de la page

HeureVersChaine (en anglais TimeToString)

// Formater l'heure spécifiée selon le format "Il est HH h MM"
HeureVersChaîne
(Maintenant(), "Il est : HH h MM") // Renvoie "Il est : 12 h 32"


Début de la page

HeureVersEntier (en anglais TimeToInteger)

// Attente de 4 secondes
Départ, t sont des entiers
Départ = HeureVersEntier (HeureSys())
BOUCLE
    t = HeureVersEntier (HeureSys()) - Départ
    // Affiche le temps écoulé entre 0 et 4s
    Champ_Heure = EntierVersHeure(t)
    // Affiche le temps écoulé
   
SI t > 400 ALORS SORTIR
FIN


Début de la page

Maintenant (en anglais Now)

Res Maintenant ()        // Res = "15332105"
Res = HeureVersChaîne ( Maintenant ())    // Res = "15:33:21:05"
HeureAct = Gauche( Maintenant (), 4)    // HeureAct = "1533"


Début de la page

Maintenant (en anglais Now)

// Afficher l'heure actuelle dans le champ HeureActuelle

-- Code d'initialisation d'une fenêtre / page
// Appeler toutes les secondes la procédure "Horloge"
TimerSys("Horloge", 100, 1)

-- Procédure Horloge
Procédure Horloge()
HeureActuelle = HeureVersChaîne( Maintenant ())


Début de la page

Maintenant (en anglais Now)

// Change l'heure système et affiche la nouvelle heure
Maintenant ("17280000")
Info( Maintenant ())


Début de la page

NumeroDeSemaine (en anglais WeekNumber)

NuméroDeSemaine ("20010818")  // Renvoie 33
NuméroDeSemaine ("20010210")   // Renvoie 6
NuméroDeSemaine ("20011225")  // Renvoie 52


Début de la page