]> SALOME platform Git repositories - tools/eficas.git/commitdiff
Salome HOME
Pour les types_x
authorpascale.noyret <pascale.noyret@edf.fr>
Fri, 5 Apr 2019 15:54:56 +0000 (17:54 +0200)
committerpascale.noyret <pascale.noyret@edf.fr>
Fri, 5 Apr 2019 15:54:56 +0000 (17:54 +0200)
Efi2Xsd/AccasXsd.py
Efi2Xsd/MCAccasXsd.py

index 95c2ff58f1a004c18b07777febde26dd08abdfe9..adbf9ead9f21a720e0236baee5a6e72fdaa4d697 100755 (executable)
@@ -83,13 +83,14 @@ class X_definitionComposee (X_definition):
        fichierDejaDumpe=False
        for nom in self.ordre_mc:
           mcFils = self.entites[nom]
-          mcFils.dumpXsd()
           if not (isinstance(mcFils, Accas.BLOC_FICHIER)) :
+             mcFils.dumpXsd()
              self.texteComplexe += mcFils.texteElt
              self.texteSimple   += mcFils.texteSimple 
              texteComplexeVenantDesFils += mcFils.texteComplexe
              continue
           elif  not fichierDejaDumpe :
+             mcFils.dumpXsd()
              self.texteComplexe += mcFils.texteElt
              self.texteSimple   += mcFils.texteSimple 
              texteComplexeVenantDesFils += mcFils.texteComplexe
@@ -205,6 +206,7 @@ class X_SIMP (X_definition):
 #--------------------------------
    def dumpXsd(self):
        if PourTraduction  : print (self.nom)
+       #if self.nom == 'Fichier' : import traceback; traceback.print_stack()
        #print ('exploreObjet SIMP')
        self.getCode()
        self.aCreer = True
@@ -346,4 +348,19 @@ class X_JDC_CATA :
         #print (self.texteCata)
         #print (self.texteElt)
         print (self.texteXSD)
+        dico = {}
+        cata = CONTEXT.getCurrentCata() 
+        for  k in list(cata.dictTypesXSD.keys()):
+             if len(cata.dictTypesXSD[k]) > 1:
+                index=0
+                dico[k]={}
+                for definition in cata.dictTypesXSD[k] : 
+                    nom=definition.nomComplet()
+                    if index == 0 : dico[k][nom]=k+str(index)
+                    else :          dico[k][nom]=k+str(index)
+                    index=index+1
+  
+        #import pprint
+        #pprint.pprint(dico)
+
    
index ff7a8dab9c6097c5d782ab7720080a8d9a9166a1..840cc26abddde5cee2cdde9feaddff6728b9c8d5 100755 (executable)
@@ -165,6 +165,9 @@ class X_MCSIMP(X_OBJECT):
         self.objPyxbDeConstruction = None
       else :
         self.monNomClasseModeleMetier='T_'+self.nom
+        if self.nom in list(self.cata.DicoNomTypeDifferentNomElt.keys()) : 
+           self.monNomClasseModeleMetier=self.cata.DicoNomTypeDifferentNomElt[self.nom][self.nomComplet()]
+           print (self.nom, self.monNomClasseModeleMetier)
         self.maClasseModeleMetier=getattr(self.cata.modeleMetier,self.monNomClasseModeleMetier)
         #print (self.maClasseModeleMetier)
         #print (self.valeur)
@@ -224,6 +227,8 @@ class X_MCSIMP(X_OBJECT):
       #print (dir(self.perePyxb))
 
       self.monNomClasseModeleMetier='T_'+self.nom
+      if self.nom in list(self.cata.DicoNomTypeDifferentNomElt.keys()) : 
+         self.monNomClasseModeleMetier=self.cata.DicoNomTypeDifferentNomElt[self.nom][self.nomComplet()]
       self.maClasseModeleMetier=getattr(self.cata.modeleMetier,self.monNomClasseModeleMetier)
       #nvlObj=self.maClasseModeleMetier() 
       #nvlObj=self.maClasseModeleMetier(_validate_constraints=False)
@@ -270,6 +275,8 @@ class X_MCCOMPO(X_OBJECT) :
            objAccas.perePyxb=self
 
       self.monNomClasseModeleMetier='T_'+self.nom
+      if self.nom in list(self.cata.DicoNomTypeDifferentNomElt.keys()) : 
+         self.monNomClasseModeleMetier=self.cata.DicoNomTypeDifferentNomElt[self.nom][self.nomComplet()]
       self.maClasseModeleMetier=getattr(self.cata.modeleMetier,self.monNomClasseModeleMetier)
       if self.objPyxbDeConstruction != None :
         self.objPyxb = self.objPyxbDeConstruction
@@ -401,6 +408,8 @@ class X_JDC (X_MCCOMPO):
    def  __init__(self):
       self.perePyxb=None
       if not self.cata.modeleMetier : return
+      if hasattr(self.cata,'DicoNomTypeDifferentNomElt') : print ('jkllllllllllllllll')
+      if not(hasattr(self.cata,'DicoNomTypeDifferentNomElt')) : self.cata.DicoNomTypeDifferentNomElt={}
       self.monNomClasseModeleMetier=self.code
       self.maClasseModeleMetier=getattr(self.cata.modeleMetier,self.monNomClasseModeleMetier)
       self.objPyxb=self.maClasseModeleMetier()