AXOPEN

OJS : évaluation à chaud d’une variable LISP via la fonction lispeval()

Problème

Comment modifier à chaud la valeur d'une variable LISP (contenue dans un fichier *.ini) ? Une fonction OJS très pratique permet de modifier la valeur d'une variable LISP sans redémarrer les services Planisware (Intranet Server ou Client lourd). Il s'agit de la fonction "lispeval()". Cela peut être très utile notamment en développement pour gagner du temps lorsque l'on veut changer la valeur d'une telle variable.

Evaluation de la fonction lispeval()​

Prenons l'exemple d'une variable nommée "XXX_GS_B_WS_ACTIVATED". Il s'agit d'un paramètre spécifique permettant d'indiquer si les Web Services sont actifs ou non sur l'environnement. Nous avons initialisé cette variable au démarrage dans les fichiers .ini à FALSE. Or pour tester un développement nous avons besoin de passer sa valeur à TRUE. 2 solutions s'offrent à nous :

  • modifier le fichier *.ini et redémarrer les services Planisware
  • modifier à chaud la valeur de cette variable grâce à la fonction "lispeval()"

​La commande suivante OJS permet de réévaluer à la volée la variable "XXX_GS_B_WS_ACTIVATED" via l'exécution de la commande ojs "setq" :

"(setq *XXX_GS_B_WS_ACTIVATED* \"TRUE\")".lispeval();