Le temps à l’intérieur des objets… (et partout ailleurs)

Traduit automatiquement de Deepl

Les objets sont de nouveau à l’honneur et continuent de démontrer leur utilité pour faciliter votre vie de développeur.

L’utilisation des valeurs de temps (ou de durée) à l’intérieur des objets est désormais plus fluide et plus intuitive. À partir de 4D v17, les temps à l’intérieur des objets sont définis en secondeset non en millisecondes!

Ceci n’était pas visible auparavant pour les utilisateurs car OB SET et OB Get devaient être utilisés avec la constante is time, les conversions étaient donc effectuées automatiquement.

OB SET ($myObject; "myTime" ;$time;is time)
$time :=OB Get ($myObject; "myTime" ;is time)

Maintenant, cette constante n’est plus obligatoire. Le code ci-dessus peut être raccourci, mais plus important encore, la notation objet peut également être utilisée !

$myObject.myTime:=$time
$time :=$myObject.myTime

LE TEMPS DANS D’AUTRES CONTEXTES

INTERROGATION DES CHAMPS D’UN OBJET

  • Désormais, lors de l’interrogation d’un champ d’objet avec la commande QUERY BY ATTRIBUTEles comparaisons entre les valeurs numériques et temporelles sont effectuées en secondes et non plus en millisecondes.

Voici deux exemples qui produisent le même résultat :

QUERY BY ATTRIBUTE([Table_1];[Table_1]z;"time";"=";?12:00:00?)

QUERY BY ATTRIBUTE([Table_1];[Table_1]z;"time";"=";12*60*60)

ZONE WEB

  • Lors de l’appel de JavaScript dans une zone web, la conversion vers et depuis une heure est effectuée en secondes au lieu de millisecondes lors de l’utilisation de :
    • WA évaluer le JavaScript
    • WA EXÉCUTER LA FONCTION JAVASCRIPT
    • pont 4d

LA COMPATIBILITÉ PEUT ÊTRE MAINTENUE FACILEMENT

Si nécessaire pour les bases de données existantes, ce paramètre par défaut peut être modifié avec la commande SET DATABASE PARAMETER et le sélecteur Times inside objects.

Il y a deux valeurs disponibles pour ce option:

  • Times in milliseconds
  • Times in seconds

Ce paramètre de base de données est appliqué à la base de données elle-même, et pas seulement au processus en cours. Afin de maintenir la compatibilité ou d’aider le processus de migration, cette commande peut être appelée pendant le processus de migration. On Startup Database Method.

Roland Lannuzel
- Product Owner & 4D Expert - Après avoir étudié l'électronique, Roland s'est lancé dans l'informatique industrielle en tant que développeur et consultant, créant des solutions pour les clients avec une variété de bases de données et de technologies. À la fin des années 80, il est tombé amoureux de 4D et l'a utilisé pour écrire des applications commerciales, notamment des systèmes de comptabilité, de facturation et de messagerie électronique. Il a rejoint la société en 1997 et a contribué à la conception de spécifications, d'outils de test et de démonstrations, ainsi qu'à la formation et à la présentation de la communauté 4D lors de nombreuses conférences. Il continue à façonner activement l'avenir de 4D en définissant de nouvelles fonctionnalités et des outils de développement de bases de données.