Dans le cas où le contrôle fait référence à un autre objet de CARL Source, vous pouvez lui affecter une infozone
et personnaliser son comportement.
Les infozones disponibles sont accessibles depuis les caractéristiques et les attributs du dictionnaire.
Si le champ est un objet standard possédant une infozone, l'infozone est automatique : vous n'avez pas besoin de la renseigner, cependant, vous pouvez la personnaliser.
Recherche par l'infozone
L'infozone permet d'accéder à un formulaire de recherche.
Si le champ "infozone" est renseigné, vous pouvez préciser les propriétés :
- Critère 1 (Nom) : Attribut parmi les critères de recherche de l'infozone, pour lequel vous souhaitez affecter une valeur par défaut.
- Critère 1 (Valeur) :Valeur par défaut du critère renseigné dans la propriété "Critère 1 (Nom)". Pour un booléen, renseigner #{true} ou #{false}.
- Critères bloqués : Nom des critères dont les valeurs ne sont pas modifiables, séparés par des virgules.
Dès que vous avez renseigné les propriétés sur un critère, les propriétés d'un critère supplémentaire deviennent disponibles.
Exemple :
Sur un formulaire personnalisé du détail Matériel, les seuls modèles autorisés sont ceux de la famille 'VEHICULES', et par défaut, les modèles proposés sont ceux dont le libellé commence par 'A'.
Les critères de l'infozone 'modèle' sont les suivants :
Critère 1 (Nom) = description, Critère 1 (Valeur) = A*, Critère 2 (Nom) = family, Critère 2 (Valeur) = VEHICULES, Critères bloqués : family.
La valeur peut être dynamique. L' expression doit désigner une chaîne de caractères (et non un objet).
Exemple 1 :
Sur le détail intervention, proposer les centres de coût dont le responsable est le créateur de l'intervention :
Critère 1 (Nom) = supervisor, Critère 1 (Valeur) = #{formAnimator.bean.createdBy.code}.
Exemple 2 :
Sur le détail DT, proposer les acteurs dont le responsable est le même que celui de l'utilisateur connecté :
Critère 1 (Nom) = supervisor, Critère 1 (Valeur) = {actor.supervisor.code}.
Le critère "code" fonctionnera uniquement en mode recherche, et pas en mode saisie directe. Il faut donc utiliser d'autres critères discriminants.
Infozone sur l'arborescence
Pour les infozones qui ouvrent l' arborescence des équipements, trois critères spécifiques sont disponibles.
- structureFede : Code de la structure (hiérarchique ou réseau) correspondant à l’onglet dans lequel se positionner.
- positEquipment : Code de l’équipement qui sera sélectionné dans l'arborescence, s’il est différent de celui saisi dans le champ de l'infozone.
- server : si structureFede est de type réseau, indiquer #{true} pour afficher les serveurs de l'équipement, #{false} pour afficher les clients.
Exemple d'infozones concernées : BOX, LISTBOX, ACTIVEBOX, MATERIAL, LISTMATERIAL, ACTIVEPATTERN, FAMILYSEL.
Suggestion / Complétion
Sur une infozone, il est possible de paramétrer la boite de dialogue qui propose les valeurs disponibles pour le champ.
- Activation suggestion : A cocher pour que la boite de suggestion apparaisse pour ce champ.
- Colonnes de suggestion : Attributs affichés dans la boite de suggestion, séparés par des virgules, en plus du code et du libellé, affichés par défaut. Vous pouvez préciser, par exemple : manufacturer.code pour la marque.
- Hauteur / Largeur suggestion : Taille de la boite en pixels. La valeur saisie est un entier, sans préciser l'unité. Par exemple 300.
- Nombre caractères : Nombre de caractères saisis à partir duquel la boîte de suggestion apparaît.
- Nombre max : Nombre maximum d'éléments proposés.
- Rafraîchissement : Période de rafraîchissement, en secondes. Par exemple 0.4.
- Tri suggestion : Colonne de tri des données proposées. Exemple, pour trier des acteurs selon leur profil : user.profile.code.
Les valeurs par défaut des paramètres
Nombre caractères,
Nombre max et
Rafraîchissement sont définies dans la
Configuration du système (respectivement
suggestMinchars,
suggestMaxRows,
suggestFrequency).