Lists

Champ liste simple

Champ liste déroulante.

Classe : com.axemble.vdp.ui.core.document.fields.ComboBoxField

Stockage : String

Storage table: vdp_string_values

Paramètre Description
allowreset String; default true; Autorisation de vidage du champ (sélection d’une valeur vide); valeurs possibles : true, false (seulement en création, si le champ est initialement vide), never
emptyValue String; default null; Valeur de stockage pour une valeur vide (note : il s’agit d’une clé de traduction)

Example:

<field name="fldComboBox" label="ComboBox" string-value="A" list="A;B;C;D" ctrl="com.axemble.vdp.ui.core.document.fields.ComboBoxField" mode="write" /> 
<field name="fldComboBox" label="ComboBox" ctrl="com.axemble.vdp.ui.core.document.fields.ComboBoxField" mode="read" />

Champ liste multiple

Champ liste à sélection multiple.

Classe : com.axemble.vdp.ui.core.document.fields.SelectListField

Stockage : Collection<String>

Storage table: vdp_collection_values

Paramètre Description
rows Nombre; default -1; Nombre de lignes affichées dans la liste
minItemsToSelect Nombre; default -1; Nombre de sélections minimum possibles dans la liste
maxItemsToSelect Nombre; default -1; Nombre de sélections maximum possibles dans la liste

Champ case à cocher

Champ présentant une case à cocher.

Classe : com.axemble.vdp.ui.core.document.fields.CheckBoxField

Stockage : java.lang.Boolean

Paramètre Description
additionalLabel String; default null; Libellé à côté de la case à cocher
reversedValue Booleén; default false; inversion du booléen sur le stockage

Example:

<field name="fldCheckBox" label="CheckBox" throw-events="true" boolean-value="true" ctrl="com.axemble.vdp.ui.core.document.fields.CheckBoxField" /> 

Champ groupe de cases à cocher

Champ présentant un groupe de cases à cocher (équivalent d’une liste multiple, mais présentée sous la forme de cases à cocher).

Classe : com.axemble.vdp.ui.core.document.fields.CheckBoxGroupField

Stockage : Collection<String>

Storage table: vdp_collection_values

Paramètre Description
inverseLabelPosition Booléen; default false : case à cocher à gauche et libellé à droite; Inversion de la position des libellés et des case à cocher
presentationMode String; default vertical; mode de présentation des cases à cocher; valeurs : vertical,horizontal,inline
nbOfColumns Nombre; default 1; si on est en mode horizontal, nombre de colonnes affichés.
allowSelectAll Booléen; default false; affiche un bouton pour tout sélectionner.
allowReset Booléen; default false; affiche un bouton pour réinitialiser la sélection.
summaryMode Booléen; default false; affiche une présentation simplifiée si le champ est en lecture.

Example:

<field name="fldCheckBoxGroup" label="CheckBoxGroup" throw-events="true" string-values="un;trois" list="un;deux;trois;quatre;cinq;six;sept" nbofcolumns="3" fillingmode="vertical" allowreset="true" allowselectall="true" ctrl="com.axemble.vdp.ui.core.document.fields.CheckBoxGroupField" /> 

Champ groupe de sélection radio

Champ présentant un groupe de bouton radios (équivalent d’une liste simple mais présentée sous la forme de groupe de boutons radios).

Classe : com.axemble.vdp.ui.core.document.fields.RadioGroupField

Stockage : String

Paramètre Description
inverseLabelPosition Booléen; default false : radio à gauche et libellé à droite; Inversion de la position des libellés et des radios
presentationMode String; default vertical; mode de présentation des radios; valeurs : vertical,horizontal,inline
nbOfColumns Nombre; default 1; si on est en mode horizontal, nombre de colonnes affichés.
allowReset Booléen; default false; affiche un bouton pour réinitialiser la sélection.
summaryMode Booléen; default false; affiche une présentation simplifiée si le champ est en lecture.

Example:

<field name="fldRadioGroup" label="RadioGroup" string-value="un" list="un;deux;trois;quatre;cinq;six;sept" nbofcolumns="3" fillingmode="horizontal" ctrl="com.axemble.vdp.ui.core.document.fields.RadioGroupField" />

Champ prédictif simple

Champ liste simple avec saisie par auto-suggestion.

Classe : com.axemble.vdp.ui.core.document.fields.AutocompleteListField

Stockage : String

Paramètre Description
size String; default auto; valeurs possibles : veryshort,short,medium,long,auto
displaySelectionOutside Booléen; default false; permet d’afficher la sélection effectuée en dehors du champ de sélection.
maxDisplayedItems Nombre; default 10; nombre d’éléments maximum affichés sur une saisie prédictive.
allowReset Booléen; default false; affiche un bouton pour réinitialiser la sélection.
cssClass String; classe CSS.

Champ prédictif multiple

Champ liste multiple avec saisie par auto-suggestion.

Classe : com.axemble.vdp.ui.core.document.fields.AutocompleteMultipleListField

Stockage : Collection<String>

Paramètre Description
size String; default auto; valeurs possibles : veryshort,short,medium,long,auto
maxDisplayedItems Nombre; default 10; nombre d’éléments maximum affichés sur une saisie prédictive.
minItemsToSelect Nombre; default -1; nombre de sélections minimum possibles dans la liste.
maxItemsToSelect Nombre; default -1; nombre de sélections maximum possibles dans la liste.
cssClass String; classe CSS.

Renseigner par SDK des listes avec regroupements

Il est possible de présenter une liste avec des groupements, des catégories. Le regroupement des entrées de la liste permettra une meilleure lisibilité, une meilleure ergonomie dans l’accès à l’information.

Les groupes seront présentés en gras dans la liste (non cliquables) et les options seront présentées sous les groupes.

Implémentation

Si dans un cas classique on construit des options, il faut ici construire des optiongroups; des options peuvent être ajoutées dans chaque option group. Il faut donc effectuer un setList de la collection d’optiongroups.

Info

Option et OptionGroup implémentent IOption.

Exemple extrait d’une classe héritant de BaseDocumentExtension, déclarée sur un formulaire :

public boolean onAfterLoad() {
	ArrayList<IOption> cOptionWithGroups = new ArrayList<>();
	
	OptionGroup optionGroup1 = new OptionGroup("group1", "Group n°1");
	OptionGroup optionGroup2 = new OptionGroup("group2", "Group n°2");
	
	optionGroup1.addOption(new Option("SubOption1", "Sous option n°1"));
	optionGroup1.addOption(new Option("SubOption2", "Sous option n°2"));
	optionGroup1.addOption(new Option("SubOption3", "Sous option n°3"));
	
	optionGroup2.addOption(new Option("SubOption4", "Sous option n°4"));
	optionGroup2.addOption(new Option("SubOption5", "Sous option n°5"));
	optionGroup2.addOption(new Option("SubOption6", "Sous option n°6"));
	
	cOptionWithGroups.add(optionGroup1);
	cOptionWithGroups.add(optionGroup2);
	
	getWorkflowInstance().setList("MonChampListe", cOptionWithGroups);
	
	return super.onAfterLoad();
}

Aperçu

How To Fill Grouped Lists 1 How To Fill Grouped Lists 1

Source : https://wiki.myvdoc.net/xwiki/bin/view/Dev+Floor/HowToFillGroupedLists