Vous pouvez dynamiquement récupérer et définir des propriétés étendues d'objets telles que les attributs et les collections à l'aide de scripts.
La syntaxe pour identifier une propriété d'objet est la suivante :
"<TargetCode>.<PropertyName>"
Par exemple, pour récupérer l'attribut étendu MyAttribute depuis l'objet importXXX, vous utilisez :
GetExtendedAttribute("importXXX.MyAttribute")
Notez que si le script est à l'intérieur d'un profil (par exemple dans un script de vérification personnalisée), vous pouvez utiliser la variable %CurrentTargetCode% à la place de TargetCode codé en dur, afin de favoriser la réutilisation de votre script.
Par exemple :
GetExtendedAttribute("%CurrentTargetCode%.MyAttribute")
Dans l'exemple suivant, nous allons :
If (not ExistingModel Is Nothing) and (not FoundClass Is Nothing) Then ' Modifier l'attribut étendu sur la classe Dim ExaName ExaName = "importXXX.MyAttribute" ' nom d'attribut préfixé par le code d'extension If FoundClass.HasExtendedAttribute(ExaName) Then output "Atrtribut étendu accessible" FoundClass.SetExtendedAttributeText ExaName, "1024" FoundClass.SetExtendedAttribute ExaName, 2048 Dim valAsText, valAsInt valAsText = FoundClass.GetExtendedAttributeText(ExaName) valAsInt = FoundClass.GetExtendedAttribute(ExaName) End If ' Modifier la collection étendue sur la classe Dim ExColName, ExCol ExColName = "importXXX.MyCollection" ' nom de collection préfixé par le code d'extension Set ExCol = FoundClass.GetExtendedCollection(ExColName) If not ExCol is Nothing Then output "Collection étendue accessible" ' La collection étendue peut être utilisée comme une collection standard ' par exemple, nous ajoutons la classe dans sa propre collection étendue ExCol.Add FoundClass Set ExCol = Nothing End If End If