Lookup dynamique
Ofbiz a étendu le fonctionnement des lookups en y intégrant une gestion dynamique de chargement des paramêtres de recherche à partir d'une form XML.
Chargement de paramêtre
Le fonctionnement est assez simple. Dans une form XML de saisie ou doit être présent un lookup, on définit renseigne la balise de recherche de la sorte :
<form name="createParty" target="CreateParty" title="" type="single">
<field name="postalCode" title="${uiLabelMap.PartyPostalCode}" >
<lookup target-form-name="/partymgr/control/LookupGeo"
target-parameter="postalCode" size="10"/>
</field>
</form>
L'élément important est l'attribut target-parameter qui prend la liste des champs à charger dynamiquement. On peut indiquer plusieurs paramêtres :
target-parameter="para1, para2, para3, ..., paraN"
Lorsque l'utilisateur cliquera sur le bouton d'appel du lookup, tous les paramêtres indiqués seront monté dans le context.
Récupération des paramêtre
La récupération des informations s'effectuant dans l'écran du lookup appelé et non dans sa form. Dans notre cas :
<screen name="LookupGeo"> </screen>
Le champs chargé dynamiquement est récupéré au travers la variable ${parameters.parm0}. De manière générale :
<set field="attr0" from-field="parameters.attr0"
default-value="${parameters.parm0}"/>
<set field="attr1" from-field="parameters.attr1"
default-value="${parameters.parm1}"/>
...
<set field="attrN" from-field="parameters.attrN"
default-value="${parameters.parmN}"/>
On obtient donc ainsi un chargement de N variables dynamiquement en fonction des saisies de l'utilisateur.
objet : lookup dynamique langue de la page de référence : Français auteur : nicolas


