# retrouveOrdreCataStandard fait une analyse textuelle du catalogue
# remplace par retrouveOrdreCataStandardAutre qui utilise une numerotation
# des mots cles a la creation
- #print (self.cata)
#print (dir(self.cata))
self.retrouveOrdreCataStandardAutre()
if self.appliEficas.maConfiguration.modeNouvCommande == "initial" : self.retrouveOrdreCataStandard()
sys.path[:0] = [rep_cata]
self.appliEficas.listeAEnlever.append(rep_cata)
+ # PNPNPN pas propre __ A reflechir
+ if 'cata_Vimmp' in list(sys.modules.keys()) :
+ del sys.modules['cata_Vimmp']
+ print (list(sys.modules.keys()))
if nom_cata in list(sys.modules.keys()) :
del sys.modules[nom_cata]
+
for k in sys.modules:
if k[0:len(nom_cata)+1] == nom_cata+'.':
del sys.modules[k]
# mais il ne faut pas mettre la valeur des MC utilisant la classe a None
# sinon, le siValide ne peut rien faire
# c est pourquoi il faut gerer listeDesValeursSupprimees
+ # et une liste des valeurs qui peut contenir un melange objet/nom selon
+ # la creation des objets dans le .comm
if not hasattr(self,'listeNomsObjsCrees') : self.listeNomsObjsCrees = []
newlisteNomsObjsCrees = []
change=False
if not isinstance(self.valeur,(list, tuple)) : valTraitee = (self.valeur,)
else : valTraitee = self.valeur
-
+
for v in valTraitee:
if not (v in self.listeNomsObjsCrees):
change=True
self.jdc.sds_dict[v] = newObj
newObj.sdnom = v
newlisteNomsObjsCrees.append(v)
+
for oldv in self.listeNomsObjsCrees :
if oldv not in valTraitee :
change=True
listeSupprimees.append(self.jdc.sds_dict[oldv])
self.jdc.sds_dict.pop(oldv)
self.listeNomsObjsCrees.remove(oldv)
+
for v in newlisteNomsObjsCrees :
self.listeNomsObjsCrees.append(v)
+
if not change : return
if classeACreer in list(self.jdc.utilise_un_sds_dict.keys()):
for MC in self.jdc.utilise_un_sds_dict[classeACreer] :
- #PNPNPN
if MC.valeur == None : return
if MC.definition.max == 1 :
if isinstance(MC.valeur, str) and MC.valeur in list(self.jdc.sds_dict.keys()):
for val in MC.valeur :
if isinstance(val, str) and val in list(self.jdc.sds_dict.keys()):
newVal.append(self.jdc.sds_dict[val])
+ else:
+ newVal.append(val)
MC.valeur=newVal
if MC.definition.max == 1 :