]> SALOME platform Git repositories - tools/eficas.git/commitdiff
Salome HOME
au milieu du gué
authorPASCALE NOYRET <A96028@dsp0887683.atlas.edf.fr>
Mon, 5 Oct 2020 16:45:10 +0000 (18:45 +0200)
committerPASCALE NOYRET <A96028@dsp0887683.atlas.edf.fr>
Mon, 5 Oct 2020 16:45:10 +0000 (18:45 +0200)
Efi2Xsd/AccasXsd.py

index f003fe029558d34166488067caaa951410d374a5..3b4d855202d250409de2a25bd6127300ef15f8e5 100755 (executable)
@@ -153,6 +153,7 @@ class X_definition:
           objAComparer=listePossible[indice]
           if self.compare(objAComparer) : 
              self.nomDuTypePyxb=objAComparer.nomDuTypePyxb
+             if self.nom=='FactE' : print (2,self.aCreer)
              return objAComparer.nomDuTypePyxb
           indice += 1
        self.aCreer = True
@@ -202,7 +203,7 @@ class X_compoFactoriseAmbigu(X_definition):
        #print ('self.mcXSD',self.mcXSD)
        self.texteComplexe += finTypeSubstDsBlocFactorise
        self.texteComplexe +=self.texteComplexeVenantDesFils
-       self.texteComplexe=self.texteComplexe+self.texteComplexeVenantDesFils
+       #self.texteComplexe=self.texteComplexe+self.texteComplexeVenantDesFils
        #print ('fin pour prepareDumpXSD pour', self.nom)
 
    def compare(self,autreMC):
@@ -296,11 +297,11 @@ class X_compoFactoriseAmbigu(X_definition):
        # on ne fait rien, tout a ete fait dans le init
        self.texteElt=substDsSequence.format(self.code,self.nomDuTypePyxb,0,1)
 
-   #def nomComplet(self) :
-   #    print ('dans nomComplet pourquoi ?',self, self.nom)
+   def nomComplet(self) :
+       print ('dans nomComplet pourquoi ?',self, self.nom)
 
        
-   def factoriseEtCreeDump(self, laListe, indent=2 ,nomAppel=None, debug=False):
+   def factoriseEtCreeDump(self, laListe, indent=2 ,nomAppel=None, debug=True):
        if debug : print ('_______________________________ factoriseEtCreeDump')
        if debug : print(self.nom, laListe, indent, nomAppel)
        maListeRetour=[]
@@ -342,13 +343,14 @@ class X_compoFactoriseAmbigu(X_definition):
           creeChoice=True
           creeSequence=False
 
+       #print (aReduire)
        for nomMC in aReduire.keys():
            listeSuivante=aReduire[nomMC]
            if creeChoice and  listeSuivante != [[]] :
               self.texteComplexe += '\t'*(indent) +  debSequenceDsBloc; indent=indent+1
            self.ajouteAuxTextes(nomMC,indent)
            if listeSuivante == [[]] : continue # Est-ce toujours vrai ? 
-           if len(listeSuivante) == 1 : self.ajouteAuxTextes(listeSuivante[0],indent)
+           if len(listeSuivante) == 1 :  print (listeSuivante[0]) ;self.ajouteAuxTextes(listeSuivante[0],indent)
            else : self.factoriseEtCreeDump(listeSuivante, indent+int(creeSequence),nomMC)
            if creeChoice   : indent=indent -1 ; self.texteComplexe += '\t'*(indent) + finSequenceDsBloc
 
@@ -369,7 +371,11 @@ class X_compoFactoriseAmbigu(X_definition):
        
        
    def ajouteAuxTextes(self,nomMC,indent) :
+       #if nomMC =='FactE' : 
+       #   import traceback
+       #   traceback.print_stack()
        #print ('ajouteAuxTextes', nomMC, self.nom, self.entites)
+       if nomMC =='B' :print ('ajouteAuxTextes', nomMC, self.nom)
        #for i in self.entites.keys() : print (self.entites[i][0].nom)
        if (indent  > 3) : indent = indent - 3 
        else : indent = 0
@@ -388,7 +394,6 @@ class X_compoFactoriseAmbigu(X_definition):
              print ('Projection XSD impossible, changez un des ', nomMC)
              exit()
 
-       
        # cette boucle ne fonctionne que pour des SIMP
        resteATraiter=copy(self.entites[nomMC])
        #print ('________resteATraiter', resteATraiter)
@@ -752,10 +757,10 @@ class X_SIMP (X_definition):
        self.nomDuTypeDeBase = self.traduitType()
        if not multiple : 
           self.nomDuTypePyxb   = self.definitNomDuTypePyxb()
-          if first : self.aCreer = True
+          #if first : self.aCreer = True
        elif first :
           self.nomDuTypePyxb   = self.definitNomDuTypePyxb(forceACreer=1)
-          self.aCreer = True
+          #self.aCreer = True
        #else : print ('multiple and not first', self.aCreer)