autodesk vault data standard inventor user defined iproperties ... c: \programdata ... autodesk...

Post on 15-Apr-2018

464 Views

Category:

Documents

8 Downloads

Preview:

Click to see full reader

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.

top related