Améliorations des contrôles d'interface (Version 11.00)
(→Evènement attribut a changé) |
|||
(Une révision intermédiaire par un utilisateur est masquée) | |||
Ligne 65 : | Ligne 65 : | ||
* Si la classe n'est pas définie la première classe implémentant l'interface est utilisée. | * Si la classe n'est pas définie la première classe implémentant l'interface est utilisée. | ||
− | ===Evènement attribut a changé=== | + | Exemple : |
+ | |||
+ | Dans une interface utilisant un modèle MVC, vous pouvez afficher une vue dont le calcul varie suivant un paramètre | ||
+ | |||
+ | Pour cela : | ||
+ | |||
+ | * Définissez l'interface commune de la vue | ||
+ | * Définissez des classes vue implémentant cette interface | ||
+ | * Utilisez un dataset sur cette interface | ||
+ | * Utilisez un contrôleur pour définir la vue à afficher en fonction du paramétrage à l'aide d'un attribut calculé (GetClassView). | ||
+ | * Définissez un paramètre décran sur cet attribut calculé (ArgClassView) | ||
+ | * Définissez la propriété ClassFilter du dataset de l'interface sur ce paramètre d'écran (ClassFilter=ArgClassView) | ||
+ | |||
+ | Lorsque le dataset vue est rafraîchi, la classe de l'interface est redéfinie. | ||
+ | |||
+ | ===Evènement un attribut a changé=== | ||
Les datasets émettent un nouvel évènement evsOnDataSetChangeEvent déclenché lorsqu'un attribut de l'objet associé à changé. | Les datasets émettent un nouvel évènement evsOnDataSetChangeEvent déclenché lorsqu'un attribut de l'objet associé à changé. |
Version actuelle en date du 4 octobre 2023 à 08:10
Sommaire |
Utilisez un contrôle de type TDragLabel associé à un contrôle d'édition simple.
- Contrôle d'édition
- Visible: false
- Text: url vers laquelle naviguer
- Contrôle drag label
- Caption: libellé associée à l'url
- LinkControl: contrôle d'édition
- Visible: true
Lien vers un écran
Le nom de l'écran peut être défini par un attribut de la source de données associée au lien.
Grille
Colonne de type bouton
Les colonnes de type bouton supportent un nouveau mode d'affichage "lien"
Dans ce mode, la valeur du champs associé à la colonne est affiché (comme une colonne de type chaîne) sous forme de lien.
Format des montants
Le champ format d'une colonne de grille affichant des montants supporte les paramètres suivant :
#TC# | Code ISO de la devise de tenu de compte |
#RP# | Code ISO de la devise de reporting |
#TR# | Code ISO de la devise de transaction |
! | Affiche le sens du montant correspondant à (Débit-Credit)
|
Exemple :
Valeur : -1000 Devise TC : Euro format : ,0.00 #TC# ! Affiche : 1 000.00 EUR (C)
Dataset
Dataset sur une interface
Il est possible d'utiliser une interface comme classe d'un dataset.
- La classe concrète utilisée est alors définie par le paramètre ClassFilter du dataset
- Ce paramètre peut être un argument de l'écran
- Si la classe n'est pas définie la première classe implémentant l'interface est utilisée.
Exemple :
Dans une interface utilisant un modèle MVC, vous pouvez afficher une vue dont le calcul varie suivant un paramètre
Pour cela :
- Définissez l'interface commune de la vue
- Définissez des classes vue implémentant cette interface
- Utilisez un dataset sur cette interface
- Utilisez un contrôleur pour définir la vue à afficher en fonction du paramétrage à l'aide d'un attribut calculé (GetClassView).
- Définissez un paramètre décran sur cet attribut calculé (ArgClassView)
- Définissez la propriété ClassFilter du dataset de l'interface sur ce paramètre d'écran (ClassFilter=ArgClassView)
Lorsque le dataset vue est rafraîchi, la classe de l'interface est redéfinie.
Evènement un attribut a changé
Les datasets émettent un nouvel évènement evsOnDataSetChangeEvent déclenché lorsqu'un attribut de l'objet associé à changé.
Utilisez GridFieldName du déclencheur pour définir l'attribut pris en compte.
Exemple :
Dans une interface utilisant un modèle MVC, vous pouvez contrôler le filtre d'un dataset par un attribut non persistant du contrôleur.
Pour cela:
- Ajouter un dataset sur la classe contrôleur
- Ajouter un dataset sur la classe vue à afficher.
- Ajouter un datasetRefresh sur le dataset de la classe vue.
- Définissez un attribut non persistent calculant le filtre du dataset (GetFiltre)
- Définissez un argument d'écran sur cet attribut (ArgFiltre)
- Définissez le filtre du dataset sur le paramètre d'écran (filter=%ArgFiltre)
- Déclenchez le datasetRefresh sur l'évènement evsOnDataSetChangeEvent du dataset du contrôleur avec GridFieldName=GetFilter.