Bonjour,

Sous PowerAMC V16.5, et en Vb script, je cherche à lister tous les attributs étendus d'un objet, et plus particulièrement des objets Enterprise Application du modèle Enterprise Achitect.
Si je connais le nom de l'attribut étendu (ici pour l'exemple ProjetAnneeDebut) : pas de soucis, le code suivant fonctionne très bien :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
for each App in M.EnterpriseApplications
    App.getExtendedAttribute ("DEf_etendu_Carto_URBA_PAMC_V16.5.ProjetAnneeDebut")
next
où "DEf_etendu_Carto_URBA_PAMC_V16.5" est mon "extension";

Mais je voudrais lister tous les attributs étendus (et leur valeurs) de façon générique, cad sans à avoir à connaitre à l'avance le nombre et le nom de ces attributs étendus.
En gros quelque chose comme :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
for each App in M.EnterpriseApplications
    for each ExtAttrib In  .....
      text = ExtAttrib.name & " = " & App.getExtendedAttribute ("DEf_etendu_Carto_URBA_PAMC_V16.5." & ExtAttrib)
    next
next
j'ai essayé le code suivant :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
For Each ModelExtension In ActiveModel.ExtendedModelDefinitions
      output "extension : " & ModelExtension.name

   For Each ExtAttr in ModelExtension.GetMetaExtensionsForClass(PdEAM.cls_EnterpriseApplication, Cls_ExtendedAttributeTargetItem)
     output "Nom de l'attribut : " + ExtAttr.Name
     output "Identification de l'objet : " + ExtAttr.ObjectID
     output "Nom du modele : " + ExtAttr.Model
  Next
Next
si la seconde ligne est ok, elle renvoie bien la référence de l'extension :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
output "extension : " & ModelExtension.name   => extension : DEf_etendu_Carto_URBA_PAMC_V16.5
par contre j'ai une erreur à la 4éme ligne :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
Erreur d'exécution Microsoft VBScript
Cet objet ne gère pas cette propriété ou cette méthode: 'ModelExtension.GetMetaExtensionsForClass' (0x800A01B6)
At line 4, character 2
merci d'avance pour tous les éléments de réponse que vous pourriez m'amener.

PS. ci joint copie d'écran de mon extension.

bien cordialement