Subversion Repositories eFlore/Applications.coel

Rev

Rev 1513 | Only display areas with differences | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 1513 Rev 1593
1
package org.tela_botanica.client.composants;
1
package org.tela_botanica.client.composants;
2
 
2
 
3
import java.util.HashMap;
3
import java.util.HashMap;
4
 
4
 
5
import org.tela_botanica.client.Mediateur;
5
import org.tela_botanica.client.Mediateur;
6
import org.tela_botanica.client.RegistreId;
6
import org.tela_botanica.client.RegistreId;
7
import org.tela_botanica.client.composants.pagination.Proxy;
7
import org.tela_botanica.client.composants.pagination.Proxy;
8
import org.tela_botanica.client.configuration.Configuration;
8
import org.tela_botanica.client.configuration.Configuration;
9
import org.tela_botanica.client.images.Images;
9
import org.tela_botanica.client.images.Images;
10
import org.tela_botanica.client.interfaces.Rafraichissable;
10
import org.tela_botanica.client.interfaces.Rafraichissable;
11
import org.tela_botanica.client.modeles.Valeur;
11
import org.tela_botanica.client.modeles.Valeur;
12
import org.tela_botanica.client.modeles.ValeurListe;
12
import org.tela_botanica.client.modeles.ValeurListe;
13
import org.tela_botanica.client.modeles.aDonnee;
13
import org.tela_botanica.client.modeles.aDonnee;
14
import org.tela_botanica.client.util.Debug;
-
 
15
import org.tela_botanica.client.vues.Formulaire;
-
 
16
 
14
 
17
import com.extjs.gxt.ui.client.Registry;
-
 
18
import com.extjs.gxt.ui.client.data.ModelData;
15
import com.extjs.gxt.ui.client.Registry;
19
import com.extjs.gxt.ui.client.data.ModelType;
16
import com.extjs.gxt.ui.client.data.ModelType;
20
import com.extjs.gxt.ui.client.event.ButtonEvent;
17
import com.extjs.gxt.ui.client.event.ButtonEvent;
21
import com.extjs.gxt.ui.client.event.Events;
18
import com.extjs.gxt.ui.client.event.Events;
22
import com.extjs.gxt.ui.client.event.FieldEvent;
19
import com.extjs.gxt.ui.client.event.FieldEvent;
23
import com.extjs.gxt.ui.client.event.Listener;
20
import com.extjs.gxt.ui.client.event.Listener;
24
import com.extjs.gxt.ui.client.event.SelectionListener;
21
import com.extjs.gxt.ui.client.event.SelectionListener;
25
import com.extjs.gxt.ui.client.store.ListStore;
-
 
26
import com.extjs.gxt.ui.client.widget.Component;
-
 
27
import com.extjs.gxt.ui.client.widget.LayoutContainer;
22
import com.extjs.gxt.ui.client.widget.LayoutContainer;
28
import com.extjs.gxt.ui.client.widget.MessageBox;
23
import com.extjs.gxt.ui.client.widget.MessageBox;
29
import com.extjs.gxt.ui.client.widget.Text;
24
import com.extjs.gxt.ui.client.widget.Text;
30
import com.extjs.gxt.ui.client.widget.button.Button;
25
import com.extjs.gxt.ui.client.widget.button.Button;
31
import com.extjs.gxt.ui.client.widget.form.ComboBox;
-
 
32
import com.extjs.gxt.ui.client.widget.form.Field;
-
 
33
import com.extjs.gxt.ui.client.widget.form.HiddenField;
-
 
34
import com.extjs.gxt.ui.client.widget.form.LabelField;
-
 
35
import com.extjs.gxt.ui.client.widget.form.TextField;
-
 
36
import com.extjs.gxt.ui.client.widget.form.ComboBox.TriggerAction;
-
 
37
import com.extjs.gxt.ui.client.widget.layout.ColumnData;
26
import com.extjs.gxt.ui.client.widget.layout.ColumnData;
38
import com.extjs.gxt.ui.client.widget.layout.ColumnLayout;
27
import com.extjs.gxt.ui.client.widget.layout.ColumnLayout;
39
import com.extjs.gxt.ui.client.widget.layout.RowLayout;
-
 
40
 
28
 
