Soubory XAML u entit souborů, složek a uživatelských objektů jsou předem konfigurované. V tomto adresáři lze však vytvořit další soubory XAML a u stejné entity lze zobrazit různé soubory XAML.
Chcete-li zobrazit různé dialogy pro stejnou entitu, vytvořte soubor PowerShell s obsahem v následujícím adresáři: %programdata%\Autodesk\Vault [edice]\Extensions\DataStandard\Vault\addinVault\Menus.
Příklad vlastního souboru XAML
$vaultContext.ForceRefresh = $true
$currentSelected = $vaultContext.CurrentSelectionSet[0]
$folderid = $currentSelected.Id
#if selected object is of type 'FILE' then use $vaultContext.NavSelectionSet[0].Id,
#it will give you back the folder Id where this file is located
if ($currentselected.typeid.entityclassid--eq-"file")
{
$folderid = $vaultContext.NavSelectionSet[0].Id
}
$xamlFile = New-Object CreateObject.WPF.XamlFile "MyOwnXaml", "C:\ProgramData\Autodesk\Vault [edition]\Extensions\DataStandard\Vault\Configuration\myfile.xaml"
$dialog = $dsCommands.GetCreateDialog($folderid)
$dialog.XamlFile = $xamlFile
#new file can be found in $dialog.CurrentFile
$result = $dialog.Execute()
$dsDiag.Trace($result)
if ($result)
{
$folder = $vault.DocumentService.GetFolderById($folderid)
$path=$folder.FullName+"/"+$dialog.CurrentFile.Name
$selectionId = [Autodesk.Connectivity.Explorer.Extensibility.SelectionTypeId]::File
$location = New-Object Autodesk.Connectivity.Explorer.Extensibility.LocationContext $selectionId, $path
#$dsDiag.Inspect()
$vaultContext.GoToLocation = $location
}
Po načtení dialogu (pomocí funkce $dialog.Execute()) jej můžete spravovat pomocí funkcí nástroje Data Standard. Další informace o tom, jak spustit kód ve výše uvedené ukázce, naleznete v části Položky nabídky.