WDForge - Forum

Le forum des développeurs professionnels WinDev ®

Avoir la liste des classes et leurs structure

Discussion sur WinDev®

Message non lupar EMIDEV » Mer 29 Nov 2017 15:51

Bonjour

comme beaucoup j'ai cherché comment avoir la liste des classe et leur structure
dans mon projet windev j'ai des classe issues du modele uml et de l'analyse. il existe un fichier (MonProjet.xdd) que j'ai pris et crypte pour pouvoir le fournir avec l'exe

ensuite dans mon projet j'ai une procedure globale qui me donne la liste des classes et leur structure je peux ainsi faire du code avec de l'indirection et autre

Code: Tout sélectionner
PROCEDURE ListeClasseStructure(pnomFicXdd)

MesClasse est un xmlDocument
MesClasse = XMLOuvre(pnomFicXdd, depuisFichier)

PnomClasse      est une chaîne
pobj              est un objet dynamique
def                      est une Définition
pcode             est une chaîne
pnomProc          est une chaîne

SI MesClasse..NoeudRacine..Occurrence >= 1 ALORS
   POUR TOUT UnNoeudRacine DE MesClasse..NoeudRacine
      // Parcours des sous-noeuds
      POUR TOUT unSousNoeudXML DE UnNoeudRacine
         SI PAS UnicodeVersAnsi(unSousNoeudXML..Nom) ~= "" ALORS    
            PnomClasse = UnicodeVersAnsi(unSousNoeudXML..Attribut[1])
            pnomProc   = "XXX_Recupere_ElementClasse_"+DateHeureSys()
                               // mes classes se nomme Cuser par exemple pour le fichier user donc je rajoute le C
            pcode       = "PROCEDURE "+ pnomProc+"(o)"+RC+"o  = allouer un C"+PnomClasse
            SI Compile(pnomProc,pcode) = "" ALORS
               Exécute(pnomProc,pobj)
               def = RécupèreDéfinition(pobj)
               Var est une Description de Variable
               Trace("---------------------------  "+PnomClasse+"   -------------------------------------------------------")
               POUR TOUT Var DE def..Variable
                  Trace(TAB+Complète(Var..Nom,35)+TAB+"  :  " + Var..Définition..Nom)
               FIN
               libérer(pobj)
            FIN
         FIN
      FIN
   FIN
FIN


on peut bien sur l'adapter avec une autre version d'un fichier (je n'ia pas mis le cryptage dans le code) ou une chaine qui contiendrait toutes les classes a enumerer

voila
bon dev
EMIDEV
Animateur WDForge
 
Messages: 16
Enregistré le: Mer 6 Jan 2016 14:23

Retourner vers WinDev

cron