OLE Automation et compléments

OLE Automation est un moyen de communiquer avec PowerAMC à partir d'une autre application grâce à l'architecture COM. Vous pouvez écrire un programme à l'aide de n'importe quel langage prenant en charge COM, par exemple les macros de Word et Excel, VB, C++ ou PowerBuilder.Vous pouvez créer des exécutables qui appellent PowerAMC ou des compléments qui sont appelés par PowerAMC.

Les programmes VBScript qui sont exécutés depuis PowerAMC et les programmes OLE Automation sont très similaires, mais OLE requiert de travailler via un objet application PowerAMC, et d'utiliser un typage plus fort. Vous devez : Ce script est lancé depuis l'extérieur de PowerAMC, crée une instance de l'objet application de PowerAMC, et la réutilise pour créer deux MOO via OLE Automation :
'* Purpose:  Ce script affiche le nbre de classes définies dans un MOO dans la fenêtre Résultats.
Option Explicit
' Fonction principale
Sub VBTest()
 ' Définir l'objet application PowerAMC
 Dim PAMC As PdCommon.Application
 ' Lire l'objet application PowerAMC
 Set PAMC = CreateObject("PowerAMC.Application")
' Obtenir le modèle actif courant
 Dim model As PdCommon.BaseModel
 Set model = PAMC.ActiveModel
 If model Is Nothing Then
  MsgBox "Il n'y pas de modèle courant."
 ElsIf Not model.IsKindOf(PdOOM.cls_Model) Then
  MsgBox Le modèle courant n'est pas un MOO."
 Else
  ' Afficher le nombre de classes
  Dim nbClass
  nbClass = Model.Classes.Count
  PAMC.Output "Le modèle '" + model.Name + "' contient " + CStr(nbClass) + " classes."
' Créer un nouveau MOO
  Dim model2 As PdOOM.Class
  Set model2 = PAMC.CreateModel(PdOOM.cls_Model)
  If Not model2 Is Nothing Then
   ' Copier le nom de l'auteur
   model2.Author = Model.Author
   ' Afficher un message dans la fenêtre Résultats
   PAMC.Output "Le modèle '" + model2.Name + "' a été correctement créé + "'."
  Else
   MsgBox "Impossible de créer un MOO."
  End If
 End If
' Libérer l'objet application PowerAMC
 Set PAMC = Nothing
End Sub

Des exemples OLE Automation pour différents langages sont fournis dans le répertoire OLE Automation situé dans votre répertoire d'installation de PowerAMC.