ADN Open CIS
Сообщество программистов Autodesk в СНГ

28/05/2014

Лёгкое программирование под Autodesk Vault. Часть 19

НазадСодержаниеДалее


Для получения хранилища необходимо вызвать один из методов Get*, которые расположены в FilestoreVaultService:

Служба

Операция

Объект

Опция

Имя метода

FilestoreVaultService

Get

AllKnowledgeVaults

 

GetAllKnowledge Vaults

KnowledgeVault

ById

GetKnowledgeVaul tById

ByName

GetKnowledgeVault ByName

KnowledgeVaults

ByIds

GetKnowledgeVaults ByIds

ByNames

GetKnowledgeVaults ByNames

 

Самый простой – это GetAllKnowledgeVaults, который возвращает все хранилища, за исключением KnowledgeVaultMaster. После этого вы можете вывести работать с этими объектами.

Код - PowerShell: [Выделить]
  1. Add-Type -Path "c:\Program Files (x86)\Autodesk\Autodesk Vault 2014 SDK\bin\Autodesk.DataManagement.Client.Framework.Vault.Forms.dll"
  2. $global:g_login=[Autodesk.DataManagement.Client.Framework.Vault.Forms.Library]::Login($null)
  3. # Получаем все хранилища
  4. $g_login.WebServiceManager.FilestoreVaultService.AllKnowledgeVaults() | Out-GridView

Зная ID либо имена хранилищ, можно получить конкретное хранилище

Код - PowerShell: [Выделить]
  1. Add-Type -Path "c:\Program Files (x86)\Autodesk\Autodesk Vault 2014 SDK\bin\Autodesk.DataManagement.Client.Framework.Vault.Forms.dll"
  2. $global:g_login=[Autodesk.DataManagement.Client.Framework.Vault.Forms.Library]::Login($null)
  3. $KnowledgeVaultID = 2
  4. $KnowledgeVaultName = 'Vault'
  5. $KnowledgeVaultsIDs = @{2,3}
  6. $KnowledgeVaultsNames = @{'Vault', 'PKO'}
  7. # Получаем хранилища по имеющимся данным
  8. $KnowledgeVault1 = $g_login.WebServiceManager.FilestoreVaultService.GetKnowledgeVaultById($KnowledgeVaultID)
  9. $KnowledgeVault2 = $g_login.WebServiceManager.FilestoreVaultService.GetKnowledgeVaultByName($KnowledgeVaultName)
  10. $KnowledgeVault3 = $g_login.WebServiceManager.FilestoreVaultService.GetKnowledgeVaultsByIds($KnowledgeVaultsIDs)
  11. $KnowledgeVault4 = $g_login.WebServiceManager.FilestoreVaultService.GetKnowledgeVaultsByNames($KnowledgeVaultNames)

Автор: Дмитрий Емельянов
Автор перевода: Дмитрий Емельянов

Обсуждение: http://adn-cis.org/forum/index.php?topic=778

Опубликовано 28.05.2014
Отредактировано 06.08.2014 в 14:51:40