Requisitos do sistema
- Windows 10
- Windows Server 2016
- Windows Server 2019
O conector não pode ser executado em computadores com Windows Server 2012 R2, Windows 8.1 nem em sistemas operacionais mais antigos.
- ABBYY Vantage 2.3.2 ou posterior
- UiPath Enterprise Edition 2023.8.0
- Community Edition 2023.4.4 ou posterior
- Microsoft .NET Framework 4.8.1
- Microsoft .NET 8
Recomendamos que você converta projetos Windows-legacy para a compatibilidade com Windows, pois a compatibilidade legada não é mais compatível. Para obter informações sobre como converter projetos Windows-legacy para
Windows, consulte Convertendo projetos Windows-legacy para Windows.
Instalando o conector
-
Execute
ABBYYVantageConnectorForUiPath.<version>.exee siga as instruções do Assistente de Instalação. Durante a instalação, especifique a pasta de instalação do conector. Por padrão, ela é definida comoC:\Program Files\ABBYY Vantage Connector for UiPath. - No UiPath Studio, abra um projeto existente ou crie um novo.
-
Na faixa de opções, clique em Manage Packages na guia Design:

-
Verifique se a fonte de pacotes nuget.org está habilitada. Essa fonte de pacotes é necessária para instalar algumas dependências do pacote do conector.
Se você já tiver uma fonte de pacotes configurada e quiser usá-la, pule a etapa 5.
-
Vá para a guia Settings da janela Manage Packages e crie uma nova fonte de pacotes:
a. Insira um nome para a nova fonte de pacotes.
b. Especifique o caminho para a pasta em que você pretende colocar os pacotes NuGet do conector.
c. Clique em Add para confirmar as configurações.
A nova fonte de pacotes é exibida na área User defined package sources e no painel esquerdo da janela Manage Packages.

-
Copie todos os pacotes NuGet do ABBYY Vantage Connector for UiPath da pasta de instalação para a pasta da sua fonte de pacotes. Os pacotes NuGet estão localizados na subpasta UiPath Activities da pasta de instalação criada na etapa 1 (o local padrão é
C:\Program Files\ABBYY Vantage Connector for UiPath\UiPath Activities). Depois que os pacotes NuGet do conector forem adicionados à fonte de pacotes disponível, você poderá instalar o pacote do conector nas dependências do projeto. -
Na janela Manage Packages, navegue até a seção All Packages e faça o seguinte:
a. Clique na categoria da fonte de pacotes recém-criada.
b. Selecione Abbyy.UiPath.Vantage.Activities na lista de pacotes disponíveis e clique em Install. A janela License Acceptance exibirá os termos de licenciamento de cada pacote de terceiros que você instalar.
c. Clique em View License para ler os termos da licença.
d. Clique em I Accept para concordar com os termos da licença e instalar os pacotes. Por fim, clique em Save.

-
Depois de instaladas, as atividades do Vantage aparecerão na seção ABBYY Vantage da lista de atividades disponíveis para o seu projeto:
Para obter instruções detalhadas sobre a instalação de pacotes, consulte o UiPath Studio Guide.
Convertendo projetos Windows-legacy em projetos Windows
- No UiPath Studio, abra o projeto Windows-legacy.
- Clique no link Convert to Windows na mensagem exibida abaixo da faixa de opções.


