12/04/2014
					Лёгкое программирование под Autodesk Vault. Часть 11
Обновление группы крайне похоже на её создание. Давайте сравним набор параметров методов создания группы и обновления информации группы.
| 
 Параметр  | 
 AddGroup  | 
 UpdateGroupInfo  | 
| 
 groupId  | 
 +  | 
|
| 
 groupName  | 
 +  | 
 +  | 
| 
 atype  | 
 +  | 
 +  | 
| 
 emailDL  | 
 +  | 
 +  | 
| 
 isActive  | 
 +  | 
 +  | 
| 
 roleIdArray  | 
 +  | 
 +  | 
| 
 vaultIdArray  | 
 +  | 
 +  | 
| 
 userIdArray  | 
 +  | 
|
| 
 groupIdArray  | 
 +  | 
Где «+» – это требуемый методом параметр.
Осуществим обновление информации группы:
Код - PowerShell: [Выделить]
- Add-Type -Path "c:\Program Files (x86)\Autodesk\Autodesk Vault 2014 SDK\bin\Autodesk.DataManagement.Client.Framework.Vault.Forms.dll"
 - $global:g_login=[Autodesk.DataManagement.Client.Framework.Vault.Forms.Library]::Login($null)
 - $groupId = 1
 - $groupName = 'Проектировщики'
 - $atype = 'ActiveDir' # or 'Vault'
 - $emailDL = 'newGroup@email.com'
 - $isActive = $true
 - $roleNameArray = "Редактор документа (уровень 2)", "Диспетчер ERP"
 - $vaultNameArray = "Vault", "Vault Test-Drive"
 - $userIdArray = 3, 8, 10
 - $groupIdArray = 2, 5, 7
 - # Получаем ID хранилищ по именам
 - $vaultIdArray = $g_login.WebServiceManager.FilestoreVaultService.GetKnowledgeVaultsByNames($vaultNameArray).Id
 - # Получаем ID ролей по именам
 - $roleIdArray = ($g_login.WebServiceManager.AdminService.GetAllRoles() | Where {$roleNameArray -contains $_.Name}).Id
 - # Обновляем группу
 - $updatedGroupInfo = $g_login.WebServiceManager.AdminService.UpdateGroupInfo($groupId, $groupName, $atype, $emailDL, $isActive, $roleIdArray, $vaultIdArray, $userIdArray, $groupIdArray)
 
Если вам необходимо обнулить роли, хранилища, пользователи или группы текущей группы, достаточно передать «NULL» в соответствующий параметр метода UpdateGroupInfo. Например, лишим в группу пользователей.
Код - PowerShell: [Выделить]
					- $updatedGroupInfo = $g_login.WebServiceManager.AdminService.UpdateGroupInfo($groupId, $groupName, $atype, $emailDL, $isActive, $roleIdArray, $vaultIdArray, $null, $groupIdArray)
 
                        Автор: Дмитрий Емельянов
Автор перевода: Дмитрий Емельянов
						
Отредактировано 06.08.2014 в 15:03:18
				Автор перевода: Дмитрий Емельянов
Обсуждение: http://adn-cis.org/forum/index.php?topic=671
Опубликовано 12.04.2014Отредактировано 06.08.2014 в 15:03:18