From 7dc6ffff408af03693ec2dd527011b84284434eb Mon Sep 17 00:00:00 2001 From: PASCALE NOYRET Date: Thu, 24 Mar 2022 17:55:21 +0100 Subject: [PATCH] correction du bug sur les defaut de liste --- Efi2Xsd/AccasXsd.py | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/Efi2Xsd/AccasXsd.py b/Efi2Xsd/AccasXsd.py index c85ea6e3..38e06de9 100755 --- a/Efi2Xsd/AccasXsd.py +++ b/Efi2Xsd/AccasXsd.py @@ -738,8 +738,10 @@ class X_definitionComposee (X_definition): if self.label != autreMC.label : return False if hasattr(self,'nomXML') and hasattr(autreMC,'nomXML') and self.nomXML==autreMC.nomXML and self.nomXML != None : return True for attr in ( 'regles', 'fr', 'defaut', 'min' ,'max', 'position' , 'docu' ) : - val1=getattr(self,attr) - val2=getattr(autreMC,attr) + try : val1=getattr(self,attr) + except : val1 = None + try : val2=getattr(autreMC,attr) + except : val2 = None if val1 != val2 : return False if len(self.entites) != len(autreMC.entites) : return False for defFille in self.entites.keys(): @@ -980,6 +982,7 @@ class X_SIMP (X_definition): def dumpXsd(self, dansFactorisation=False, multiple=False, first=False, debug=False): #debug = True #if PourTraduction : print (self.nom) + if self.nom == 'test_simp_2_5' : debug = True if debug : print ('X_SIMP dumpXsd pour', self.nom, '___________________________') self.prepareDumpXSD() # si inUnion la comparaison est fausse : on cree le nomDuType @@ -1035,7 +1038,7 @@ class X_SIMP (X_definition): # pas d elt si on est dans multiple # sauf si on est le '1er' dans un element ambigu if not multiple : - #print ('je passe la pas multiple') + if debug : print ('je passe la pas multiple') texteAide = "" if self.ang != '' : texteAide = self.ang else : texteAide = self.fr @@ -1045,11 +1048,13 @@ class X_SIMP (X_definition): texteAide = texteAide+'\nPossible choices for '+ self.nom + 'at this place : \n'+str(self.into)+'\n' if self.defaut : + if debug : print ('j ai un defaut') if self.max > 1 or self.max == '**' or self.max == float('inf') : txtDefaut="" for val in self.defaut : txtDefaut+=str(val) + " " + print (self.defaut, txtDefaut) # cela ne fonctionne pas tres bien. a revoir - txtDefaut+=txtDefaut[0:-1] + txtDefaut =txtDefaut[0:-1] if not('TXM' in (self.type)) : # a revoir pour les tuples avec defaut if texteAide != '' : self.texteElt = eltDsSequenceWithDefautAndHelp.format(self.nom,self.code,self.nomDuTypePyxb,minOccurs,1,txtDefaut,texteAide) -- 2.39.2