autodesk vault data standard inventor user defined iproperties ... c: \programdata ... autodesk...
TRANSCRIPT
What‘s New in Vault Data Standard 2018
Markus Koechl
Solutions Engineer PDM|PLM – Autodesk Central Europe
Technical Details | Migration | Tips
Agenda
▪ What‘s New – Features & Functions
▪ Property Validation CAD – Additional Use Cases
▪ Issues Fixed
▪ Migrate Legacy Configurations
▪ Tips & Tricks
What‘s New – General
▪ Improved Templates and Styles Dynamic Grid
▪ Date Picker display*
▪ Enforce list values
▪ Uppercase / lowercase
▪ Avoid label selection
▪ Additional icons for file listings
▪ Maintain pick list selection in all dialogs
▪ Prepared for cascading selections / refresh
VDS 2018 What‘s New | General
* Need to Know: Localizations require Converter-Culture: https://knowledge.autodesk.com/community/article/27246
What‘s New – VDS CAD
✓ Support Vault validation
▪ Support CFG override validation
▪ Support legacy behaviors -> see chapter Additional Use Cases
VDS CAD | Validation Setup Flexibility
▪ Interactive selection automatically expands if subfolders exist
▪ If new path suggestion is applied auto-expand is suppressed
VDS CAD | Folder Selection Usability
What‘s New – VDS Inventor
▪ Preset
▪ File Numbering
▪ Generate File Numbers for IDW|DWG|IPN (2017.0.1)
▪ Folder selection adds smart support for
▪ “Suggested” path is preselected
▪ Assembly context
▪ Drawing first view’s model
▪ Presentation first scene’s assembly
VDS Inventor | Leverage Options and Context
▪ Material selection new default
▪ Enforce list values
VDS Inventor | Material Selection
CAD Property Validation
Additional Use Cases
VDS 2018 | VDS 2017.0.2
▪ System Property – Static Label + Field
▪ Category Property – Dynamic Grid Label + Field
➢ Validation = Vault Property Constraints
VDS 2016 2017 2018 | Standard Use Case
Validation = CFG + Category constraints
▪ CFG - RequiresValue
▪ Override wins
VDS 2018/VDS 2017.0.2 | Use Case 1 – Validation Override
▪ CFG - RequiresValue
▪ Override wins
VDS 2018/VDS 2017.0.2 | Use Case 2 – Validation Override
▪ CFG – adds custom property
▪ Property is no category member
▪ Property is mapped
VDS 2018/VDS 2017.0.2 | Use Case 3 – File Property
▪ CFG – adds custom property (Property does not exist in Vault
▪ Dialog adds input field
File only custom property
CFG only drives constraint
VDS 2018/VDS 2017.0.2 | Use Case 4 – File ONLY Property
VDS 2018/VDS 2017.0.2 | Support Legacy Validation Behavior
Validation = CFG only
Dialog works without
- Category
- DynamicCategoryPropGrid
Validation = CFG + Category constraints
Dialog works without
- DynamicCategoryPropGrid
Validation = CFG + Category constraints
VDS 2018/VDS 2017.0.2 | Validation Behavior
PropertyMapping ?
Yes/No
No(because pure CFG)
Yes(because mapped)
_Category ?Yes / No
No matchIgnored for validation
Match
Included in validation
VDS 2018/VDS 2017.0.2 | Support Legacy Validation Behavior
Property
No(because pure CFG)
Yes(because mapped)
_Category ?Yes / No
Included in validation
Mapping ? Yes/No
NoIgnored for validation
Match
VDS 2018/VDS 2017.0.2 | Support Legacy Validation Behavior
PropertyMapping ?
Yes/No
No(because pure CFG)
Included in validation
Yes(because mapped)
_Category ?Yes / No
NoIgnored for validation
Reminder
▪ System Property – Static Label + Field
▪ Category Property – Dynamic Grid Label + Field
➢ Validation = Vault Property Constraints
VDS 2016 2017 2018 | Standard Use Case
Validation = CFG + Category constraints
Required Setup to add property to Dynamic Grid
✓ Property included in category
✓ Property mapped
Change Display Name / Label
▪ AutoCAD
▪ Inventor User Defined iProperties
✓ Display name / UIString.xml
Reminder | Dynamic Grid Property Listing
Issues Fixed
▪ Override formulas by values
▪ Sheet Metal – Material
➢ For Admins only ☺
▪ PowerShell - $dsDiag.Inspect()
✓ Use in loops*
VDS 2018/VDS 2017.0.2 | Issues Fixed
* Continue not to use in event handlers
Migrate 2017 –> 2018Example – VDS Quickstart Configuration
▪ Create Visual Studio project for 2018
▪ Add 2018 references for
▪ General
▪ VDS Common.dll
▪ Vault WG/Pro Webservices.dll
▪ CAD
▪ VDS dataStandard.UI.dll
▪ Vault
▪ VDS CreateObject.dll
Migrate 2017->2018 | Step 1
▪ Find / Replace 2017 by 2018
▪ All files of solution
Migrate 2017->2018 | Step 2
▪ ComboBox – Selection
▪ Prevent reload of list for Category, Numbering Scheme and other custom ones
▪ Add “…, Mode=OneTime” to all dialogs’ combo boxes.
https://knowledge.autodesk.com/support/vault-products/troubleshooting/caas/simplecontent/content/vault-2017-data-standard-inventor-selected-numbering-scheme-functional-dialogs.html
Migrate 2017->2018 | Add Enhancements - General
➢ Action
ComboBox Selection – Search and Replace
Migrate 2017->2018 | Add Enhancements - General
▪ ComboBox Selection – Checklist Dialogs updated?
(Note – matching files number may very; example uses VDS Quickstart 2017 configuration)
ItemsSource="{Binding PsList[GetCategories], Mode=OneTime}
ItemsSource="{Binding PsList[GetNumSchms], Mode=OneTime}
Migrate 2017->2018 | Add Enhancements - General
▪ New Multilanguage Text Strings
➢ Action
Add <UIString ID="LBL77">None</UIString>
Add <UIString ID="TLT1">Local path</UIString>
➢ Repeat action for other languages
Migrate 2017->2018 | Add Enhancements - General
▪ Folder Selection – Suggested Path for
▪ Components in assembly context
▪ Model of drawings first view
▪ Model of presentation first scene
▪ Folder Selection – AutoOpen
▪ Offers selection if subfolder(s) exist(s)
▪ Turned off if path is suggested
Migrate 2017->2018 | Add Enhancements - CAD
➢ Action - Leverage new property $Prop[_SuggestedVaultPath].Value
Copy code block as shown below the existing call “AddCombo…” in existing CAD\Default.ps1
Migrate 2017->2018 | Add Enhancements - CAD
➢ Action
Default.ps1: Add line $global:expandBreadCrumb = $false
Replace breadCrumb.ps1 – if unchanged
If already customized – Adopt change 1 in GetChildFolders($folder)$ret += New-Object PSObject -Property @{ Name = "."; ID=-1 }
To
if ($ret.Count -gt 0)
{
$ret += New-Object PSObject -Property @{ Name = "."; ID=-1 }
}
If already customized – add line in AddCombo($data)$cmb.IsDropDownOpen = $global:expandBreadCrumb
Migrate 2017->2018 | Add Enhancements - CAD
▪ DynamicDataGridCellStyle
▪ Character casing
▪ Enforce list of values
▪ Enforce list of Inventor Materials
▪ Date Picker format
▪ Note – Add ConverterCulture for non en-US environments, e.g.
<DatePicker SelectedDate="{WPF:ValidatedBinding Value, ConverterCulture=de-DE}"SelectedDateFormat="Short" />
▪ DynamicDataGridLabelStyle
▪ Disable selection of labels
Migrate 2017->2018 | Add Enhancements - Inventor
➢ Action
Copy & Paste / Replace existing node for both styles in Inventor.xaml, SaveCopyAs.xaml
Migrate 2017->2018 | Add Enhancements - Inventor
Migrate 2017->2018 | Add Enhancements - AutoCAD
▪ DynamicDataGridCellStyle
▪ Character casing
▪ Enforce list of values
▪ Date Picker format
▪ Note – Add ConverterCulture for non en-US environments, e.g.
<DatePicker SelectedDate="{WPF:ValidatedBinding Value, ConverterCulture=de-DE}"SelectedDateFormat="Short" />
▪ DynamicDataGridLabelStyle
▪ Disable selection of labels
➢ Action
Copy & Paste / Replace existing node for both styles in AutoCAD.xaml
Migrate 2017->2018 | Add Enhancements - AutoCAD
▪ DynamicDataGridCellStyle in Dialogs
▪ Character casing
▪ Enforce list of values
▪ Date Picker format
▪ DynamicDataGridLabelStyle
▪ Disable selection of labels
Migrate 2017->2018 | Add Enhancements – Vault Explorer
➢ Action
Copy & Paste / Replace existing node for both styles in
CustomObject, File, FileOffice, and Folder.xaml
Migrate 2017->2018 | Add Enhancements - Vault Explorer
▪ DynamicDataGridCellStyle in Datasheets
▪ Character casing
▪ Enforce list of values
▪ Date Picker format
▪ DynamicDataGridLabelStyle
▪ Disable selection of labels
Migrate 2017->2018 | Add Enhancements – Vault Explorer
➢ Action
Copy & Paste / Replace existing node for both styles in
highlighted Datasheet files
Migrate 2017->2018 | Add Enhancements - Vault Explorer
▪ Item – Datasheet
▪ Display Icons of linked office files
Migrate 2017->2018 | Add Enhancements – Vault Explorer
➢ Action
Copy additional / highlighted icons for office files
Migrate 2017->2018 | Add Enhancements – Vault Explorer
Migrate 2015R2 | 2016 –> 2018
▪ Create Visual Studio project for 2018
▪ Add 2018 references for
▪ General
▪ VDS Common.dll
▪ Vault WG/Pro Webservices.dll
▪ CAD
▪ VDS dataStandard.UI.dll
▪ Vault
▪ VDS CreateObject.dll
▪ Alternatively use the fully configured Advanced Editor template from here: https://github.com/koechlm/VDS-2018-Advanced-Configuration-Editor.git
Migrate 2015R2 | 2016 -> 2018 | Step 1 – Editor Setup
Copy legacy 201x Configuration to C:\ProgramData\Autodesk\Vault 2018\Extensions\DataStandard
Open VS Editor Project to edit associatively 2018 configuration files
➢ Notice some files linked to the advanced editor project are not available in your legacy configuration
Add Missing Files, copy from Default installed configuration (backup)
➢ CAD configuration
.\CAD\addins\breadcrumb.ps1
.\CAD\Configuration\SaveCopyAs.xaml
Migrate 2015R2 | 2016 -> 2018 | Step 1 – Editor Setup
Continue to add missing files…
➢ Vault Explorer configuration
.\Vault\MenuDefinitions.xml
Follow Step 5 to add legacy custom commands to the new definition file
➢ Optionally copy document type definition files, if you plan to implement separated definition of XAML and XML sources (new in 2017)
.\Vault\Configuration\File.xml
.\Vault\Configuration\FileOffice.xml
Migrate 2015R2 | 2016 -> 2018 | Step 1 – Editor Setup
Find / Replace “Vault 2015 R2” or “Vault 2016” by “Vault 2018” according your source version
➢ All files of solution, Match whole word
Migrate 2015R2 | 2016 -> 2018 | Step 2 – Replace All
Find / Replace obsolete system property names
Replace IsNewEntryDialog -> CreateMode
Replace IsEditDialog -> EditMode
Replace IsCreateDialog -> CreateMode
Migrate 2015R2 | 2016 -> 2018 | Step 2 – Replace All
The legacy definition “Prop[_Category].ListValues” is no longer valid. Add the new function to retrieve category list and update the dialog’s combo box
Copy function “GetCategories” from 2018 configuration to .\Vault\addinVault\default.ps1
Change combo box definitions from
ItemsSource = Prop[_Category].ListValues to PsList[GetCategories], Mode=OneTime
Add additional attributes
DisplayMemberPath = “Name”
SelectedValuePath = “Name”
SelectedValue=“{Binding Prop[_Category].Value}”
Delete legacy definition Text =“{Binding Prop[_Category].Value}”
Migrate 2015R2 | 2016 -> 2018 | Step 4 – “_Categories” - Vault
If the legacy definition CAD dialog does not use category selection or category value assignment in default.ps1, add this to your configuration, e.g. our Quickstart 2015 R2 sample dialog has a static design for 2 different CAD file categories, but relays on Vault check in to assign the category. This needs to be changed for 2017.0.2 / 2018: either add the category selection to the dialog or assign the _Category value like this:
Migrate 2015R2 | 2016 -> 2018 | Step 4 – “_Categories” - CAD
The legacy definition “Prop[_Category].ListValues” is no longer valid. Add the new function to retrieve category list and update the dialog’s combo box
Copy function “GetCategories” from 2018 configuration to .\CAD\addins\default.ps1
Change combo box definitions from
ItemsSource = Prop[_Category].ListValues to PsList[GetCategories], Mode=OneTime
Add additional attributes
DisplayMemberPath = “Name”
SelectedValuePath = “Name”
SelectedValue=“{Binding Prop[_Category].Value}”
Delete legacy definition Text =“{Binding Prop[_Category].Value}”
Migrate 2015R2 | 2016 -> 2018 | Step 4 – “_Categories” - CAD
Replace the legacy function “GetNumSchms” by the new one copied from 2018 configuration
If your function is customized adopt the important change to read schemes into an array of scheme objects: [System.Collections.ArrayList]$numSchems =@($vault.DocumentService.GetNumberingSchemesByType('Activated'))
Replace all calls of this function PsList[GetNumSchms] by PsList[GetNumSchms], Mode=OneTime
Add attributes to the combo box control “NumSchms”
DisplayMemberPath=“Name”
SelectedValuePath=“Name”
Repeat for all dialogs consuming numbering schemes [optional].
File.xaml
[Folder.xaml]
[CustomObject.xaml]
Migrate 2015R2 | 2016 -> 2018 | Step 4 – “Numbering Schemes” - Vault
Replace the legacy function “GetNumSchms” by the new one copied from 2018 configuration
If your function is customized adopt the important change to read schemes into an array of scheme objects: [System.Collections.ArrayList]$numSchems =@($vault.DocumentService.GetNumberingSchemesByType('Activated'))
Replace all calls of this function PsList[GetNumSchms] by PsList[GetNumSchms], Mode=OneTime
Add attributes to the combo box control “NumSchms”
DisplayMemberPath=“Name”
SelectedValuePath=“Name”
Repeat for all dialogs consuming numbering schemes [optional].
Inventor.xaml
AutoCAD.xaml
Migrate 2015R2 | 2016 -> 2018 | Step 4 – “Numbering Schemes” - CAD
Review and Test
Vault Explorer
CAD
Inventor
AutoCAD
Migrate 2015R2 | 2016 -> 2018 | Step 3 and 4 – Review Results
Step 1 instructed to copy the menu definition from 2018; to add your custom command additions follow the optimized procedure shown in the video here:
Migrate 2015R2 | 2016 -> 2018 | Step 5 – Migrate Custom Menu - Vault
✓ Step 1 – 5 reflect minimum steps to bring 2015 R2 or 2016 configurations up and running in 2018.
▪ However – adding all improvements from 2016, 2017 and 2018 in regards dynamic (= automatic) property configuration, cascading selections, styles and validation we recommend to implement your business logic starting from the 2018 default configuration template.
Migrate 2015R2 | 2016 -> 2018 | Summary
Tips & Tricks
Tips & Tricks
▪ Leverage _SuggestedVaultPath
▪ Copy / Replace 3D incl. multiple drawings
▪ Mirror
▪ Powershell 5.0
✓ W8.1 or W10 default
▪ Update for W7 and W8
▪ Extend InitializeWindow
"AutoCADWindow"
{
#rules applying for AutoCAD
$AutoCadRoot = @("Designs", "AutoCAD") #folders to activate
for($i=0;$i -lt $AutoCadRoot.Count;$i++)
{
$cmb = $dsWindow.FindName("cmbBreadCrumb_"+$i)
if ($cmb -ne $null) { $cmb.SelectedValue = $AutoCadRoot[$i]
}
}
VDS AutoCAD | Leverage New Property _SuggestedVaultPath
▪ Use case 1 – Drawing name = model name
▪ GFN4S = disabled
▪ User needs to manually change name of 2nd, 3rd... Drawing(s)
✓ Use case 2 – Drawing = new number
✓ GFN4S = enabled
✓ No user input required
Tips & Tricks | Copy / Replace 3D incl. Multiple Drawings
▪ Workflow issue investigated
✓ Proofen workaround
Tips & Tricks | Assembly Mirror
▪ Even VDS is validated against powerShell 2, we recommend to update to PS 5 / 5.1
▪ Solves frequently issues, especially in non English environments
▪ Microsoft Download
Tips & Tricks | Update PowerShell for W7 / W8
Autodesk and the Autodesk logo are registered trademarks or trademarks of Autodesk, Inc., and/or its subsidiaries and/or affiliates in the USA and/or other countries. All other brand names, product names, or trademarks belong to their respective holders.
Autodesk reserves the right to alter product and services offerings, and specifications and pricing at any time without notice, and is not responsible for typographical or graphical errors that may appear in this document.
© 2017 Autodesk. All rights reserved.