Download - 1a_Program Custom-Apostila Antonio Chiachio
Desenvolvimento de Soluções Integradas ao
Autodesk Vault Antonio Guimarães Chiachio Júnior – MAPData
Esta sessão irá mostrar através de exemplos reais integrações do Autodesk Vault com sistemas externos. Os exemplos mostrarão que é possível utilizar e vincular as informações contidas no Autodesk Vault em aplicações para Web e para Desktop.
Objetivo de aprendizado Ao final desta palestra você terá condições de:
Vislumbrar ideias e possibilidades de integração com Autodesk Vault
Entender quais ferramentas e tecnologias podem ser utilizadas
Sobre o Palestrante
Antonio Guimarães Chiachio Jr. é graduado em Tecnologia em Processamento de Dados e pós-
graduado em Análise de Sistemas. Há mais de 20 anos atuando na área de TI com desenvolvimento de
software, atualmente desenvolve projetos em C# e ASP .Net. É Analista de Sistemas da empresa
MAPData desde 2008, desenvolvendo soluções para produtos Autodesk entre eles, AutoCAD, Autodesk
Inventor e Autodesk Vault. Antonio também é instrutor dos treinamentos em Visual LISP e API do
Autodesk Inventor (.Net).
Desenvolvimento de Soluções Integradas ao Autodesk Vault
2
Introdução Através deste material quero demonstrar exemplos práticos de aplicações desenvolvidas utilizando a
plataforma .Net e integradas ao Autodesk Vault.
Muitas empresas têm necessidade de acessar a estrutura de arquivos do Autodesk Vault ou acessar
propriedades dos arquivos armazenados. Isto pode ser feito somente através da API do Autodesk Vault
uma vez que o acesso direto aos arquivos, além de ser algo complexo, invalida a garantia do software.
A mesma regra vale para o Banco de Dados do software.
Esta sessão não vai mostrar detalhes técnicos de como as soluções foram desenvolvidas, mas sim
mostrar o funcionamento das aplicações e discutir as ferramentas e técnicas utilizadas para integração
com o Autodesk Vault.
Exemplos
MAPFlow O MAPFlow é um software desenvolvido em ASP .Net e C# para criação de fluxos de trabalho
customizados e integrados ao Autodesk Vault. O MAPFlow foi desenvolvido para dar maior flexibilidade
a implantação de fluxos de trabalho pois permite a criação de fluxos com diversas etapas e regras para
aprovação e rejeição.
A integração do MAPFlow com o Autodesk Vault ocorre em dois momentos:
Autenticação dos usuários: os usuários que acessam o MAPFlow são os mesmos usuários
cadastrados no Autodesk Vault, veremos isso mais detalhadamente;
Acesso aos arquivos: com o MAPFlow é possível anexar arquivos do Autodesk Vault às etapas
do fluxo ou consultar arquivos já anexados ao fluxo;
Autenticação dos Usuários
O MAPFlow é um software que funciona completamente integrado ao Autodesk Vault sendo assim não
há necessidade que os usuários façam um novo cadastro no MAPFlow. O software utiliza inclusive a
mesma estrutura de grupos de usuários e também é possível utilizar a modalidade “Windows
Authentication”.
Desenvolvimento de Soluções Integradas ao Autodesk Vault
3
Esta integração não é feita de forma automática, existe um procedimento que importa a estrutura de
grupos e usuários do Autodesk Vault, porém a autenticação é feita pelo Autodesk Vault, ou seja, as
senhas dos usuários não são copiadas.
Os usuários e grupos importados para o MAPFlow serão os usuários/grupos responsáveis pelo
cumprimento das etapas previstas no fluxo de trabalho.
Acesso a Estrutura de Arquivos
Quando um fluxo de trabalho está em andamento os usuários podem anexar a uma determinada etapa
um ou mais arquivos armazenados no Autodesk Vault. Para que isso fosse possível foi criada uma
interface bem simples semelhante ao Vault Explorer para facilitar a localização dos arquivos.
O usuário pode escolher um ou mais arquivos para serem adicionados ao fluxo de trabalho e quando
isto é feito links como do exemplo abaixo são associados ao fluxo:
Desenvolvimento de Soluções Integradas ao Autodesk Vault
4
http://servidorvault/AutodeskDM/Services/EntityData
CommandRequest.aspx?Vault=Vault&ObjectId=%24%2fInve
ntorTeste%2fDrawing12.idw&ObjectType=File&Command=S
elect
Este link quando é acessado gera um arquivo padrão XML com a extensão ACR para “download” que
pode ser salvo em qualquer pasta do computador, o conteúdo do arquivo será como o exemplo abaixo:
<?xml version="1.0" encoding="utf-8"?>
<ADM xmlns="http://schemas.autodesk.com/msd/plm/ExplorerAutomation/2004-11-
01">
<Server>servidorvault</Server>
<Vault>Vault</Vault>
<Operations>
<Operation ObjectType="File">
<ObjectID>$/InventorTeste/Drawing12.idw</ObjectID>
<Command>Select</Command>
</Operation>
</Operations>
</ADM>
Caso o usuário possua o Autodesk Vault Client instalado em seu computador, basta que ele dê dois
cliques neste arquivo e automaticamente o Autodesk Vault Explorer será aberto com o arquivo
selecionado (a autenticação é requerida).
Ferramentas e Técnicas
Para este desenvolvimento foi utilizado o Microsoft Visual Studio 2010 e 2012 e a linguagem de
programação C# (C Sharp). Mas o ponto de destaque neste exemplo é a utilização da API (Application
Programming Interface) do Autodesk Vault através de vários “Web Services” disponíveis, ao invés dos
tradicionais arquivos DLL fornecidos com o SDK. Neste projeto foram utilizados os seguintes “Web
Services”:
http://servidorvault/AutodeskDM/Services/AdminService.asmx
http://servidorvault/AutodeskDM/Services/DocumentService.asmx
http://servidorvault/AutodeskDM/Services/InformationService.asmx
http://servidorvault/AutodeskDM/Services/SecurityService.asmx
http://servidorvault/AutodeskDM/Services/WinAuth/WinAuthService.asmx
A vantagem desta abordagem é que utilizando uma técnica do .Net Framework chamada “Reflection” foi
possível que o software não ficasse preso a uma determinada versão do Autodesk Vault no que diz
respeito a lógica de programação. A única ação necessária é adicionar novas referências aos “Web
Services” quando uma nova versão do Autodesk Vault é disponibilizada.
Na imagem abaixo podemos ver a tela do Visual Studio 2012 onde está sendo criada uma referência
(“Web Reference”) para InformationService.asmx:
Desenvolvimento de Soluções Integradas ao Autodesk Vault
5
MAPView O segundo exemplo também é uma aplicação desenvolvida em ASP .Net e C# que permite a
visualização de arquivos DWF através de um navegador. Da mesma forma que no exemplo anterior, o
acesso ao sistema é feito utilizando o mesmo usuário usado para conectar no Autodesk Vault.
Esta aplicação possui uma interface bastante simples onde através de uma caixa de texto, o MAPView
pesquisa na base de dados do Autodesk Vault Workgroup por arquivos que satisfaçam as seguintes
condições:
A propriedade “State” deve estar “Aprovado”;
O texto inserido na caixa de pesquisa deve aparecer em qualquer parte do nome do arquivo.
Desenvolvimento de Soluções Integradas ao Autodesk Vault
6
A pesquisa listará os resultados encontrados:
O usuário poderá clicar em qualquer arquivo retornado para que o sistema exiba o respectivo arquivo
DWF no próprio navegador:
Para que o arquivo DWF seja exibido é necessário que o usuário tenha instalado em seu computador o
Autodesk Design Review e o Browser Add-in.
Outra configuração necessária é habilitar a opção do Autodesk Vault que exporta arquivos DWF em
uma pasta da rede, pois é nesta pasta que a aplicação irá buscar o arquivo a ser visualizado.
Desenvolvimento de Soluções Integradas ao Autodesk Vault
7
Ferramentas e Técnicas Para este desenvolvimento foi utilizado o Microsoft Visual Studio 2012 e a linguagem de programação
C# (C Sharp), porém o acesso a API do Autodesk Vault foi feito através dos arquivos DLL fornecidos
com o SDK. Neste projeto foram referenciados os seguintes arquivos:
Autodesk.Connectivity.Explorer.Extensibility.dll
Autodesk.Connectivity.Explorer.ExtensibilityTools.dll
Autodesk.Connectivity.WebServices.dll
A vantagem desta abordagem é que o programador, em um primeiro momento não precisa ter acesso
ao servidor para dar início ao desenvolvimento da aplicação, porém toda vez que uma nova versão do
Autodesk Vault for liberada haverá a necessidade de refazer as referências para ter acesso à nova API
e será necessário gerar uma nova versão do aplicativo.
Finalizando Neste documento foram mostradas duas aplicações reais que acessam a API do Autodesk Vault de
formas diferentes. As duas formas de acesso possuem vantagens e desvantagens cabendo ao
desenvolvedor decidir a melhor forma de trabalho. Para versão 2014 do Autodesk Vault existe uma
novidade que é o Vault Developer Framework (VDF) que disponibiliza aos desenvolvedores uma série
de novos controles visuais que aceleram o desenvolvimento de aplicações.
Mais informações podem ser obtidas em:
http://justonesandzeros.typepad.com/
http://wikihelp.autodesk.com/Vault/enu/Help/Help/0378-Develope378/0379-Vault_De379