Chapter 9 Accès aux objets via VBScript


Manipulation de l'espace de travail à l'aide de VBScript

PowerAMC vous permet d'accéder aux fonctionnalités de l'espace de travail via VBScript en utilisant la propriété globale ActiveWorkspace As BaseObject.

Elle vous permet de récupérer l'espace de travail courant

L'objet Workspace correspond au noeud racine Espace de travail dans l'explorateur d'objets.

Les principales actions que vous pouvez effectuer sont les suivantes :

Pour charger un espace de travail :

Utiliser Description
Load (ByVal filename As String = "") As Boolean Charge l'espace de travail depuis un emplacement donné

Pour enregistrer un espace de travail :

Utiliser Description
Save (ByVal filename As String = "") As Boolean Enregistre l'espace de travail à un emplacement donné

Pour fermer un espace de travail :

Utiliser Description
Close () Ferme l'espace de travail courant

Vous pouvez également manipuler le contenu d'un espace de travail à l'aide des éléments suivants :

Vous pouvez utiliser la méthode AddDocument(ByVal filename As String, ByVal position As Long = -1) As BaseObject sur un WorkspaceFolder pour ajouter des documents à l'espace de travail.

Exemple de manipulation d'espace de travail :

Option Explicit
' Close existing workspace and save it to Temp
Dim workspace, curentFolder
Set workspace = ActiveWorkspace
workspace.Load "%_EXAMPLES%\mywsp.sws"
Output "Saving current workspace to ""Example directory : "+EvaluateNamedPath("%_EXAMPLES%\temp.sws")
workspace.Save "%_EXAMPLES%\Temp.SWS"
workspace.Close
workspace.Name = "VBS WSP"
workspace.FileName = "VBSWSP.SWS"
workspace.Load "%_EXAMPLES%\Temp.SWS"
dim Item, subitem
for each Item in workspace.children
   If item.IsKindOf(PdWsp.cls_WorkspaceFolder) Then 
      ShowFolder (item)
      renameFolder item,"FolderToRename", "RenamedFolder"   
      deleteFolder item,"FolderToDelete"
      curentFolder = item
   ElsIf item.IsKindOf(PdWsp.cls_WorkspaceModel) Then    
   ElsIf item.IsKindOf(PdWsp.cls_WorkspaceFile) Then    
   End if    
next
 Dim subfolder
'insert folder in root
 Set subfolder = workspace.Children.CreateNew(PdWsp.cls_WorkspaceFolder)
 subfolder.name = "Newfolder(VBS)"
 'insert folder in root at pos 6
 Set subfolder = workspace.Children.CreateNewAt(5, PdWsp.cls_WorkspaceFolder)
 subfolder.name = "Newfolder(VBS)insertedAtPos5"'
   ' add a new folder in this folder
 Set subfolder = subfolder.Children.CreateNew(PdWsp.cls_WorkspaceFolder)
 subfolder.name = "NewSubFolder(VBS)"
 subfolder.AddDocument EvaluateNamedPath("%_EXAMPLES%\pdmrep.rtf")
 subfolder.AddDocument EvaluateNamedPath("%_EXAMPLES%\cdmrep.rtf")
 subfolder.AddDocument EvaluateNamedPath("%_EXAMPLES%\project.pdm")
 subfolder.AddDocument EvaluateNamedPath("%_EXAMPLES%\demo.oom")
 dim lastmodel
 set lastmodel = subfolder.AddDocument (EvaluateNamedPath("%_EXAMPLES%\Ordinateurs.fem"))
 lastmodel.open
 lastmodel.name = "Computers"
 lastmodel.close
 'detaching model from workspace
 lastmodel.delete
workspace.Save "%_EXAMPLES%\Final.SWS"

 


Copyright (C) 2005. Sybase Inc. All rights reserved.