Sage X3 : Comment obtenir la date de fin d’un mois en 4GL
août 02, 2025
📆 Sage X3 : Fonction 4GL pour obtenir la date de fin d’un mois
Dans Sage X3, il peut être utile de déterminer la date de fin d’un mois à des fins de traitement, de clôture ou de génération de périodes. Voici une fonction simple écrite en langage 4GL (L4G) qui permet de le faire :
💡 Fonction personnalisée F_ENDOFMONTH
Funprog F_ENDOFMONTH(PMONTH,PYEAR) Value Integer PMONTH Value Integer PYEAR Local Date YD PMONTH += 1 If PMONTH > 12 Then PMONTH = 1 PYEAR += 1 Endif YD = gdat$(1,PMONTH,PYEAR) - 1 End YD
🧪 Exemple d’appel
Infbox num$(func F_ENDOFMONTH(11,2015))
Ce test renvoie le dernier jour de novembre 2015, c’est-à-dire 20151130
selon le format de la fonction num$()
.
🔍 Explication du fonctionnement
PMONTH += 1
: On passe au mois suivantSi PMONTH > 12
: On passe à janvier de l’année suivantegdat$(1, PMONTH, PYEAR)
: Donne le 1er jour du mois suivant-1
: On revient au dernier jour du mois courant
🛠 Cas d’usage
Cette fonction peut être utilisée dans :
- La génération automatique de périodes comptables
- Les contrôles sur les dates de documents
- La planification de clôtures mensuelles
🔗 Partage
Tu peux copier ce code et le réutiliser dans tes propres traitements Sage X3.
Tu as aimé cette astuce ? Partage le blog avec tes collègues ou sur LinkedIn !