Gestion des Jetons de Date Paramétrables (Fox4Work)

Vue d’ensemble

Le moteur de substitution de texte de Fox4Work intègre un mécanisme puissant de jetons de date dynamiques. Il permet d’injecter, de formater et d’ajuster automatiquement des dates et heures (locales ou UTC) à l’intérieur de n’importe quel modèle de texte (requêtes API, messages, requêtes SQL, chemins de fichiers, etc.).

La syntaxe générale d’un jeton de date est la suivante :

$JETON$(format, décalage)

Les Jetons de Référence disponibles

Quatre jetons de base peuvent être utilisés, insensibles à la casse :

Jeton Description technique
$DATEACTUEL$ Date et heure actuelles du système (DateTime.Now).
$DATEACTION$ Date et heure de l’action transmise en paramètre (Date_action). Si vide ou non fournie, utilise DateTime.Now par défaut.
$DATEACTION_UTC$ Date d’action convertie en temps universel coordonné (UTC).
$DATEACTUEL_UTC$ Date actuelle convertie en temps universel coordonné (UTC).

Les Décalages Temporels (Offsets)

Il est possible d’appliquer un décalage (positif ou négatif) sur la date de référence en utilisant le format suivant : [nombre][unité].

  • Unités supportées :

    • j : Jours (AddDays)

    • h : Heures (AddHours)

    • m : Minutes (AddMinutes)

  • Exemples d’utilisation du décalage :

    • +1j : Ajoute 1 jour

    • -3j : Retire 3 jours

    • -1h : Retire 1 heure

    • +30m : Ajoute 30 minutes

Les Formats d’Affichage

Le format spécial zoulou (Norme ISO 8601 UTC)

Le format se place toujours en premier argument avant la virgule. Deux approches sont possibles

En écrivant zoulou comme format, la date est automatiquement convertie en UTC et formatée selon la norme standard ISO : yyyy-MM-dd'T'HH:mm:ss'Z'.

  • Exemple : $DATEACTION_UTC$(zoulou, -1h)$

  • Résultat : 2026-10-26T10:30:00Z

Les formats personnalisés .NET standards

Vous pouvez utiliser n’importe quel masque de formatage standard .NET :

  • yyyy-MM-dd –> 2026-10-26 (Format par défaut si le champ format est vide)

  • dd/MM/yyyy –> 26/10/2026

  • dd/MM/yyyy HH:mm:ss –> 26/10/2026 14:30:00

  • dd MMMM yyyy –> 26 octobre 2026

Exemples pratiques

Cas d’usage Modèle avec jeton Résultat généré (Exemple)
Date du jour simple Rapport du $DATEACTUEL$(dd/MM/yyyy) Rapport du 26/10/2026
Date d’action + 3 jours Échéance au $DATEACTION$(yyyy-MM-dd, +3j) Échéance au 2026-10-29
Heure UTC avec recul d’1h Filtre : $DATEACTION_UTC$(zoulou, -1h) Filtre : 2026-10-26T10:00:00Z
Horodatage complet Log_ $DATEACTUEL_UTC$(yyyyMMdd_HHmmss) Log_20261026_120000

Bonnes pratiques pour les Techniciens

Gestion des valeurs nulles : Pour le jeton DATEACTION, si aucune date n’est injectée par le code appelant, le système bascule automatiquement sur la date actuelle (DateTime.Now) pour éviter les erreurs d’exécution.