Document toolboxDocument toolbox

GUI Dynamique XML (Spéc. de FPP et d'Item)

La GUI dynamique est exportée sous forme d'arborescence à un ou plusieurs drapeaux qui ont des groupes, qui ont des éléments, qui ont des champs. Elle présente la même structure que lorsque vous l'éditez dans l'éditeur de l'IUG dynamique.L'image ci-dessous explique la manière dont elle est exportée :
Image 4 : XML de GUI DynamiqueLe XML a comme structure :

<flag flag-no='X'…> <group group-no='X'…> <element group-element-no='10…> <field …/> </element> </group> </flag>

Il est à noter que le XML ne fait pas partie de la même commande que celle que vous voyez sur le client, mais l'attribut de position a cette information et vous devrez vous en servir pour commander les données dans vos rapports.Chaque élément a un @label qui définit le label de l'élément. Pour les zones, il possède également un attribut, @show-label. Si c'est 1, le label est affiché avant la valeur sur l'interface utilisateur graphique, si c'est 2, le label est affiché après la zone.La zone a pour attribut @data-type qui indique si la zone est logique (case à cocher), numérique, une option (boîte combinée/case), date, html (texte mis en pages) ou du texte. Chaque zone a aussi une @value qui contient la valeur spécifique à la langue et la valeur lisible par l'homme.Si la zone présente @data-type = logic, la @value contiendra une valeur de type Oui/Non dépendante de la langue. Elle possède également un attribut @db-value qui est indépendant de la valeur et sera soit vrai, soit faux.Si la zone a @data-type = html (texte mis en page), la @value contiendra la valeur du texte sous forme de texte "normal" non mis en page. En outre, elle présentera un élément inférieur html-data contenant les données html.Voir le composant échantillon dynamic-gui-bb.xfc pour une utilisation à titre d'exemple.

Pour traiter des zones et des valeurs spécifiques

Dans les échantillons et modules, les valeurs de la GUI dynamique sont traités pour être structurées dans le fichier XML. Cette mise en pages s'adaptera si les données évoluent, mais sera limitée en cas d'acquisition de données, si vous voulez maîtriser l'endroit exact où des drapeaux, ces groupes ou des zones spécifiques sont imprimées. Si vous voulez obtenir une valeur de zone spécifique à partir des données de GUI dynamique, faire un "glisser-déposer" depuis l'arborescence des données XML générera le XPATH suivant.

flag/group/element/field/@value

Ceci n'est malheureusement pas bon parce que ça concordera avec toutes les valeurs de terrain et non pas avec la valeur spécifique après laquelle vous êtes. Pour ce faire, vous devez ajouter quelques conditions sur le drapeau, le groupe, l'élément et la zone que vous voulez. Chaque élément l'arborescence a un numéro utilisé comme identification (par ex. N° de drapeau, N° de groupe, etc.), donc nous nous en servons pour traiter la zone que nous voulons, par ex.:

<ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="29e57d0e-9665-4837-9be2-a71c2c6e7552"><ac:plain-text-body><![CDATA[

flag[@flag-no='10']/group[@group-no='10']/element[@group-element- no='11']/field[@field-no='10']/@value

]]></ac:plain-text-body></ac:structured-macro>

Cette manipulation mettra la zone dans le drapeau au n° 10, au groupe 10, à l'élément 11 et à la zone 10.Ne pas oublier qu'en agissant ainsi, le rapport ne fonctionnera pas si vous déplacez la zone vers, par exemple, un groupe différent ou si vous faites passer le rapport sur un projet différent où l'interface utilisateur n'est pas la même.