41
public class ChampMultiValeursMultiTypesPaginable extends ChampMultiValeursPaginable implements Rafraichissable {
29
public class ChampMultiValeursMultiTypesPaginable extends ChampMultiValeursPaginable implements Rafraichissable {
42
 
30
 
43
	  //-------------//
31
	  //-------------//
44
	 //  ATTRIBUTS	//
32
	 //  ATTRIBUTS	//
45
	//-------------//
33
	//-------------//
46
	
34
	
47
	// Elements pour le champ 'types'
35
	// Elements pour le champ 'types'
48
	ColumnData colonneChampTypes = null;
36
	ColumnData colonneChampTypes = null;
49
	ChampComboBoxRechercheTempsReelPaginable champTypesComboBox = null;
37
	ChampComboBoxRechercheTempsReelPaginable champTypesComboBox = null;
50
	int largeurChampTypes = 200;
38
	int largeurChampTypes = 200;
51
	String displayNameChampTypes = "nom";
39
	String displayNameChampTypes = "nom";
52
	
40
	
53
	// Elements pour gérer le type de valeurs que contient le champ
41
	// Elements pour gérer le type de valeurs que contient le champ
54
	Proxy proxyChampTypes = null;
42
	Proxy proxyChampTypes = null;
55
	ModelType modeltypeChampTypes = null;
43
	ModelType modeltypeChampTypes = null;
56
 
44
 
57
	// Variables de traitement
45
	// Variables de traitement
58
	HashMap<Integer, String> tempMapValeurs = null;
46
	HashMap<Integer, String> tempMapValeurs = null;
59
	
47
	
60
	  //-------------//
48
	  //-------------//
61
	 //   METHODES	//
49
	 //   METHODES	//
62
	//-------------//
50
	//-------------//
63
 
51
 
64
	/*--------------
52
	/*--------------
65
	  Constructeur 
53
	  Constructeur 
66
	--------------*/
54
	--------------*/
67
	public ChampMultiValeursMultiTypesPaginable(String label, int largeurTotale, boolean estCombobox, ModelType modeltypeChampValeur, Proxy proxyChampValeur, String displayNameChampValeur, ModelType modeltypeChampTypes, Proxy proxyChampTypes, String displayNameChampTypes) {
55
	public ChampMultiValeursMultiTypesPaginable(String label, int largeurTotale, boolean estCombobox, ModelType modeltypeChampValeur, Proxy proxyChampValeur, String displayNameChampValeur, ModelType modeltypeChampTypes, Proxy proxyChampTypes, String displayNameChampTypes) {
68
		super(label, largeurTotale, estCombobox, modeltypeChampValeur, proxyChampValeur, displayNameChampValeur);
56
		super(label, largeurTotale, estCombobox, modeltypeChampValeur, proxyChampValeur, displayNameChampValeur);
69
		
57
		
70
		this.proxyChampTypes = proxyChampTypes;
58
		this.proxyChampTypes = proxyChampTypes;
71
		this.modeltypeChampTypes = modeltypeChampTypes;
59
		this.modeltypeChampTypes = modeltypeChampTypes;
72
		this.displayNameChampTypes = displayNameChampTypes;
60
		this.displayNameChampTypes = displayNameChampTypes;
73
		
61
		
74
		initialiserChampMultiValeursMultiTypesPaginable(label);
62
		initialiserChampMultiValeursMultiTypesPaginable(label);
75
	}
63
	}
76
 
64
 
77
	/*------------
65
	/*------------
78
	  Accesseurs 
66
	  Accesseurs 
79
	------------*/
67
	------------*/
80
	
68
	
81
	 //------------//
69
	 //------------//
82
	//    Get     //------------------------------------------------------------
70
	//    Get     //------------------------------------------------------------
83
	
71
	
84
	public ChampComboBoxRechercheTempsReelPaginable getChampTypesComboBox() {
72
	public ChampComboBoxRechercheTempsReelPaginable getChampTypesComboBox() {
85
		return this.champTypesComboBox;
73
		return this.champTypesComboBox;
86
	}
74
	}
87
	
75
	
88
	 //------------//
76
	 //------------//
89
	//    Set     //------------------------------------------------------------
77
	//    Set     //------------------------------------------------------------
90
	
78
	
91
	@Override
79
	@Override
92
	public void setLargeurTotale(int largeurTotale) {
80
	public void setLargeurTotale(int largeurTotale) {
93
		this.largeurTotale = largeurTotale;
81
		this.largeurTotale = largeurTotale;
94
		largeurChampValeur = largeurTotale - largeurBouton - largeurChampTypes;
82
		largeurChampValeur = largeurTotale - largeurBouton - largeurChampTypes;
95
	}
83
	}
96
	
84
	
97
	/*-------------------------------------------
85
	/*-------------------------------------------
98
	  Méthodes protégées et méthodes publiques 
86
	  Méthodes protégées et méthodes publiques 
99
	--------------------------------------------*/
87
	--------------------------------------------*/
100
	
88
	
101
	@Override
89
	@Override
102
	public void rafraichir(Object nouvellesDonnees) {
90
	public void rafraichir(Object nouvellesDonnees) {
103
		super.rafraichir(nouvellesDonnees);
91
		super.rafraichir(nouvellesDonnees);
104
		
-
 
105
		if (nouvellesDonnees instanceof ValeurListe) {
92
		if (nouvellesDonnees instanceof ValeurListe) {
106
			Valeur v = ((ValeurListe)nouvellesDonnees).toList().get(0);
93
			Valeur v = ((ValeurListe)nouvellesDonnees).toList().get(0);
107
			ajouterValeur(tempMapValeurs.get(Integer.parseInt(v.getId())), v.getNom(), v.getId());
94
			ajouterValeur(tempMapValeurs.get(Integer.parseInt(v.getId())), v.getNom(), v.getId());
108
		}
95
		}
109
	}
96
	}
110
	
97
	
111
	@Override
98
	@Override
112
	protected void ajouterValeur(final String texte, final String type, final String idType) {
99
	protected void ajouterValeur(final String texte, final String type, final String idType) {
113
		
100
		
114
		LayoutContainer colonneConteneur = new LayoutContainer();
101
		LayoutContainer colonneConteneur = new LayoutContainer();
115
		colonneConteneur.setLayout(new ColumnLayout());
102
		colonneConteneur.setLayout(new ColumnLayout());
116
		valeurs.put(idType + aDonnee.SEPARATEUR_TYPE_VALEUR + texte, colonneConteneur);
103
		valeurs.put(idType + aDonnee.SEPARATEUR_TYPE_VALEUR + texte, colonneConteneur);
117
		
104
		
118
		Text champType = new Text();
105
		Text champType = new Text();
119
		champType.setText(type + " : ");
106
		champType.setText(type + " : ");
120
		champType.setWidth(largeurChampTypes);
107
		champType.setWidth(largeurChampTypes);
121
		colonneConteneur.add(champType, new ColumnData(largeurChampTypes));
108
		colonneConteneur.add(champType, new ColumnData(largeurChampTypes));
122
		
109
		
123
		Text champValeur = new Text();
110
		Text champValeur = new Text();
124
		champValeur.setText(texte);
111
		champValeur.setText(texte);
125
		champValeur.setWidth(largeurChampTypes);
112
		champValeur.setWidth(largeurChampTypes);
126
		colonneConteneur.add(champValeur, new ColumnData(largeurChampTypes));
113
		colonneConteneur.add(champValeur, new ColumnData(largeurChampTypes));
127
		
114
		
128
		Button supprimerBouton = new Button();
115
		Button supprimerBouton = new Button();
129
		supprimerBouton.setIcon(Images.ICONES.supprimer());
116
		supprimerBouton.setIcon(Images.ICONES.supprimer());
130
		supprimerBouton.setText(boutonSupprimerLabel);
117
		supprimerBouton.setText(boutonSupprimerLabel);
131
		supprimerBouton.setData("valeur", idType + aDonnee.SEPARATEUR_TYPE_VALEUR + texte);
118
		supprimerBouton.setData("valeur", idType + aDonnee.SEPARATEUR_TYPE_VALEUR + texte);
132
		
119
		
133
		supprimerBouton.addSelectionListener(new SelectionListener<ButtonEvent>() {
120
		supprimerBouton.addSelectionListener(new SelectionListener<ButtonEvent>() {
134
			public void componentSelected(ButtonEvent ce) {
121
			public void componentSelected(ButtonEvent ce) {
135
				String valeur = ce.getComponent().getData("valeur");
122
				String valeur = ce.getComponent().getData("valeur");
136
				LayoutContainer valeurLayout = valeurs.get(valeur);
123
				LayoutContainer valeurLayout = valeurs.get(valeur);
137
				principalLayout.remove(valeurLayout);
124
				principalLayout.remove(valeurLayout);
138
				valeurs.remove(valeur);
125
				valeurs.remove(valeur);
139
				supprimerValeurDuRecapitulatif(valeur);
126
				supprimerValeurDuRecapitulatif(valeur);
140
				actualiserLayoutGlobal();
127
				actualiserLayoutGlobal();
141
			}
128
			}
142
		});
129
		});
143
		colonneConteneur.add(supprimerBouton, new ColumnData(largeurBouton));
130
		colonneConteneur.add(supprimerBouton, new ColumnData(largeurBouton));
144
		
131
		
145
		// Ajout du layout de la valeur au layout principal
132
		// Ajout du layout de la valeur au layout principal
146
		principalLayout.add(colonneConteneur);
133
		principalLayout.add(colonneConteneur);
147
		
134
		
148
		// Ajout de la valeur au champ récapitulatif des valeurs ajoutées		
135
		// Ajout de la valeur au champ récapitulatif des valeurs ajoutées		
149
		ajouterValeurAuRecapitulatif(texte, idType);
136
		ajouterValeurAuRecapitulatif(texte, idType);
150
		
137
		
151
		reinitialiserChamp();
138
		reinitialiserChamp();
152
		actualiserLayoutGlobal();
139
		actualiserLayoutGlobal();
153
	}
140
	}
154
 
141
 
155
	@Override
142
	@Override
156
	public void peupler(String chaineExistante) {
143
	public void peupler(String chaineExistante) {
157
		
144
		
158
		if (valeurs.size() > 0)	{
145
		if (valeurs.size() > 0)	{
159
			reinitialiser();
146
			reinitialiser();
160
		}
147
		}
161
		if (chaineExistante != null && !chaineExistante.trim().equals("")) {
148
		if (chaineExistante != null && !chaineExistante.trim().equals("")) {
162
			
149
			
163
			String[] valeurs = chaineExistante.split(aDonnee.SEPARATEUR_VALEURS);
150
			String[] valeurs = chaineExistante.split(aDonnee.SEPARATEUR_VALEURS);
164
			for (int i = 0; i < valeurs.length; i++) {
151
			for (int i = 0; i < valeurs.length; i++) {
165
				String[] idEtValeur = valeurs[i].split(aDonnee.SEPARATEUR_TYPE_VALEUR);
152
				String[] idEtValeur = valeurs[i].split(aDonnee.SEPARATEUR_TYPE_VALEUR);
166
				if (idEtValeur.length == 2) {
153
				if (idEtValeur.length == 2) {
167
					String idType = idEtValeur[0];
154
					String idType = idEtValeur[0];
168
					String idValeur = idEtValeur[1];
155
					String idValeur = idEtValeur[1];
169
					
156
					
170
					// Champ Valeur
157
					// Champ Valeur
171
					if (idType.matches("[0-9]+")) {
158
					if (idType.matches("[0-9]+")) {
172
						tempMapValeurs.put(Integer.parseInt(idType), idValeur);
159
						tempMapValeurs.put(Integer.parseInt(idType), idValeur);
173
					} else {
160
					} else {
174
						tempMapValeurs.put(((Configuration)(Registry.get(RegistreId.CONFIG))).getListeId(idType), idValeur);
161
						tempMapValeurs.put(((Configuration)(Registry.get(RegistreId.CONFIG))).getListeId(idType), idValeur);
175
					}
162
					}
176
	
163
	
177
					// Champ Types
164
					// Champ Types
178
					mediateur.obtenirListeValeurEtRafraichir(this, Integer.parseInt(idType), null);
165
					mediateur.obtenirValeurEtRafraichir(this,"*", idType, null);
179
				} else {
166
				} else {
180
					InfoLogger.display("Erreur", "ChampMultiValeursMultiTypesPaginable. Erreur dans le split de "+chaineExistante, true);
167
					InfoLogger.display("Erreur", "ChampMultiValeursMultiTypesPaginable. Erreur dans le split de "+chaineExistante, true);
181
				}
168
				}
182
			}
169
			}
183
		}
170
		}
184
	}
171
	}
185
 
172
 
186
	
173
	
187
	/*------------------
174
	/*------------------
188
	  Méthodes privées 
175
	  Méthodes privées 
189
	------------------*/
176
	------------------*/
190
	
177
	
191
	private void initialiserChampMultiValeursMultiTypesPaginable(String label) {
178
	private void initialiserChampMultiValeursMultiTypesPaginable(String label) {
192
		setLargeurTotale(largeurTotale);
179
		setLargeurTotale(largeurTotale);
193
		tempMapValeurs = new HashMap<Integer,String>();
180
		tempMapValeurs = new HashMap<Integer,String>();
194
		creerChampMultiValeursMultiTypes();
181
		creerChampMultiValeursMultiTypes();
195
	}
182
	}
196
 
183
 
197
	private void creerChampMultiValeursMultiTypes() {
184
	private void creerChampMultiValeursMultiTypes() {
198
		
185
		
199
		/* Creation du champ Types */		
186
		/* Creation du champ Types */		
200
		champTypesComboBox = new ChampComboBoxRechercheTempsReelPaginable(proxyChampTypes, modeltypeChampTypes, displayNameChampTypes);
187
		champTypesComboBox = new ChampComboBoxRechercheTempsReelPaginable(proxyChampTypes, modeltypeChampTypes, displayNameChampTypes);
201
		champTypesComboBox.setWidth(largeurChampTypes);
188
		champTypesComboBox.setWidth(largeurChampTypes);
202
		champTypesComboBox.getCombo().setEmptyText("Type...");
189
		champTypesComboBox.getCombo().setEmptyText("Type...");
203
		
190
		
204
		champTypesComboBox.addListener(Events.Select, new Listener<FieldEvent>() {
191
		champTypesComboBox.addListener(Events.Select, new Listener<FieldEvent>() {
205
			public void handleEvent(FieldEvent fe) {
192
			public void handleEvent(FieldEvent fe) {
206
 
193
 
207
			}
194
			}
208
		});
195
		});
209
 
196
 
210
		/* Placement des éléments dans le conteneur */
197
		/* Placement des éléments dans le conteneur */
211
		// le champ "types" doit être graphiquement placé avant les autres champs,
198
		// le champ "types" doit être graphiquement placé avant les autres champs,
212
		// on doit donc retirer ces derniers avant d'insérer le champ "types"		
199
		// on doit donc retirer ces derniers avant d'insérer le champ "types"		
213
		colonneConteneur.removeAll();
200
		colonneConteneur.removeAll();
214
		colonneConteneur.setWidth(largeurTotale);
201
		colonneConteneur.setWidth(largeurTotale);
215
		colonneChampTypes = new ColumnData(largeurChampTypes); 
202
		colonneChampTypes = new ColumnData(largeurChampTypes); 
216
		colonneChampTypes.setWidth(largeurChampTypes);
203
		colonneChampTypes.setWidth(largeurChampTypes);
217
		colonneConteneur.add(champTypesComboBox, colonneChampTypes);		
204
		colonneConteneur.add(champTypesComboBox, colonneChampTypes);		
218
		if (champValeurEstComboBox) {
205
		if (champValeurEstComboBox) {
219
			champValeurComboBox.setWidth(largeurChampValeur);
206
			champValeurComboBox.setWidth(largeurChampValeur);
220
			colonneChampValeur.setWidth(largeurChampValeur);
207
			colonneChampValeur.setWidth(largeurChampValeur);
221
			colonneConteneur.add(champValeurComboBox, colonneChampValeur);			
208
			colonneConteneur.add(champValeurComboBox, colonneChampValeur);			
222
		} else {
209
		} else {
223
			champValeurTxt.setWidth(largeurChampValeur);
210
			champValeurTxt.setWidth(largeurChampValeur);
224
			colonneChampValeur.setWidth(largeurChampValeur);
211
			colonneChampValeur.setWidth(largeurChampValeur);
225
			colonneConteneur.add(champValeurTxt, colonneChampValeur);
212
			colonneConteneur.add(champValeurTxt, colonneChampValeur);
226
		}
213
		}
227
		ajouterBouton.setWidth(largeurBouton);
214
		ajouterBouton.setWidth(largeurBouton);
228
		colonneBoutonAjouter.setWidth(largeurBouton);
215
		colonneBoutonAjouter.setWidth(largeurBouton);
229
		colonneConteneur.add(ajouterBouton, colonneBoutonAjouter);
216
		colonneConteneur.add(ajouterBouton, colonneBoutonAjouter);
230
 
217
 
231
		/* Modification de l'écouteur du bouton Ajouter */
218
		/* Modification de l'écouteur du bouton Ajouter */
232
		ajouterBouton.removeAllListeners();
219
		ajouterBouton.removeAllListeners();
233
		ajouterBouton.addSelectionListener(new SelectionListener<ButtonEvent>() {
220
		ajouterBouton.addSelectionListener(new SelectionListener<ButtonEvent>() {
234
			public void componentSelected(ButtonEvent ce) {
221
			public void componentSelected(ButtonEvent ce) {
235
				// récupération de la valeur du champ "Valeur"
222
				// récupération de la valeur du champ "Valeur"
236
				String valeurChamp = "";
223
				String valeurChamp = "";
237
				if (champValeurEstComboBox) {
224
				if (champValeurEstComboBox) {
238
					if (champValeurComboBox.getValeur() != null) {
225
					if (champValeurComboBox.getValeur() != null) {
239
						Valeur val = new Valeur(champValeurComboBox.getValeur());
226
						Valeur val = new Valeur(champValeurComboBox.getValeur());
240
						valeurChamp = val.getNom();
227
						valeurChamp = val.getNom();
241
					}
228
					}
242
				} else {
229
				} else {
243
					valeurChamp = champValeurTxt.getValue();
230
					valeurChamp = champValeurTxt.getValue();
244
				}
231
				}
245
				
232
				
246
				// validation de la valeur avant ajout
233
				// validation de la valeur avant ajout
247
				if ((valeurChamp == null) || valeurChamp.trim().equals("") || valeurChamp.trim().equals(valeurParDefaut))	{
234
				if ((valeurChamp == null) || valeurChamp.trim().equals("") || valeurChamp.trim().equals(valeurParDefaut))	{
248
					MessageBox.alert(titreErreur, valeurVideMsg, null);
235
					MessageBox.alert(titreErreur, valeurVideMsg, null);
249
				} else if (valeurs.get(valeurChamp) != null){
236
				} else if (valeurs.get(valeurChamp) != null){
250
					MessageBox.alert(titreErreur, valeurIdentiqueMsg, null);							
237
					MessageBox.alert(titreErreur, valeurIdentiqueMsg, null);							
251
				} else {
238
				} else {
252
					if (validationMasque != null && !valeurChamp.matches(validationMasque)) 	{
239
					if (validationMasque != null && !valeurChamp.matches(validationMasque)) 	{
253
						MessageBox.alert(titreErreur, valeurNonValideMsg, null);
240
						MessageBox.alert(titreErreur, valeurNonValideMsg, null);
254
					} else { // VALIDATION OK
241
					} else { // VALIDATION OK
255
						Valeur type = new Valeur(champTypesComboBox.getValeur());
242
						Valeur type = new Valeur(champTypesComboBox.getValeur());
256
						String typeNomStr = type.getNom();
243
						String typeNomStr = type.getNom();
257
						String typeIdStr = type.getId();
244
						String typeIdStr = type.getId();
258
 
245
 
259
						if (typeIdStr.trim().equals(""))	{
246
						if (typeIdStr.trim().equals(""))	{
260
							MessageBox.alert(Mediateur.i18nM.titreErreurSaisie(), Mediateur.i18nM.typeChampMulti(), null);
247
							MessageBox.alert(Mediateur.i18nM.titreErreurSaisie(), Mediateur.i18nM.typeChampMulti(), null);
261
						} else {
248
						} else {
262
							ajouterValeur(valeurChamp, typeNomStr, typeIdStr);
249
							ajouterValeur(valeurChamp, typeNomStr, typeIdStr);
263
						}
250
						}
264
					}
251
					}
265
				}
252
				}
266
			}
253
			}
267
		});
254
		});
268
	}
255
	}
269
	
256
	
270
	private void ajouterValeurAuRecapitulatif(String texte, String id) {
257
	private void ajouterValeurAuRecapitulatif(String texte, String id) {
271
		String texteRecapitulatif = "";
258
		String texteRecapitulatif = "";
272
		if (champRecapitulatif.getValue() != null)	{
259
		if (champRecapitulatif.getValue() != null)	{
273
			texteRecapitulatif = champRecapitulatif.getValue();
260
			texteRecapitulatif = champRecapitulatif.getValue();
274
		}
261
		}
275
		texteRecapitulatif += id + aDonnee.SEPARATEUR_TYPE_VALEUR + texte + aDonnee.SEPARATEUR_VALEURS;
262
		texteRecapitulatif += id + aDonnee.SEPARATEUR_TYPE_VALEUR + texte + aDonnee.SEPARATEUR_VALEURS;
276
		champRecapitulatif.setValue(texteRecapitulatif);
263
		champRecapitulatif.setValue(texteRecapitulatif);
277
	}
264
	}
278
}
265
}