Comme n'importe quel objet de PowerAMC, les extensions peuvent être lues, créées et modifiées à l'aide du scripting.
Pour plus d'informations sur les extensions, voir Extensions.
Le script suivant illustre la façon dont vous pouvez accéder à une extension existante, la parcourir, y créer un attribut étendu au sein de la définition et enfin y modifier les valeurs d'attribut étendu. Une fonction est créée afin de permettre de développer les noeuds de catégories qui figurent dans l'arborescence de la boîte de dialogue Propriétés de l'extension.
Dim M Set M = ActiveModel 'Récupère la première extension dans le modèle actif Dim X Set X = M.ExtendedModelDefinitions.Item(0) 'Développer l'arborescence de catégories en utilisant la fonction searchObject (détails plus bas) Dim C Set C = SearchObject (X.Categories, "Settings") Set C = SearchObject (C.Categories, "Extended Attributes") Set C = SearchObject (C.Categories, "Objects") Set C = SearchObject (C.Categories, "Entity") 'Create extended attribute in the Entity category Dim A Set A = C.Categories.CreateNew (cls_ExtendedAttributeTargetItem) 'Définit les propriétés de l'attribut étendu A.DataType = 10 'integer A.Value = 10 A.Name = "Z" A.Code = "Z" 'Récupère la première entité du modèle actif Dim E Set E = M.entities.Item(0) 'Récupère les valeurs de l'attribut étendu créé dans un boîte message msgbox E.GetExtendedAttribute("X.Z") 'Change les valeurs de l'attribut étendu E.SetExtendedAttribute "X.Z", 5 'Retrieve the modified values of the extended attribute in a message box msgbox E.GetExtendedAttribute("X.Z") ******************** 'Détaille la fonction SearchObject qui permet de parcourir une collection à partir de son nom et l'objet recherché '* SUB SearchObject Function SearchObject (Coll, Name) 'For example Coll = Categories and Name = Settings Dim Found, Object For Each Object in Coll If Object.Name = Name Then Set Found = Object End If Next Set SearchObject = Found End Function