Label de localisation

Il est possible d'organiser vos ceBox® par localisation en intégrant des labels du type Salle, Ville, Région, Département, Bâtiment, Étage, ...
Sélectionner une ceBox® ou plusieurs ceBox®

446

Aller dans Settings

333

Aller dans Settings

768

Choisir un ou plusieurs labels en fonction de votre besoin

600

Mettre dans le label le nom d'une Salle, une Ville, un étage...

Pour modifier l'organisation de vos ceBox® à l'intérieur de la console d'administration, sélectionner "Localization"

214

Aller dans Group By depuis l'icône à droite du menu "ceBox®"

Il est possible de créer, modifier ou supprimer des labels en fonction de votre besoin.
Pour cela, aller dans Settings \ Console \ Configuration

403

Voici le Fichier de configuration : ConsoleConfigurationHandler.java

class ConsoleConfigurationHandler extends ConsoleConfigurationHandlerA
{	protected void configureCebox(ConsoleEntityConfiguration configuration)
	{	configuration.extendBy.label="Setting";
		configuration.extendBy.text="\$hyperbox.name Setting";
		
		configuration.extendBy.items[0].name="localization";
		configuration.extendBy.items[0].label="Localization";
		
		configuration.extendBy.items[0].attributes[0].name="region";
		configuration.extendBy.items[0].attributes[0].label="Region";
configuration.extendBy.items[0].attributes[0].type=configuration.variable(String.class);
		

		configuration.extendBy.items[0].attributes[1].name="ville";
    configuration.extendBy.items[0].attributes[1].label="Ville";
 configuration.extendBy.items[0].attributes[1].type=configuration.variable(String.class);

              			
		configuration.extendBy.items[0].attributes[2].name="room";
		configuration.extendBy.items[0].attributes[2].label="Room";		  
 configuration.extendBy.items[0].attributes[2].type=configuration.variable(String.class);
				

		configuration.extendBy.items[0].attributes[3].name="etage";
    configuration.extendBy.items[0].attributes[3].label="etage";
 configuration.extendBy.items[0].attributes[3].type=configuration.variable(String.class);

		configuration.extendBy.items[0].attributes[4].name="batiment";
    configuration.extendBy.items[0].attributes[4].label="Batiment";
 configuration.extendBy.items[0].attributes[4].type=configuration.variable(String.class);

	
		configuration.groupBy.items[0].name="optimizer";
		configuration.groupBy.items[0].label="Optimizer";
		configuration.groupBy.items[0].valueExpression={ cebox -> cebox.optimizer };
		configuration.groupBy.items[0].labelExpression={ optimizer -> optimizer==null?"Unknown Optimizer":optimizer.name };
		
		configuration.groupBy.items[1].name="region";
		configuration.groupBy.items[1].label="Region";
		configuration.groupBy.items[1].valueExpression= { cebox -> cebox.localization.region };
		configuration.groupBy.items[1].labelExpression= { region -> region==null?"Unknown Region":region};

    configuration.groupBy.items[2].name="ville";
    configuration.groupBy.items[2].label="Ville";
    configuration.groupBy.items[2].valueExpression= { cebox -> cebox.localization.ville };
    configuration.groupBy.items[2].labelExpression= { ville -> ville==null?"Ville non definie ":ville};

		configuration.groupBy.items[3].name="room";
		configuration.groupBy.items[3].label="Room";
		configuration.groupBy.items[3].valueExpression= { cebox -> cebox.localization.room };
		configuration.groupBy.items[3].labelExpression= { room -> room==null?"Unknown Room":room};

		configuration.groupBy.items[4].name="client";
		configuration.groupBy.items[4].label="Client";
		configuration.groupBy.items[4].valueExpression= { cebox -> cebox.clientName };
		configuration.groupBy.items[4].labelExpression= { client -> client==null?"Unknown Client":client};

		configuration.groupBy.items[5].name="batiment";
		configuration.groupBy.items[5].label="Batiment";
		configuration.groupBy.items[5].valueExpression= { cebox -> cebox.localization.batiment };
		configuration.groupBy.items[5].labelExpression= { batiment -> batiment==null?"Unknown Batiment":batiment};

		configuration.groupBy.items[6].name="etage";
		configuration.groupBy.items[6].label="Etage";
		configuration.groupBy.items[6].valueExpression= { cebox -> cebox.localization.etage };
		configuration.groupBy.items[6].labelExpression= { etage -> etage==null?"Unknown Etage":etage};
		
		
		configuration.groupBy.combinations[0].name="optimizer"
		configuration.groupBy.combinations[0].name="Optimizer"
		configuration.groupBy.combinations[0].items=[0];
		
		configuration.groupBy.combinations[1].name="localization"
		configuration.groupBy.combinations[1].label="Localization"
		configuration.groupBy.combinations[1].items=[1,2,3,5,6];

		configuration.groupBy.combinations[2].name="client"
		configuration.groupBy.combinations[2].label="Client"
		configuration.groupBy.combinations[2].items=[4,0];
		
		configuration.groupBy.selection=2;
	}
}

Comme vous pouvez le voir la création d'un label est relativement simple.

Voici la configuration d'un label :

configuration.extendBy.items[0].attributes[1].name="ville";
configuration.extendBy.items[0].attributes[1].label="Ville";
configuration.extendBy.items[0].attributes[1].type=configuration.variable(String.class);

configuration.groupBy.items[2].name="ville";
configuration.groupBy.items[2].label="Ville";
configuration.groupBy.items[2].valueExpression= { cebox -> cebox.localization.ville };
configuration.groupBy.items[2].labelExpression= { ville -> ville==null?"Ville non definie ":ville};

configuration.groupBy.combinations[1].name="localization"
configuration.groupBy.combinations[1].label="Localization"
configuration.groupBy.combinations[1].items=[1,2,3,5,6];

La première étape est la déclaration de l'objet, défini par trois "attributes" : name, label, type.

configuration.extendBy.items[0].attributes[1].name="ville";
configuration.extendBy.items[0].attributes[1].label="Ville";
configuration.extendBy.items[0].attributes[1].type=configuration.variable(String.class);

❗️

Attention

attributes[X] le X doit être incrémenté en fonction du positionnement de votre label.

La seconde étape est la configuration de l'objet, définie par quatre "items" : name, label, valueExpression, labelExpression

configuration.groupBy.items[2].name="ville";
configuration.groupBy.items[2].label="Ville";
configuration.groupBy.items[2].valueExpression= { cebox -> cebox.localization.ville };
configuration.groupBy.items[2].labelExpression= { ville -> ville==null?"Ville non definie ":ville};

❗️

Attention

Items[X] le X doit être incrémenté en fonction du positionnement de votre label.

Enfin, il est possible de regrouper plusieurs labels en utilisant le menu de regroupement "group by localization".
Il faut pour cela configurer la combinaison de localisation en désignant le numéro d'items souhaité dans le regroupement de localisation, soit "groupby.combinations[1].items" de l'objet "localization".

Dans l'exemple ci-dessous, le regroupement par localisation inclus les items [1,2,3,5,6], correspondant aux numéros d'items pour region, ville, room, batiment et etage.

configuration.groupBy.combinations[1].name="localization"
configuration.groupBy.combinations[1].label="Localization"
configuration.groupBy.combinations[1].items=[1,2,3,5,6];