Exemple : Utilisation des schémas de numérotation dans les boîtes de dialogue Data Standard

Tirez parti des schémas de numérotation Vault pour exiger des noms de fichiers lorsqu'un utilisateur crée un nouveau fichier Data Standard.

Filtrage des schémas de numérotation

Dans l'exemple indiqué, la zone déroulante Schéma de numéro affiche tous les schémas de numérotation activés. Dans le fichier XAML, la zone déroulante est liée à une fonction PowerShell nommée GetNumSchms.

La fonction GetNumSchms permet de contrôler facilement les schémas devant être affichés pour l'utilisateur.

Filtrage des schémas de numérotation dans Inventor en fonction du type de fichier

Personnalisation du nom de fichier

Data Standard for Vault

Data Standard pour les applications de CAO

La propriété DocNumber inclut le numéro généré, car il est défini dans l'attribut GeneratedNumberProperty="DocNumber" de la commande DSNumSchemeCtrl du fichier Inventor.xaml.

Utilisation de la numérotation Vault sans afficher la commande Schéma de numéro dans la boîte de dialogue

Lorsque la commande DSNumSchemeCtrl et la zone déroulante NumSchms sont supprimées du fichier File.xaml par défaut, l'utilisateur ne peut plus sélectionner de schéma de numérotation.

Data Standard for Vault

    Dans l'exemple de mise en oeuvre de la fonction GetNewFileName ci-après, le schéma de numérotation "TestScheme" indiqué ci-dessus est utilisé et la valeur indiquée dans la propriété "Title" est définie en tant que paramètre pour le schéma de numérotation.

    C:\ProgramData\Autodesk\Vault 2016\Extensions\DataStandard\Vault\addinVault\Default.ps1

    ...
    function GetNewFileName
    {
        $numSchemes = $vault.DocumentService.GetNumberingSchemesByType([Autodesk.Connectivity.WebServices.NumSchmType]::Activated)
        $testNumScheme = $numSchemes | Where-Object { $_.Name.Equals("TestScheme") }
        $NumGenArgs = @()
        $NumGenArgs += $Prop["Title"].Value
        $genNum = $vault.DocumentService.GenerateFileNumber($testNumScheme.SchmID, $NumGenArgs)
        return $genNum + $Prop["_FileExt"].Value
    }
    ...

Data Standard pour les applications de CAO

    Pour Inventor et AutoCAD, la mise en oeuvre s'apparente à celle présentée dans l'exemple ci-dessus. En revanche, au lieu de renvoyer un nom de fichier, un numéro généré doit être indiqué dans la propriété "DocNumber". Cette propriété est alors utilisée pour définir le nom du fichier courant :

    C:\ProgramData\Autodesk\Vault 2016\Extensions\DataStandard\CAD\addinVault\Default.ps1

    ...
    function OnPostCloseDialog
    {
        if ($Prop["_CreateMode"].Value)
        {
            $numSchemes = $vault.DocumentService.GetNumberingSchemesByType([Autodesk.Connectivity.WebServices.NumSchmType]::Activated)
            $testNumScheme = $numSchemes | Where-Object { $_.Name.Equals("TestScheme") }
            $NumGenArgs = @()
            $NumGenArgs += $Prop["Title"].Value
            $genNum = $vault.DocumentService.GenerateFileNumber($testNumScheme.SchmID, $NumGenArgs)
            $Prop["DocNumber"].Value = $genNum
        }
    }
    ...