def TesteUneValeur(self,valeurentree):
valeur,validite=self.node.item.eval_valeur(valeurentree)
if not validite :
- commentaire = "impossible d'évaluer : %s " %`valeurentree`
+ commentaire = "impossible d'évaluer : %s " %`valeurentree`
return valeur,validite,commentaire
testtype,commentaire = self.node.item.object.verif_type(valeur)
commentaire=" "
if not validite :
- commentaire = "impossible d'évaluer : %s " %`valeurentree`
+ commentaire = "impossible d'évaluer : %s " %`valeurentree`
return valeur, validite, commentaire
# ----------------------------------------------------------------------------------------
-# Méthodes utilisées pour la manipulation des items en notation scientifique
+# Méthodes utilisées pour la manipulation des items en notation scientifique
# a mettre au point
# ----------------------------------------------------------------------------------------
def SetValeurTexte(self,texteValeur) :
if str(clef) != str(texteValeur) :
self.node.item.object.init_modif()
clefobj=self.node.item.object.GetNomConcept()
- if not self.parent.dict_reels.has_key(clefobj):
- self.parent.dict_reels[clefobj] = {}
- self.parent.dict_reels[clefobj][clef]=texteValeur
- self.parent.dict_reels[clefobj]
+ if not self.parent.appliEficas.dict_reels.has_key(clefobj):
+ self.parent.appliEficas.dict_reels[clefobj] = {}
+ self.parent.appliEficas.dict_reels[clefobj][clef]=texteValeur
+ self.parent.appliEficas.dict_reels[clefobj]
+ if clefobj=="" :
+ if not self.parent.appliEficas.dict_reels.has_key(self.node.item.object.etape) :
+ self.parent.appliEficas.dict_reels[self.node.item.object.etape] = {}
+ self.parent.appliEficas.dict_reels[self.node.item.object.etape][clef]=texteValeur
self.node.item.object.fin_modif()
except:
pass
valeurTexte=valeur
if "R" in self.node.item.object.definition.type:
clefobj=self.node.item.object.GetNomConcept()
- if self.parent.dict_reels.has_key(clefobj):
- if self.parent.dict_reels[clefobj].has_key(valeur):
- valeurTexte=self.parent.dict_reels[clefobj][valeur]
+ if self.parent.appliEficas.dict_reels.has_key(clefobj):
+ if self.parent.appliEficas.dict_reels[clefobj].has_key(valeur):
+ valeurTexte=self.parent.appliEficas.dict_reels[clefobj][valeur]
return valeurTexte
+ def AjoutDsDictReel(self,texteValeur):
+ # le try except est nécessaire pour saisir les paramétres
+ try :
+ if "R" in self.node.item.object.definition.type:
+ if str(texteValeur)[0] != "'":
+ clef=eval(texteValeur)
+ if str(clef) != str(texteValeur) :
+ clefobj=self.node.item.object.GetNomConcept()
+ if not self.parent.appliEficas.dict_reels.has_key(clefobj):
+ self.parent.appliEficas.dict_reels[clefobj] = {}
+ self.parent.appliEficas.dict_reels[clefobj][clef]=texteValeur
+ if clefobj=="" :
+ if not self.parent.appliEficas.dict_reels.has_key(self.node.item.object.etape) :
+ self.parent.appliEficas.dict_reels[self.node.item.object.etape] = {}
+ self.parent.appliEficas.dict_reels[self.node.item.object.etape][clef]=texteValeur
+
+ except:
+ pass
+
+ def AjoutDsDictReelEtape(self):
+ try:
+ if self.parent.appliEficas.dict_reels.has_key(self.node.item.object) :
+ self.parent.appliEficas.dict_reels[self.node.item.sdnom]=self.parent.appliEficas.dict_reels[self.node.item.object]
+ del self.parent.appliEficas.dict_reels[self.node.item.object]
+ except :
+ pass
+
+
#------------------------------------
class PolitiqueUnique(Validation) :
#------------------------------------
if validite :
validite=self.node.item.set_valeur(valeur)
if self.node.item.isvalid():
- commentaire = "Valeur du mot-clé enregistrée"
+ commentaire = "Valeur du mot-clé enregistrée"
self.SetValeurTexte(str(valeurentree))
else:
cr = self.node.item.get_cr()
- commentaire = "Valeur du mot-clé non autorisée "+cr.get_mess_fatal()
+ commentaire = "Valeur du mot-clé non autorisée "+cr.get_mess_fatal()
self.node.item.set_valeur(ancienne_val)
return validite, commentaire
-#------------------------
-class PolitiquePlusieurs:
-#------------------------
+#--------------------------------------
+class PolitiquePlusieurs(Validation):
+#--------------------------------------
"""
classe servant pour les entrees ne demandant qu un mot clef
"""
def AjoutValeurs(self,listevaleur,index,listecourante):
listeRetour=[]
- commentaire="Nouvelle valeur acceptée"
+ commentaire="Nouvelle valeur acceptée"
commentaire2=""
valide=1
+ if listevaleur==None: return
+ if listevaleur=="": return
if not( type(listevaleur) in (types.ListType,types.TupleType)) :
listevaleur=tuple(listevaleur)
for valeur in listevaleur :
# On teste le type de la valeur
+ valeurScientifique=valeur
valide=self.node.item.valide_item(valeur)
+ print valeur
if not valide :
- #print self.__class__
- #if not testtype :
try :
valeur,valide=self.node.item.eval_valeur(valeur)
valide,commentaire = self.node.item.object.verif_type(valeur)
#return testtype,commentaire,"",listeRetour
pass
if not valide:
- commentaire="Valeur "+str(valeur)+ " incorrecte : ajout à la liste refusé"
+ commentaire="Valeur "+str(valeur)+ " incorrecte : ajout à la liste refusé"
commentaire2=self.node.item.info_erreur_item()
return valide,commentaire,commentaire2,listeRetour
# On traite le cas ou la liste n est pas valide pour un pb de cardinalite
min,max = self.node.item.GetMinMax()
if len(listecourante) + 1 >= max :
- commentaire="La liste a déjà atteint le nombre maximum d'éléments,ajout refusé"
+ commentaire="La liste a déjà atteint le nombre maximum d'éléments,ajout refusé"
return valide,commentaire,commentaire2,listeRetour
if len(listecourante) + 1 > min :
+ commentaire=""
return valide,commentaire,commentaire2,listeRetour
# On ajoute la valeur testee a la liste courante et a la liste acceptee
+ self.AjoutDsDictReel(valeurScientifique)
listecourante.insert(index,valeur)
index=index+1
listeRetour.append(valeur)
def AjoutTuple(self,valeurTuple,index,listecourante):
listeRetour=[]
- commentaire="Nouvelle valeur acceptée"
+ commentaire="Nouvelle valeur acceptée"
commentaire2=""
valide=1
if valeurTuple==None: return
except :
pass
if not valide:
- commentaire="Valeur "+str(valeurTuple)+ " incorrecte : ajout à la liste refusé"
+ commentaire="Valeur "+str(valeurTuple)+ " incorrecte : ajout à la liste refusé"
commentaire2=self.node.item.info_erreur_item()
return valide,commentaire,commentaire2,listeRetour
# On traite le cas ou la liste n est pas valide pour un pb de cardinalite
min,max = self.node.item.GetMinMax()
if len(listecourante) + 1 >= max :
- commentaire="La liste a déjà atteint le nombre maximum d'éléments,ajout refusé"
+ commentaire="La liste a déjà atteint le nombre maximum d'éléments,ajout refusé"
return valide,commentaire,commentaire2,listeRetour
listeRetour.append(valeurTuple)
return valide,commentaire,commentaire2,listeRetour