-
Especifique como o projeto Windows-legacy será convertido em Windows:
- Para criar uma cópia do projeto atual usando a compatibilidade com Windows e manter o projeto Windows-legacy original, selecione Create a new project. Insira o nome do projeto, o local desejado e, opcionalmente, uma descrição para o novo projeto.
- Para atualizar o projeto existente e convertê-lo para a compatibilidade com Windows, desmarque a opção Create a new project. Se você desmarcar essa opção, não será possível desfazer as alterações feitas no projeto.
- Clique em Convert. Para mais informações sobre a conversão de projetos Windows-legacy para a compatibilidade com Windows, consulte o UiPath Studio Guide.
Usando atividades do ABBYY Vantage em um fluxo de trabalho do UiPath
Vantage Scope Activity
A atividade Vantage Scope permite configurar a autenticação com Resource Owner Password Credentials Flow e Client Credentials Flow. Se você configurar um Provedor de Identidade Externo no Vantage, o
único fluxo de autenticação que funcionará será o Client Credentials Flow.
Propriedades da atividade
| Grupo | Propriedade | Tipo | Descrição |
|---|---|---|---|
| Configurações de conexão | Tipo de concessão de autorização | IEnumerable<AuthorizationGrantType> | O tipo de concessão usado para autorização: ResourceOwnerPassword ou ClientCredentials |
| Configurações de conexão | Senha | String | A senha usada para se conectar ao ABBYY Vantage. |
| Configurações de conexão | Senha segura | SecureString | A senha segura usada para se conectar ao ABBYY Vantage. |
| Configurações de conexão | URL do servidor | String | O endereço do servidor ABBYY Vantage. |
| Configurações de conexão | Tenant | String | O nome ou identificador do tenant do ABBYY Vantage. Importante! Essa propriedade só é necessária se o usuário cujas credenciais são usadas para se conectar ao servidor ABBYY Vantage estiver registrado em vários tenants (mais de um) no servidor. O nome do tenant pode ser encontrado na página de login do Vantage no navegador, ao inserir a senha. |
| Configurações de conexão | Nome de usuário | String | O endereço de e-mail do usuário usado para se conectar ao ABBYY Vantage. |
| Configurações de proxy (opcional) | Habilitar proxy | Boolean | Permite usar um servidor proxy para rotear solicitações HTTP. |
| Configurações de proxy (opcional) | URL do servidor | String | O endereço do servidor proxy (por exemplo, http://127.0.0.1:8080). |
| Configurações de proxy (opcional) | Nome de usuário | String | O nome de usuário usado para se conectar ao servidor proxy. |
| Configurações de proxy (opcional) | Senha | String | A senha usada para se conectar ao servidor proxy. |
| Configurações de proxy (opcional) | Senha segura | SecureString | A senha segura usada para se conectar ao servidor proxy. |
| Configurações do cliente da API pública do Vantage (opcional) | ID do cliente | String | Identificador do aplicativo Vantage. |
| Configurações do cliente da API pública do Vantage (opcional) | Segredo do cliente | String | Chave segura do aplicativo Vantage. |
| Configurações do cliente da API pública do Vantage (opcional) | Segredo seguro do cliente | SecureString | Chave segura do aplicativo Vantage como string protegida. |
SecureString.
Uma senha do tipo String é armazenada como texto simples no arquivo de projeto XAML e não é segura. O uso de senha String é recomendado apenas ao configurar as atividades Use Skill e Map Fields para obter uma lista de skills, ou para depurar seu processo do UiPath. Quando o processo estiver totalmente configurado:
- Se você usar Resource Owner Password Credentials Flow, remova a propriedade Password da atividade Vantage Scope e configure a propriedade Secure Password.
- Se você usar Client Credentials Flow, remova a propriedade Client Secret da atividade Vantage Scope e configure a propriedade Secure Client Secret.
O mesmo tipo de senha deve ser usado em Connection Settings, Proxy Settings e Client Settings.
-
Resource Owner Password Credentials Flow:
- Habilite a opção Allow Resource Owner Password Credentials Flow.
-
Client Credentials Flow:
- Habilite a opção Allow issuing refresh tokens to refresh access tokens.
- Habilite a opção Allow client credentials flow.
- Selecione os roles necessários com os quais o aplicativo fará login no Vantage clicando na configuração Manage Roles.

Se todas as propriedades nas Configurações do cliente da API pública do Vantage estiverem vazias, o cliente padrão do ABBYY Vantage será usado.

Configurações de proxy
"true" e, em seguida, especifique o endereço do seu servidor proxy na propriedade Server URL.
Se você estiver usando autenticação Basic, nas propriedades Username e Password / Secure Password, especifique as credenciais de conexão do proxy.
Se você estiver usando autenticação NTLM, os campos Username e Password são opcionais. Se os campos Username e Password estiverem vazios, serão usadas as credenciais do usuário sob o qual o processo do UiPath está sendo executado.
Atividade Use Skill
Propriedades da atividade
| Grupo | Propriedade | Tipo | Descrição |
|---|---|---|---|
| Configurações de conexão | Skill Name | String | O nome da skill do Vantage. |
| Entrada | Arquivos de entrada | IReadOnlyDictionary<String,InputFile> | Uma coleção Dictionary, em que String é o nome do arquivo e InputFile é a classe que descreve o arquivo de entrada. Observação: Antes de adicionar arquivos ao dicionário, é necessário garantir que valores não repetidos sejam passados para o parâmetro String. Não é possível adicionar mais de um arquivo ao dicionário Arquivos de entrada com o mesmo nome passado no parâmetro String. |
| Entrada | Parâmetros de registro da transação | IReadOnlyDictionary<String,String> | Uma coleção Dictionary de parâmetros de registro da transação para passar a chave e o valor de cada parâmetro. |
| Saída | ID da Transação | Guid | O identificador da transação criada. Esse ID é então usado como a propriedade de entrada ID da Transação da atividade Get Results para obter o status da transação e os resultados do processamento. |
| Nome | Tipo | Descrição |
|---|---|---|
| fileStream | Stream | O conteúdo do arquivo que será passado para o ABBYY Vantage. É possível passar como valor desta propriedade o stream de um arquivo em um disco local (por exemplo, System.IO.File.OpenRead("D:\images\Invoice1.pdf")). |
| index (opcional) | Integer | O número de índice do arquivo na transação. |
| fileRegistrationParameters (opcional) | IReadOnlyDictionary<String,String> | Uma coleção Dictionary de parâmetros de registro do arquivo para passar a chave e o valor de cada parâmetro. |
- Resource Owner Password Credentials Flow — Especifique a propriedade Password da atividade Vantage Scope para obter uma lista de skills disponíveis. Depois de configurar seu workflow do UiPath, considere alterar a propriedade Password para Secure Password.
- Client Credentials Flow — Especifique a propriedade Client Secret da atividade Vantage Scope para obter uma lista de skills disponíveis. Depois de configurar seu workflow do UiPath, considere alterar a propriedade Client Secret para Secure Client Secret.

Recomendamos reduzir o tamanho de arquivos grandes para 30 MB ou menos para acelerar o processamento de documentos.
No parâmetro Skill Name da atividade Use Skill, você pode usar uma variável do UiPath do tipo
String para armazenar o nome da skill. Ao selecionar uma skill na lista suspensa da
atividade no painel de design, a skill recém-selecionada será gravada na variável especificada. Você pode armazenar o nome da skill diretamente na variável. No momento, expressões ou referências a outras
variáveis no valor da variável não são compatíveis.Atividade Get Results
Propriedades da atividade
| Grupo | Propriedade | Tipo | Descrição |
|---|---|---|---|
| Entrada | Id da Transação | Guid | O identificador da transação. Passe para esta propriedade o valor obtido como propriedade de saída Id da Transação da atividade Use Skill. |
| Entrada | Excluir Transação | Boolean | Especifica se a transação concluída deve ser excluída, tenha ela sido bem-sucedida ou não. O valor padrão é FALSE, o que significa que a transação não é excluída. |
| Saída | Resultados do Documento | IEnumerable<DocumentResult> | Uma coleção de documentos resultantes após o processamento. |
| Saída | Link de Revisão | String | Um link para o Cliente de revisão manual do ABBYY Vantage, onde os resultados da transação podem ser revisados (esse link só pode ser obtido se o Skill de Processo usado contiver uma atividade Review). |
| Saída | Status da Transação | TransactionStatus | O status da transação. Os seguintes status são possíveis: "New", "Processing", "Review", "Processed". Com base no status recebido, você pode configurar seu processo no UiPath para executar uma lógica diferente. Por exemplo, se a transação tiver o status "Processing", aguarde alguns segundos e chame a atividade novamente. |
DocumentResult.
Propriedades da classe DocumentResult:
| Name | Type | Description |
|---|---|---|
| DocumentId | String | O identificador do documento. |
| ClassificationConfidences | IEnumerable<ClassificationConfidence> | Uma coleção de valores de confiança da classificação. Uma lista de todas as classes disponíveis no Skill de Classificação aplicado ao documento, juntamente com seus respectivos valores de confiança da classificação. |
| ClassName | String | A classe do documento com base nos resultados da classificação. |
| ExtractedData | String | Uma string JSON que contém os dados extraídos. Observação: Para um Skill de Processo, a propriedade pode ser obtida se a opção Values, metadata, and field structure for each document estiver habilitada na atividade Output. |
| IsClassificationConfident | Boolean | Considera-se que a classe resultante foi determinada com confiança se este valor for TRUE. |
| ResultFiles | IReadOnlyDictionary<String,Stream> | Uma coleção de arquivos de resultado após o processamento. |
| DocumentFullText | String | A camada de texto completo de um documento capturada pelo ABBYY Vantage. Observação: Se a configuração do skill não contiver uma configuração de exportação de texto completo, esta propriedade conterá o seguinte valor padrão: TXT export was not configured in the ABBYY Vantage skill settings. Please enable TXT export in the skill that you have selected. A exportação TXT está disponível apenas para skills de OCR ou de Processo. |
Todos os parâmetros listados são reunidos em um
DocumentResult separado na coleção Resultados do Documento. Mesmo que haja apenas um documento de saída, seus parâmetros de saída estarão disponíveis no
primeiro DocumentResult da coleção Resultados do Documento.| Name | Type | Description |
|---|---|---|
| ClassName | String | Classe de documento do Vantage. |
| Confidence | Int | O grau de confiança de que o documento pertence a esta classe. Os valores possíveis variam de 0 a 100. |
"Processed"), os resultados serão salvos nas propriedades de saída.
Se a transação ainda estiver sendo processada (ou seja, Transaction Status = "New" / "Processing"), aguarde alguns segundos e chame a atividade Get Results novamente.
Um caso especial, em que Transaction Status = "Review", é descrito abaixo.
Os resultados que a atividade Get Results pode obter variam de acordo com o skill aplicado ao documento:
-
Skill de Classificação (por exemplo, Vantage Classifier):
- Status da Transação
- Resultados do documento (para cada
DocumentResult):DocumentId,ClassificationConfidences,ClassName,IsClassificationConfident,ResultFiles(arquivo JSON que contém os dados dos resultados da classificação)
-
Skill de Documento (por exemplo, Invoice US):
- Status da Transação
- Resultados do documento (para cada
DocumentResult):DocumentId,ExtractedData,ResultFiles(os resultados estarão contidos em dois arquivos JSON — o primeiro contém todos os dados do documento; o segundo contém os valores dos campos extraídos e os erros de regra, com o sufixo_fields.json)
-
Skill de OCR:
- Status da Transação
- Resultados do documento (para cada
DocumentResult):DocumentId,ResultFiles(esses arquivos serão recebidos de acordo com a exportação configurada no skill de OCR),DocumentFullText(se a exportação para TXT estiver habilitada no skill)
-
Skill de Processo:
Se um Skill de Processo incluir uma atividade Classify e uma atividade Extract, os resultados acima serão obtidos tanto para um Skill de Classificação quanto para um Skill de Documento.
Se um Skill de Processo incluir várias atividades Classify ou Extract, os resultados serão obtidos para as últimas atividades de cada tipo.
Se a opção PDF estiver habilitada na caixa de diálogo Exported Data Settings de uma atividade Output de um Skill de Processo, os resultados conterão o arquivo JSON com os resultados da extração e a imagem do documento exportada para um arquivo PDF junto com uma camada de texto. Para cada documento da transação, o parâmetro
DocumentFullTextserá recebido se a exportação para TXT estiver habilitada no skill. Um Skill de Processo também pode conter uma atividade Review. Ao usar esse skill para processamento de documentos, o processamento pode ser suspenso se o documento exigir revisão manual. Nesse caso, a atividade Get Results obterá os seguintes resultados:- Status da Transação =
"Review" - Link de revisão
- Status da Transação =
Atividade Map Fields
Propriedades da atividade
| Group | Property | Type | Description |
|---|---|---|---|
| Connection Settings | Skill Name | String | O nome do Skill de Documento do Vantage. |
| Input | Extracted Data | String | Aceita uma string JSON que contém os dados extraídos. Passe para essa propriedade o valor da propriedade ExtractedData do DocumentResult específico recebido na atividade Get Results. Para passar valores entre as propriedades, use variáveis do UiPath. |
- Resource Owner Password Credentials Flow — Especifique a propriedade Password da atividade Vantage Scope para obter uma lista de skills disponíveis. Depois de configurar seu fluxo de trabalho do UiPath, considere alterar a propriedade Password para Secure Password.
- Client Credentials Flow — Especifique a propriedade Client Secret da atividade Vantage Scope para obter uma lista de skills disponíveis. Depois de configurar seu fluxo de trabalho do UiPath, considere alterar a propriedade Client Secret para Secure Client Secret.
Em tempo de execução, a propriedade Extracted Data da atividade Map Fields deve receber o valor da propriedade
ExtractedData do DocumentResult específico recebido na atividade Get Results
que contém os dados extraídos pelo Skill de Documento para o qual a atividade Map Fields foi configurada. Depois de receber os dados extraídos, verifique se o nome do Skill de Documento
aplicado ao documento é o mesmo nome do Skill de Documento para o qual a atividade Map Fields foi configurada e, em caso afirmativo, passe os dados extraídos para a Map Fields. Para obter o tipo de documento,
você pode usar a propriedade de saída ClassName do DocumentResult específico recebido na atividade Get Results. Para preencher esse parâmetro com o tipo de documento, na atividade Extract do
Skill de Processo, configure o mapeamento da classe com o Skill de Documento que deve ser usado para o processamento de documentos. Ao mapear, é necessário atender à condição de que o nome da classe
seja igual ao nome do Skill de Documento selecionado.- Abra a atividade Map Fields no painel Designer e clique no botão à direita da lista suspensa em Skill Name para obter uma lista de skills disponíveis.
-
Expanda a lista suspensa Skill Name e selecione o Skill de Documento cujos valores de campo extraídos devem ser salvos em variáveis do UiPath.
Você só pode escolher um Skill de Documento.
- Clique no botão Refresh. Uma árvore de campos será exibida na coluna Vantage Extracted Field.
-
Expanda a árvore e clique no botão Plus ao lado do campo que você deseja mapear. Na coluna UiPath Variable, serão exibidos o nome e o tipo de uma variável do UiPath. Por padrão, o nome da variável será o mesmo do campo do Vantage, mas você poderá alterá-lo, se necessário.
Certifique-se de que os nomes das variáveis do UiPath especificados na atividade Map Fields correspondam à Convenção de Nomenclatura de Variáveis configurada no seu processo do UiPath. Se os nomes das variáveis não seguirem as regras de nomenclatura, eles serão exibidos com um símbolo de aviso na lista de variáveis do UiPath. Para saber mais sobre a Convenção de Nomenclatura de Variáveis, consulte a documentação do UiPath.

