X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=InterfaceQT4%2FpolitiquesValidation.py;h=3c89ba3c6ac3a999a517d327df226d35b5839013;hb=61f2a263b67981f299c496ce7ef8bccc3ac6e68b;hp=062f9a870cce77db7a569f16586a714264561857;hpb=d41b1c52d0c35b655f6feabfe816a3c541f3a92a;p=tools%2Feficas.git diff --git a/InterfaceQT4/politiquesValidation.py b/InterfaceQT4/politiquesValidation.py index 062f9a87..3c89ba3c 100644 --- a/InterfaceQT4/politiquesValidation.py +++ b/InterfaceQT4/politiquesValidation.py @@ -32,7 +32,7 @@ class Validation : 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) @@ -47,11 +47,11 @@ class Validation : 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) : @@ -62,10 +62,14 @@ class Validation : 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 @@ -74,11 +78,39 @@ class Validation : 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) : #------------------------------------ @@ -95,18 +127,18 @@ 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 """ @@ -117,17 +149,19 @@ class PolitiquePlusieurs: 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) @@ -135,7 +169,7 @@ class PolitiquePlusieurs: #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 @@ -146,11 +180,13 @@ class PolitiquePlusieurs: # 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) @@ -159,7 +195,7 @@ class PolitiquePlusieurs: def AjoutTuple(self,valeurTuple,index,listecourante): listeRetour=[] - commentaire="Nouvelle valeur acceptée" + commentaire="Nouvelle valeur acceptée" commentaire2="" valide=1 if valeurTuple==None: return @@ -173,7 +209,7 @@ class PolitiquePlusieurs: 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 @@ -184,7 +220,7 @@ class PolitiquePlusieurs: # 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