Paramètres de protocoles

sampleprotocolsAvec la 2.3 il est désormais possible de paramétrer les protocoles à partir des préférences, en utilisant des formules XML.

Pour ce faire, on doit utiliser des “alias”. Je rappelle le principe: on définit une table de variables appelée “aliasmap” au début d’un Clinical Element, puis, dans les attributs XML, on référence ces variables par leur nom, en préfixant avec le signe $.

  <aliasmap uid="sampvolumestatus" viewlimit="4"/>
...
  <view appindex="0" limit="$viewlimit"/>

Dorénavant, on peut aussi indiquer que l’alias déterminera sa valeur en évaluant une formule XML. Evidemment, comme les alias sont évalués au chargement de l’objet qui contient l’aliasmap, tous les évaluateurs ne sont pas utilisables (parce que certains objets sont chargés au lancement de l’application par exemple et non à l’ouverture du workspace).

Dans l’exemple suivant, on utilise la fonction “app” pour lire une hypothétique préférence standard de Myrian qui s’appellerait “viewlimit”.

<?xml version="1.0" encoding="utf-16"?>
<protocol uid="sampvolumestatus" thumbnail="volumestatus.png" version="1500" >
  <aliasmap uid="sampvolumestatus" viewlimit="#eval:app(prefs,viewlimit)"/>
  <appset>
    <app refuid="appvolumestatus" />
  </appset>
  <mmconfig>
    <monitor>
      <pagelayout type="autogrid" />
      <view appindex="0" limit="$viewlimit"/>
    </monitor>
  </mmconfig>
</protocol>

On pourrait aussi aller lire une préférence quelconque dans _intrasense.txt:

<aliasmap uid="sampvolumestatus" viewlimit="#eval:app(prefs,sys:mysection:myentry:4)"/>