From: pascale.noyret Date: Wed, 14 Oct 2020 13:04:23 +0000 (+0200) Subject: juste pour montrer a Eric X-Git-Tag: MDM_V0~2^2 X-Git-Url: http://git.salome-platform.org/gitweb/?a=commitdiff_plain;h=0bd925ef12c18d0d30b02e412d86fcde3ee3dbfd;p=tools%2Feficas.git juste pour montrer a Eric --- diff --git a/Efi2Xsd/MCAccasXML.py b/Efi2Xsd/MCAccasXML.py index b7b896b9..82ce5721 100755 --- a/Efi2Xsd/MCAccasXML.py +++ b/Efi2Xsd/MCAccasXML.py @@ -113,7 +113,7 @@ class X_MCSIMP(X_OBJECT): def buildObjPyxb(self, debug=True) : if not self.cata or not self.cata.modeleMetier : return if self.nom == 'Consigne' : return None - #print (self.definition.nomComplet()) + if debug : print (self.definition.nomComplet()) if debug : print ('_______________ X_MCSIMP buildObjPyxb', self.nom, self,self.valeur) if debug and self.objPyxbDeConstruction == None : print (self.nom, ' pas de pyxb') elif debug : print ('objPyxbDeConstruction', self.objPyxbDeConstruction) @@ -155,15 +155,22 @@ class X_MCSIMP(X_OBJECT): #if self.objPyxb !=None : self.objPyxb.objAccas=self + if isinstance(self.valeur,A_ASSD.ASSD) : + setattr(self.valeur,'typeUtilisateur','toto') + print (dir(self.definition)) + print (dir(self.valeur)) if debug : print ('X_MCSIMP', self.nom, self.objPyxb, ) if debug : print ('__________ fin X_MCSIMP', self.objPyxb, self.nom, self, self.maClasseModeleMetier,self.valeur) - def setValeurObjPyxb(self,newVal, debug=False): + def setValeurObjPyxb(self,newVal, debug=True): if not self.cata or not self.cata.modeleMetier : return if debug : print (' ___________________________ dans setValeurObjPyxb MCSIMP ', self.nom, newVal) if debug : print (' self.perePyxb = ', self.perePyxb.nom) - if inspect.isclass(newVal) and issubclass(newVal,A_ASSD) : newVal = newVal.nom + isUserASSD = False + if inspect.isclass(newVal) and issubclass(newVal,A_ASSD) : + isUserASSD = True + newVal = newVal.nom if debug : print (self.nom , ' a pour pere', self.perePyxb, self.perePyxb.nom, self.perePyxb.objPyxb) if debug : print ('debut du setValeurObjPyxb pour ', self.nom, self.perePyxb.objPyxb.orderedContent()) @@ -177,6 +184,8 @@ class X_MCSIMP(X_OBJECT): self.val=newVal if debug : print ('fin du setValeurObjPyxb pour ', self.nom, self.perePyxb.objPyxb.orderedContent()) + if inspect.isclass(newVal) and issubclass(newVal,A_ASSD) : + newVal = newVal.nom setattr(self.perePyxb.objPyxb,self.nom,nvlObj) trouve=False indice=0 @@ -190,6 +199,8 @@ class X_MCSIMP(X_OBJECT): indice+=1 if not trouve : print ('Attention souci au changement de valeur de ', self.nom) self.objPyxb=nvlObj + if isUserASSD : setattr(self.objPyxb,name,newVal) + if isUserASSD : print(self.objPyxb.typeUtilisateur) #self.objPyxb.objAccas=self if debug : print ('fin du setValeurObjPyxb pour ', self.nom, self.perePyxb.objPyxb.orderedContent()) @@ -420,7 +431,7 @@ class X_JDC (X_MCCOMPO): return (self.objPyxb.toDOM().toprettyxml()) - def analyseFromXML(self,debug=False): + def analyseFromXML(self,debug=True): print ("je suis ds analyseFromXML -- > appel ds analyseXML de I_JDC.py") print (self.procedure) if self.procedure == "" : return @@ -428,6 +439,8 @@ class X_JDC (X_MCCOMPO): for contentObjEtape in self.objPyxb.orderedContent(): objEtape=contentObjEtape.value objEtape.dictArgs=(self.pyxbToDict(objEtape)) + # attention au call d Oper qui renomme l objet pyxb + if hasattr(objEtape,'name') : sdName = objEtape.name objEtape.monNomClasseAccas=objEtape._ExpandedName.localName() objEtape.monNomClasseAccas=objEtape.monNomClasseAccas[2:] # doute sur les 2 lignes suivantes : objEtape peut etre contentObjEtape 2juin20 @@ -445,6 +458,7 @@ class X_JDC (X_MCCOMPO): if debug : print ('dictArgs',objEtape.dictArgs) if debug : print ('dictPyxb',objEtape.dictPyxb) objAccasEtape=maClasseAccas(**(objEtape.dictArgs)) + if hasattr(objEtape,'name') : objAccasEtape.setName(sdName) if debug : print (objAccasEtape) if debug : print ( 'hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh') @@ -459,7 +473,7 @@ class X_JDC (X_MCCOMPO): # traitement SIMP # --------------- if isinstance(objAAnalyser, pyxb.binding.basis.simpleTypeDefinition): - #print ('je suis un MCSimple') + print ('je suis un MCSimple') # il faut traiter les UserASSD # traitement scalaire objAAnalyser.dictPyxb=objAAnalyser