Heures dans les objets / petit bug de conversion v15 -> v17/18

Bonjour

En passant une base de v15 à v18, je suis tombé sur un petit bug de conversion

En v15 : OB FIXER($vo;“heure”;?09:00:00?)
j’obtiens {“heure”:32400000}// heure en millisecondes

En v18 sur la même base juste convertie, j’obtiens {“heure”:32400}// heure en secondes

Du coup, grosse pagaille dans les échanges de données passant par des objets et ma gestion de planning.

En fait il y a un nouveau paramètre FIXER PARAMÈTRE BASE (Heures dans les objets;Heures en millisecondes) apparu en v17 (et mentionné dans la doc de migration v17: https://download.4d.com/Documents/Products_Documentation/LastVersions/Line_17/FE/PDF_Format/4D_v17_Conversion.pdf #RTFM )

Mais à la conversion de la structure il n’est pas positionné par défaut à heure en milliseconde, il faut penser à le faire par programmation.

Comme je voulais l’écrire dans le code de toutes mes bases avant même la conversion, j’ai mis ce bout de code partout :

<code 4D>
Si (Version application>=“17@”)
$vl_selecteur:=109 //Heures dans les objets
$vl_value:=1 //Heures en millisecondes
FIXER PARAMÈTRE BASE($vl_selecteur;$vl_value)
Fin de si
</code 4D>