- Repita a etapa anterior para todos os outros campos que precisar mapear. Ao configurar o mapeamento, você pode especificar variáveis do UiPath já existentes. Nesse caso, verifique se o tipo das suas variáveis corresponde ao recomendado na tabela abaixo.
- Depois de mapear os campos do documento para variáveis do UiPath, clique em Apply para salvar as alterações. Agora, quando a atividade Map Fields for chamada em tempo de execução, os valores das variáveis serão preenchidos com os dados extraídos.
As variáveis do UiPath especificadas serão criadas na Sequence mais próxima da atividade Map Fields (por exemplo, em Flowchart).
String para armazenar o nome da skill. Ao selecionar uma skill na lista suspensa da atividade, no painel de design, a skill recém-selecionada será gravada na variável especificada. Você também pode armazenar diretamente na variável o nome da skill. No momento, expressões ou referências a outras variáveis no valor da variável não são compatíveis.
A tabela abaixo mostra qual tipo de variável do UiPath corresponde a cada tipo de campo do ABBYY Vantage:
| Tipo de campo do ABBYY Vantage | Tipo de variável do UiPath |
|---|---|
| Text | String |
| Date | String |
| Number | String |
| Money | String |
| Barcode | String |
| Checkmark | Boolean |
| Checkmark group (pode ser obtido como marcas de seleção separadas) | FieldList |
| Group | FieldList |
| Group (para grupos repetíveis) | FieldList[] |
| Table | FieldList[] |
As colunas da tabela, assim como os campos repetidos, serão mapeadas para variáveis do UiPath do tipo
String[]. Todos os campos repetidos e os campos que fazem parte de um grupo repetível (ou quaisquer outros campos repetidos
e grupos repetíveis dentro de grupos repetíveis) serão mapeados para variáveis do UiPath do tipo FieldList[]. Também é possível mapear objetos filho desse grupo para variáveis de outros tipos simples.
GroupItem é uma estrutura que contém uma instância de um objeto repetido (campo ou grupo de campos).
| Método/Propriedade | Parâmetro | Tipo | Descrição |
|---|---|---|---|
| Keys | IEnumerable<string> | Valores de chave. Cada valor é o nome de um nível específico de aninhamento. | |
| Values | IEnumerable<IReadOnlyList<FieldList>> | Conjunto de valores de campo dos níveis de aninhamento. | |
| Count | Integer | Número de campos aninhados. | |
| ContainsKey | Key: String | Boolean | Especifica se existe um campo aninhado. |
| TryGetValue | Key: String, Value: IReadOnlyList<FieldList> | Boolean | Especifica se existe um valor. Se houver um valor, retorna True e o valor; caso contrário, retorna False. |
| this[] | Name: String | IReadOnlyList<FieldList> | Retorna o valor do campo aninhado especificado. |
| Find | Name: String | IEnumerable<FieldList> | Localiza todos os campos aninhados, em qualquer nível de aninhamento, com o nome especificado. |
| Filter | Predicate: (Name: String, Node: FieldList) => Boolean | IEnumerable<FieldList> | Localiza todos os campos aninhados, em qualquer nível de aninhamento, que atendem ao predicado. |
| Descendents | NameItems: Params String[] | IEnumerable<FieldList> | Localiza todos os campos aninhados, em qualquer nível de aninhamento, cujo nome corresponde ao parâmetro nameItems. |
FieldList é uma estrutura que corresponde a um campo ou grupo de campos (campos repetidos ou grupos repetidos com o mesmo nome) e contém os valores (com possibilidade de múltiplas instâncias) dos campos ou grupos.
| Método/Propriedade | Parâmetro | Tipo | Descrição |
|---|---|---|---|
| Values | IEnumerable<Object> | Conjunto de valores escalares de campo. | |
| Count | Integer | Número de GroupItems aninhados. | |
| Find | Name: String | IEnumerable<FieldList> | Localiza todos os campos aninhados, em qualquer nível de aninhamento, com o nome especificado. |
| Filter | Predicate: (Name: String, Node: FieldList) => Boolean | IEnumerable<FieldList> | Localiza todos os campos aninhados, em qualquer nível de aninhamento, que atendem ao predicado. |
| this[] | Num: Integer | GroupItem | Retorna o GroupItem com campos aninhados (se houver) na posição indicada pelo parâmetro num. |
O Sample Process fornece um exemplo de uso de uma variável do tipo
FieldList[] (a coluna Description da tabela LineItems é exibida nas mensagens de log).