UiPath Documentation
studio
latest
false
Guia do usuário do Studio
Importante :
A localização de um conteúdo recém-publicado pode levar de 1 a 2 semanas para ficar disponível.

Sobre a ferramenta Migrador de atividades

Migrate legacy automation projects to the modern UiPath platform using the Activity Migrator CLI tool.

Finalidade da ferramenta de migração de atividades

A ferramenta de migração de atividades é uma ferramenta de interface de linha de comando (CLI) essencial para organizações que fazem a transição de projetos de automação legados para a moderna UiPath Platform, permitindo o acesso às funcionalidades e recursos mais recentes:

  • Automatize o processo de migração ao simplificar e agilizar a transferência da configuração e das dependências do processo.
  • Reduza o esforço manual e os erros garantindo a consistência e a precisão durante a migração, em vez de transferir dependências e atividades manualmente.

Cenários de migração compatíveis

Migração da estrutura do projeto

Recomendamos fortemente a migração de um projeto do Windows - Legacy para compatibilidade com o Windows por vários motivos estratégicos, técnicos e relacionados ao suporte:

  1. Desempenho aprimorado: os projetos do Windows são executados de forma mais rápida e eficiente devido à melhor integração com o .NET Core e APIs modernas do Windows.
  2. Melhor compatibilidade com bibliotecas externas: os projetos do Windows são compatíveis com versões mais recentes de bibliotecas e dependências, facilitando a integração com sistemas externos.

Acesso a recursos modernos de UI Automation

Muitos novos recursos de UI Automation, como Destino unificado e Healing Agent, são compatíveis apenas com o framework de UI Automation moderno.Portanto, você deve migrar das atividades clássicas de UI Automation para a experiência moderna.

Migração de atividades obsoletas do Outlook

A Microsoft está encerrando o Outlook clássico e incentivando a adoção do Microsoft 365.Como resultado, a ferramenta de migração de atividades é compatível com a transição de dependências de automação de UiPath.Mail.Activities (que dependem da API Classic Outlook) para UiPath.MicrosoftOffice365.Activities dependências baseadas no UiPath Integration Service.

GSuite activities migration

To benefit from the latest enhancements, we recommend using the Integration Service connections-based Google Workspace activities. The Activity Migrator supports converting classic activities to modern activities within the same UiPath.GSuite.Activities package. These modern activities automate across Google Workspace (formerly known as GSuite) applications, covering six services: Gmail, Calendar, Drive, Docs, Sheets, and Apps Script.

Ferramenta de migração de atividades versus Studio Windows - Conversor legado

Use o conversor Studio Windows - Legacy quando:

  • Você só precisar converter projetos do Windows - Legacy para Windows um por um.
  • Não são necessárias migrações de atividades.

Use a ferramenta de migração de atividades quando:

  • Você desejar converter vários projetos do Windows - Legacy para Windows (conversão em massa compatível).
  • Migration of UI Automation, Mail, or classic GSuite activities is needed.
  • Qualquer combinação dos cenários acima é aplicável.

Onde obter a ferramenta de migração de atividades

Siga as etapas a seguir para baixar a ferramenta:

  1. Navegue até o UiPath Automation Cloud.
  2. Selecione o botão Ajuda no canto superior direito.
  3. Em Recursos, selecione Downloads.
  4. Under the Featured Download list, select Activity Migrator Tool.
  5. Selecione o link de download.

Resultado

O arquivo .zip do Migrador de Atividade é baixado para sua máquina. Extraia-o e instale a ferramenta na pasta <tool-install-dir> antes de executar quaisquer comandos.

Requisitos

  • Se a ferramenta for usada em uma máquina em que o Studio não está instalado, instale o .NET Desktop Runtime 8.0.
  • Abrir projetos migrados com versões do Studio 2024.10 ou posteriores.

Como usar a ferramenta de migração de atividades

Comando: <tool-install-dir>\UiPath.Upgrade.exe

Uso: UiPath.Upgrade.exe [command] [options]

Opções globais

OpçãoDescription
-?, -h, --helpMostrar informações de ajuda e uso.

Comandos disponíveis

CommandDescription
versionMostrar informações da versão.
analyzeAnalisar um projeto para migração sem fazer alterações.
upgradeMigre um projeto ou partes dele.
bulkAnalise ou migre todos os projetos para uma pasta.

Analisar um projeto

Essa opção simula a migração e gera um relatório sem executar a migração real ou modificar o projeto.

Comando: <tool-install-dir>\UiPath.Upgrade.exe analyze

Uso: UiPath.Upgrade.exe analyze [options]

OpçãoDescription
-?, -h, --helpMostrar informações de ajuda e uso.
-p, --project-path (obrigatório)Caminho para o projeto a ser analisado ou atualizado. A pasta fornecida como <project-path> deve conter o arquivo project.json do projeto.
-o, --output-pathCaminho de saída para o projeto atualizado (opcional). Se não for especificado, o sistema cria uma nova pasta com o sufixo _Upgraded.
-v, --verboseHabilitar o registro Verbose.
-f, --output-formatFormato de saída: console (padrão) ou sarif.
-e, --extension-directoryDiretório para pesquisar extensões. Apenas para uso avançado.
--ignore-missing-dependenciesIgnorar dependências ausentes durante a atualização. As dependências ausentes aparecem como avisos. Os fluxos de trabalho afetados podem relatar tipos ausentes, não compilar ou não executar outras migrações necessárias.
--orchestrator-urlA URL do Orchestrator completa, incluindo o nome da organização (por exemplo, https://cloud.uipath.com/myorg).Se não for especificada, usa-se a conexão do Studio. Quando especificado, você também deve fornecer credenciais por meio do Token de acesso pessoal (PAT) usando --orchestrator-pat ou ID do Aplicativo externo e segredo usando --orchestrator-application-id e --orchestrator-application-secret.
--orchestrator-tenantO nome do tenant do Orchestrator. O valor padrão é DefaultTenant se não for especificado.
--orchestrator-patToken de acesso pessoal (PAT) para autenticação do Orchestrator, usado para acessar feeds de bibliotecas do Orchestrator. Crie um Token de acesso pessoal e adicione escopo de acesso à API do Orchestrator OR.Execution.Read. Consulte Tokens de acesso pessoal. Ou configure uma ID do aplicativo e um segredo usando --orchestrator-application-id e --orchestrator-application-secret.
--orchestrator-application-idID do Aplicativo OAuth para autenticação do Orchestrator (alternativa ao PAT). Use com --orchestrator-application-secret. Consulte Gerenciamento de aplicativos OAuth externos.
--orchestrator-application-secretSegredo do aplicativo OAuth para autenticação do Orchestrator (alternativa ao PAT). Use com --orchestrator-application-id. Consulte Gerenciamento de aplicativos OAuth externos.
--enabled-extensionsComma-separated list of extensions to enable. See Available extensions.
--disabled-extensionsLista de extensões a serem desabilitadas separada por vírgulas. As extensões disponíveis são preenchidas dinamicamente com base em extensões descobertas.
--disable-all-extensionsDesabilite todas as extensões. Essa opção é mutuamente exclusiva com --enabled-extensions e --disabled-extensions.
--uia-package-versionA versão do pacote de atividades do UI Automation para usar na migração.O padrão é 25.10.21 se não especificado. A versão de destino deve ser superior ao padrão. Se não, o padrão é usado.
--uia-fix-selector-strategyQuando definido como true, corrige a ambiguidade de enumeração SelectorStrategy em expressões pré-existentes após a migração. Aplica-se à versão 25.10.29 ou posterior do UIAutomation. Padrão: (false). A ambiguidade resulta da enumeração SelectorStrategy existente nos namespaces UiPath.Core e UiPath.UIAutomationNext.Enums. O uso do nome totalmente qualificado resolve esse problema.
--uia-enable-partial-migrationMigrate activities even when full compatibility cannot be guaranteed. The migration generates the closest supported equivalent, which may require manual adjustments to function correctly. Requires UI Automation package 25.10.38 or later (see --uia-package-version). This option is ignored when using earlier package versions. Default: false.
--mail-o365-package-versionA versão do pacote de atividades do Microsoft Office 365 a ser usada na migração. O padrão é a versão 3.6.10. A versão de destino deve ser superior ao padrão. Se não, o padrão é usado.
--config, --mail-configEspecifica o caminho para um arquivo JSON de configuração personalizado. A configuração pode ser usada para modificar o comportamento padrão de certas atividades ou atribuir valores constantes a propriedades que exigem entrada do usuário durante a migração. Consulte Arquivo de configuração.
--gsuite-package-versionThe version of the UiPath.GSuite.Activities activities package to use for migration. Defaults to version 3.8.10 if not specified. The target version must be higher than the default version. If the target version is lower, the default version will be used.
--gsuite-configEspecifica o caminho para um arquivo JSON de configuração personalizado. A configuração pode ser usada para modificar o comportamento padrão de certas atividades ou atribuir valores constantes a propriedades que exigem entrada do usuário durante a migração. Consulte Arquivo de configuração.
--gsuite-migrate-onlyComma-separated list of services included in GSuite migrator (case sensitive). Available values: gmail, calendar, drive, docs, sheets, appsscript. If specified, only those services will be run.

Migrar um projeto

Essa opção executa a migração real de um projeto ou de partes dele.

Comando: <tool-install-dir>\UiPath.Upgrade.exe upgrade

Uso: UiPath.Upgrade.exe upgrade [options]

OpçãoDescription
-?, -h, --helpMostrar informações de ajuda e uso.
-p, --project-path (obrigatório)Caminho para a pasta que contém o arquivo project.json do projeto.
-o, --output-pathCaminho de saída para o projeto atualizado (opcional). Se não for especificado, o sistema cria uma nova pasta com o sufixo _Upgraded.
-v, --verboseHabilitar o registro Verbose.
-f, --output-formatFormato de saída: console (padrão) ou sarif.
-e, --extension-directoryDiretório para pesquisar extensões. Apenas para uso avançado.
--ignore-missing-dependenciesIgnorar dependências ausentes durante a atualização. As dependências ausentes aparecem como avisos. Os fluxos de trabalho afetados podem relatar tipos ausentes, não compilar ou não executar outras migrações necessárias.
--orchestrator-urlA URL completa do Orchestrator, incluindo o nome da organização. Se não for especificada, usa-se a conexão do Studio. Quando especificadas, as credenciais são necessárias.
--orchestrator-tenantO nome do tenant do Orchestrator. O valor padrão é DefaultTenant se não for especificado.
--orchestrator-patToken de acesso pessoal (PAT) para autenticação do Orchestrator. Requer o escopo OR.Execution.Read.
--orchestrator-application-idID do Aplicativo OAuth para autenticação do Orchestrator (alternativa ao PAT).
--orchestrator-application-secretSegredo do aplicativo OAuth (alternativa ao PAT).
--enabled-extensionsComma-separated list of extensions to enable. See Available extensions.
--disabled-extensionsLista de extensões a serem desabilitadas separada por vírgulas. As extensões disponíveis são preenchidas dinamicamente com base em extensões descobertas.
--disable-all-extensionsDesabilite todas as extensões. Mutuamente exclusivos com --enabled-extensions e --disabled-extensions.
--uia-package-versionVersão UiPath.UIAutomation.Activities do pacote de destino. O padrão é 25.10.21.
--uia-fix-selector-strategyQuando definido como true, corrige a ambiguidade de enumeração SelectorStrategy em expressões pré-existentes após a migração. Aplica-se à versão 25.10.29 ou posterior do UIAutomation. Padrão: (false). A ambiguidade resulta da enumeração SelectorStrategy existente nos namespaces UiPath.Core e UiPath.UIAutomationNext.Enums. O uso do nome totalmente qualificado resolve esse problema.
--uia-enable-partial-migrationMigrate activities even when full compatibility cannot be guaranteed. The migration generates the closest supported equivalent, which may require manual adjustments to function correctly. Requires UI Automation package 25.10.38 or later (see --uia-package-version). This option is ignored when using earlier package versions. Default: false.
--mail-o365-package-versionA versão do pacote de atividades do Microsoft Office 365 a ser usada na migração. O padrão é a versão 3.6.10. A versão de destino deve ser superior ao padrão. Se não, o padrão é usado.
--config, --mail-configEspecifica o caminho para um arquivo JSON de configuração personalizado. A configuração pode ser usada para modificar o comportamento padrão de certas atividades ou atribuir valores constantes a propriedades que exigem entrada do usuário durante a migração. Consulte Arquivo de configuração.
--gsuite-package-versionThe version of the UiPath.GSuite.Activities activities package to use for migration. Defaults to version 3.8.10 if not specified. The target version must be higher than the default version. If the target version is lower, the default version will be used.
--gsuite-configEspecifica o caminho para um arquivo JSON de configuração personalizado. A configuração pode ser usada para modificar o comportamento padrão de certas atividades ou atribuir valores constantes a propriedades que exigem entrada do usuário durante a migração. Consulte Arquivo de configuração.
--gsuite-migrate-onlyComma-separated list of services included in GSuite migrator (case sensitive). Available values: gmail, calendar, drive, docs, sheets, appsscript. If specified, only those services will be run.

Migração de repositório em massa

Essa opção analisa ou migra todos os projetos encontrados em uma hierarquia de pastas.

Comando: <tool-install-dir>\UiPath.Upgrade.exe bulk

Uso: UiPath.Upgrade.exe bulk [options]

OpçãoDescription
-?, -h, --helpMostrar informações de ajuda e uso.
-p, --path (obrigatório)Caminho para o repositório ou pasta. A migração ocorre em todas as subpastas que contêm um arquivo project.json.
-c, --command (obrigatório)Comando a executar: analyze ou upgrade.
-v, --verboseHabilitar o registro Verbose.
-o, --output-pathCaminho raiz de saída para projetos atualizados. Essa pasta é criada se não existir.O sistema cria uma nova pasta com o sufixo _Upgraded para o projeto atualizado.
--orchestrator-urlA URL do Orchestrator completa, incluindo o nome da organização.
--orchestrator-tenantO nome do tenant do Orchestrator. O valor padrão é DefaultTenant se não for especificado.
--orchestrator-patToken de acesso pessoal (PAT) para autenticação do Orchestrator. Requer o escopo OR.Execution.Read.
--orchestrator-application-idID do Aplicativo OAuth para autenticação do Orchestrator (alternativa ao PAT).
--orchestrator-application-secretSegredo do aplicativo OAuth (alternativa ao PAT).
--enabled-extensionsComma-separated list of extensions to enable. See Available extensions.
--disabled-extensionsLista de extensões a serem desabilitadas separada por vírgulas. As extensões disponíveis são preenchidas dinamicamente com base em extensões descobertas.
--disable-all-extensionsDesabilite todas as extensões. Mutuamente exclusivos com --enabled-extensions e --disabled-extensions.

Exemplos

Analise um único projeto com saída detalhada:

UiPath.Upgrade.exe analyze -p C:\to-migrate\LegacyProcess -v
UiPath.Upgrade.exe analyze -p C:\to-migrate\LegacyProcess -v

Migre um projeto e especifique uma versão do pacote de UI Automation de destino:

UiPath.Upgrade.exe upgrade -p C:\to-migrate\LegacyProcess -o C:\to-migrate\WindowsProcess --uia-package-version=25.10.27 -v
UiPath.Upgrade.exe upgrade -p C:\to-migrate\LegacyProcess -o C:\to-migrate\WindowsProcess --uia-package-version=25.10.27 -v

Migre um projeto usando uma configuração de conexão personalizada:

UiPath.Upgrade.exe upgrade --project-path=C:\to-migrate\LegacyProcess --config=C:\to-migrate\connection.json
UiPath.Upgrade.exe upgrade --project-path=C:\to-migrate\LegacyProcess --config=C:\to-migrate\connection.json

Execute uma análise em massa em uma pasta:

UiPath.Upgrade.exe bulk -p C:\to-migrate -c analyze
UiPath.Upgrade.exe bulk -p C:\to-migrate -c analyze

Migrate only Mail and GSuite classic activities in the project, without touching other activities, such as UI Automation classic activities:

UiPath.Upgrade.exe upgrade --project-path="C:\To Migrate\LegacyProcess" --enabled-extensions=MailActivities,GSuiteActivities
UiPath.Upgrade.exe upgrade --project-path="C:\To Migrate\LegacyProcess" --enabled-extensions=MailActivities,GSuiteActivities

Migrate only the Legacy project to Windows (same as Studio Windows - Legacy converter). The command does not migrate any of the supported activity types:

UiPath.Upgrade.exe upgrade -p "C:\To Migrate\LegacyProcess" -o "C:\To Migrate\WindowsProcess" --disable-all-extensions
UiPath.Upgrade.exe upgrade -p "C:\To Migrate\LegacyProcess" -o "C:\To Migrate\WindowsProcess" --disable-all-extensions
Observação:
  • As opções de linha de comando usam as seguintes convenções:
    • As opções curtas (por exemplo, -p value) devem usar um espaço para separar a opção de seu valor.
    • As opções longas (por exemplo, --project-path=value) normalmente usam o sinal de igual para vincular explicitamente o valor ao parâmetro específico.Na maioria dos casos, as opções longas também podem ser especificadas usando um espaço (por exemplo, --project-path value). A opção --config é uma exceção e é compatível apenas com a sintaxe de sinal de igual (por exemplo, --config=value).
  • A saída padrão do comando upgrade é um relatório SARIF armazenado no projeto original em uma pasta .upgrade. O sistema salva o projeto migrado no caminho de saída.

Supported syntax for collections

Several CLI options accept collection values: --enabled-extensions, --disabled-extensions, and --gsuite-migrate-only. Each supports multiple syntaxes for specifying values.

Formatos suportados

For example, all of these bind the same values to the ["drive", "gmail"] collection:

  • Comma-separated: --gsuite-migrate-only=drive,gmail or --gsuite-migrate-only=drive --gsuite-migrate-only=gmail
  • Space-separated: --gsuite-migrate-only drive,gmail or --gsuite-migrate-only drive --gsuite-migrate-only gmail
  • Colon syntax (less common): --gsuite-migrate-only:drive,gmail
  • Mixed syntax: --gsuite-migrate-only=drive --gsuite-migrate-only gmail

Comportamento padrão

If the option is missing from the command:

  • --gsuite-migrate-only - migrates all Google Workspace services
  • --enabled-extensions - all extensions are enabled
  • --disabled-extensions- no extensions are disabled
Observação:

Specifying an occurrence with no values (for example, --gsuite-migrate-only "") is rejected by the validator.

Available extensions

The following extensions can be specified for the --enabled-extensions or --disabled-extensions option:

ExtensãoDescription
UiAutomationActivitiesMigrates classic UI Automation activities in the UiPath.UIAutomation.Activities package to modern UI Automation activities.
MailActivitiesMigrates dependencies from UiPath.Mail.Activities (classic Outlook-based activities) to UiPath.MicrosoftOffice365.Activities (Integration Service–based activities).
MicrosoftActivitiesExtensionTries to convert activities from the Microsoft.Activities.Extensions package, which works only on .NET Framework (Legacy).
GSuiteActivitiesMigrates classic GSuite activities in the UiPath.GSuite.Activities package to modern activities within the same package.

Exemplo: --enabled-extensions MailActivities,GSuiteActivities

By default, all extensions are enabled. If the --enabled-extensions option is not specified, the analyze, upgrade, and bulk commands will process all the activities in supported packages.

Arquivo de configuração

Use um arquivo de configuração para definir valores constantes para propriedades de atividades que exigem entrada manual durante a migração ou para substituir o comportamento de migração padrão.

Pass the file path to the migrator using the --config option with the assignment operator =, as in this example: --config=C:\to-migrate\connection.json. You must use the appropriate config option depending on the migration type:

  • For Outlook Mail activities migration: --config or --mail-config
  • For classic GSuite activities migration: --gsuite-config

O arquivo de configuração deve seguir este formato:

{
  "{reserved-configuration-key}": "{value}",
  "...": "...",
  "{path-to-workflow} > [{connector-type}] {activity-display-name}": {
    "{property-name}": "{property-value}"
  }
}
{
  "{reserved-configuration-key}": "{value}",
  "...": "...",
  "{path-to-workflow} > [{connector-type}] {activity-display-name}": {
    "{property-name}": "{property-value}"
  }
}
Special Notes
  • The only {property-name} that can be assigned is ConnectionId.
  • * acts as a wildcard and matches any value in {path-to-workflow}, {connector-type} and {activity-display-name}. Thus, multiple workflows or activities can be specified for the same collection of properties. When multiple entries match the same workflow, activity, connector tuple, only the last match is applied.
  • The [{connector-type}] part is optional. When omitted, the entry matches any activity regardless of connector type. When specified, the entry only matches activities bound to that connector. At least one of [{connector-type}] or {activity-display-name} must be present.
Reserved Configuration Keys

{reserved-configuration-key} representa alterações de comportamento específicas da atividade:

  • SaveOutlookMailMessage_IgnoreSaveAsType: se definida como true, a opção desabilita a verificação Save as type para tipos não compatíveis. Assim, a atividade pode ser migrada independentemente de Save as type option.
Available Connector Types

The following connector types can be used with the [{connector-type}] pattern:

Google (GSuite) connectors:

  • uipath-google-drive: Google Drive connector
  • uipath-google-docs: Google Docs connector
  • uipath-google-sheets: Google Spreadsheets connector
  • uipath-google-gmail: Gmail connector
  • uipath-google-workspace: Google Workspace connector
  • uipath-google-tasks: Google Tasks connector
  • uipath-google-forms: Google Forms connector

Microsoft connectors:

  • uipath-microsoft-outlook365: Microsoft Outlook 365 Graph connector
  • uipath-microsoft-outlook365ews: Microsoft Outlook 365 EWS (Exchange Web Services) connector
  • uipath-microsoft-onedrive: Microsoft OneDrive connector
  • uipath-microsoft-365: Microsoft Office 365 connector
  • uipath-mail-mail: Mail connector

Obtenção da ConnectionId do Orchestrator

A partir de março de 2026, as conexões mudaram do Integration Service para o Orchestrator. Você pode recuperar o ConnectionId diretamente da URL de conexão no Orchestrator:

  1. Navegue até sua conexão no Orchestrator: acesse a pasta do Orchestrator onde sua conexão do Microsoft Outlook 365 está localizada.
  2. Open the connection: Select the connection to view its details.
  3. Verifique a URL: o ConnectionId está visível na URL do navegador com o seguinte formato: https://cloud.uipath.com/{OrganizationName}/{TenantName}/orchestrator_/connections/{ConnectionId}/edit/tid={TId}
Resultado

O ID da conexão é visível no URL do navegador no formato .../connections/{ConnectionId}/edit/tid={TId}.

Setting Connection IDs for Mail activities

The ConnectionId property is not populated automatically during migration. You must set it manually per workflow/activity using a configuration file. The configuration file can be passed to the Activity Migrator using the --config <config> or --mail-config <config> command line argument.

The following example assigns different connection IDs to specific Productivity activities (Microsoft Office 365), using a wildcard fallback:

{
    "* > *": {
        "ConnectionId": "00000000-0000-0000-0000-000000000001"
    },
    "*\\Projects\\MailMigration\\Main.xaml > Get *": {
        "ConnectionId": "00000000-0000-0000-0000-000000000002"
    },
    "*\\Projects\\MailMigration\\* > Send Mail": {
        "ConnectionId": "00000000-0000-0000-0000-000000000003"
    }
}
{
    "* > *": {
        "ConnectionId": "00000000-0000-0000-0000-000000000001"
    },
    "*\\Projects\\MailMigration\\Main.xaml > Get *": {
        "ConnectionId": "00000000-0000-0000-0000-000000000002"
    },
    "*\\Projects\\MailMigration\\* > Send Mail": {
        "ConnectionId": "00000000-0000-0000-0000-000000000003"
    }
}

Neste exemplo:

  • * > * corresponde a todas as atividades e atua como um fallback quando não há entradas correspondentes abaixo.
  • *\\Projects\\MailMigration\\Main.xaml > Get * corresponde a qualquer atividade cujo nome de exibição comece com Get em Main.xaml.
  • *\\Projects\\MailMigration\\* > Send Mail corresponde à atividade Send Mail em todos os fluxos de trabalho na pasta MailMigration.
{
    "* > *": {
        "ConnectionId": "00000000-0000-0000-0000-000000000001"
    },
    "* > [uipath-microsoft-outlook365] *": {
        "ConnectionId": "00000000-0000-0000-0000-000000000002"
    },
    "*\\Projects\\MailMigration\\Main.xaml > [uipath-microsoft-outlook365] Get *": {
        "ConnectionId": "00000000-0000-0000-0000-000000000003"
    }
}
{
    "* > *": {
        "ConnectionId": "00000000-0000-0000-0000-000000000001"
    },
    "* > [uipath-microsoft-outlook365] *": {
        "ConnectionId": "00000000-0000-0000-0000-000000000002"
    },
    "*\\Projects\\MailMigration\\Main.xaml > [uipath-microsoft-outlook365] Get *": {
        "ConnectionId": "00000000-0000-0000-0000-000000000003"
    }
}

Neste exemplo:

  • * > * corresponde a todas as atividades e atua como um fallback quando não há entradas correspondentes abaixo.
  • * > [uipath-microsoft-outlook365] * overrides for all Outlook activities.
  • *\\Projects\\MailMigration\\Main.xaml > [uipath-microsoft-outlook365] Get * further narrows to Get * activities in a specific workflow.

Setting Connection IDs for GSuite activities

The modern Connection-Service activities require a ConnectionId that the migrator generally cannot infer. Two cases:

  1. Inside an OAuth GSuiteApplicationScope — the activity inherits the scope's connection at run time, so ConnectionId is left empty (UseConnectionService is set to false on the activity).
  2. Outside a scope, OR after a connection-service scope was unwrapped to a Sequence during migration — the activity needs an explicit ConnectionId. The migrator cannot generate one because Studio runtime, not the migrator, owns the IS connection lifecycle.

To unblock this case the migrator accepts a JSON config file (--gsuite-config <path>) that declaratively maps activity instances to ConnectionId values. The same mechanism is used by Mail (--mail-config, alias --config).

{
  "{path-to-workflow} > [{connector-type}] {activity-display-name}": {
    "ConnectionId": "00000000-0000-0000-0000-000000000001"
  }
}
{
  "{path-to-workflow} > [{connector-type}] {activity-display-name}": {
    "ConnectionId": "00000000-0000-0000-0000-000000000001"
  }
}

In the schema above, each rule is a glob over three coordinates:

  • {path-to-workflow} — the workflow file path (Windows-style separators normalised). * is a wildcard.
  • [{connector-type}]optional. The IS connector key bound to the modern activity (e.g. uipath-google-drive, uipath-google-gmail). If omitted, the rule matches any connector.
  • {activity-display-name} — the display name of the migrated activity. * is a wildcard.

When multiple rules match the same workflow + activity + connector tuple, the last match wins per property, and properties set by an earlier match are preserved when not overwritten — making it easy to layer a global default with per-activity overrides:

{
  "* > *": {
    "ConnectionId": "00000000-0000-0000-0000-000000000001"
  },
  "* > [uipath-google-drive] *": {
    "ConnectionId": "00000000-0000-0000-0000-000000000002"
  },
  "*\\Projects\\Demo\\Main.xaml > [uipath-google-drive] Get *": {
    "ConnectionId": "00000000-0000-0000-0000-000000000003"
  },
  "* > [uipath-google-sheets] *": {
    "ConnectionId": "00000000-0000-0000-0000-000000000004"
  },
  "* > [uipath-google-docs] *": {
    "ConnectionId": "00000000-0000-0000-0000-000000000005"
  },
  "* > [uipath-google-gmail] *": {
    "ConnectionId": "00000000-0000-0000-0000-000000000006"
  }
}
{
  "* > *": {
    "ConnectionId": "00000000-0000-0000-0000-000000000001"
  },
  "* > [uipath-google-drive] *": {
    "ConnectionId": "00000000-0000-0000-0000-000000000002"
  },
  "*\\Projects\\Demo\\Main.xaml > [uipath-google-drive] Get *": {
    "ConnectionId": "00000000-0000-0000-0000-000000000003"
  },
  "* > [uipath-google-sheets] *": {
    "ConnectionId": "00000000-0000-0000-0000-000000000004"
  },
  "* > [uipath-google-docs] *": {
    "ConnectionId": "00000000-0000-0000-0000-000000000005"
  },
  "* > [uipath-google-gmail] *": {
    "ConnectionId": "00000000-0000-0000-0000-000000000006"
  }
}

The example above also configures different connection IDs for different Google Workspace services (Drive, Sheets, Docs, Gmail).

ConnectionId is the only property the config can populate. When a ConnectionId is required but no rule matches, the migrator emits an action required pointing the user back at the config file.

Comportamento do escopo do aplicativo UI Automation após migração

A maioria das atividades modernas de UI Automation requer um escopo de aplicativo (atividade Use Application/Browser).Durante a migração, dois tipos de escopos são criados:

Escopos criados organicamente

Esses escopos são gerados automaticamente ao migrar atividades com escopo clássicas, como Abrir navegador e Anexar navegador. Esses escopos não são otimizados para evitar alterar a intenção e o fluxo originais do fluxo de trabalho migrado.

Escopos gerados sinteticamente

Geramos esses escopos para garantir que o fluxo de trabalho seja compilado e executado corretamente após a migração. Quando dois escopos consecutivos têm propriedades idênticas (por exemplo, o mesmo seletor ou mecanismo de OCR), eles são mesclados em um único escopo enquanto preservam a ordem original da atividade.

Limitações

Atividades do UIAutomation

  • A versão de destino mínima compatível de UiPath.UIAutomation.Activities é 25.10.21.
  • Algumas propriedades de atividades têm limitações de migração. Veja as listas de atividades compatíveis:
  • Os fluxos de trabalho migrados que usam atividades modernas de UI Automation podem ser executados mais lentamente do que os fluxos de trabalho originais que usam atividades clássicas de UI Automation.

Atividades de produtividade

Limitações da ferramenta

  • Por padrão, a ferramenta de migração de atividades usa feeds NuGet configurados em NuGet.config: Official, Local e Marketplace. Para incluir feeds de bibliotecas do Orchestrator, use as opções para os comandos analyze, upgrade e bulk: --orchestrator-url, --orchestrator-tenant, --orchestrator-pat, --orchestrator-application-id e --orchestrator-application-secret.
  • As atividades que usam tipos ou assemblies gerados dinamicamente (por exemplo, algumas atividades do Excel podem ter nomes de colunas como propriedades em um tipo gerado dinamicamente) podem causar um erro Type not found em arquivos .xaml após a migração.

Regra do Analisador de Fluxo de Trabalho do Studio

  • The ST-AMG-001 Workflow Analyzer rule is available starting with Studio 2024.10.25 LTS, Studio 2025.10.8 LTS and Studio 2026.0.189 STS.

Melhores práticas de migração

Antes da migração

  1. Faça backup de seus projetos: sempre crie um backup completo antes de executar quaisquer comandos de migração.
  2. Atualize os pacotes do Studio e de atividades: use a versão mais recente do UiPath Studio e certifique-se de que as versões de pacotes de destino atendam aos requisitos mínimos (UiPath.UIAutomation.Activities >= 25.10.21 e UiPath.MicrosoftOffice365.Activities >= 3.6.10).
  3. Analise antes de atualizar: execute primeiro o comando analyze. Use UiPath.Upgrade.exe analyze -p -v para gerar um relatório SARIF e identificar possíveis problemas sem modificar o projeto.
  4. Verificar dependências e feeds do NuGet: confirme se os feeds Oficial, Local e Marketplace estão configurados corretamente em NuGet.config.
  5. Migre as bibliotecas primeiro quando um projeto depende de projetos de bibliotecas: somente depois migre os projetos que as consomem.

Durante a migração

  1. Comece com um único projeto: teste a migração em um projeto usando UiPath.Upgrade.exe upgrade -p -v antes de executar uma operação em massa.
  2. Use a migração em massa para vários projetos: uma vez validado, execute UiPath.Upgrade.exe bulk -p -v. Certifique-se de que a estrutura das pastas esteja limpa e consistente.
  3. Forneça um arquivo de configuração para IDs de conexão: para atividades do Microsoft 365 ou do GSuite, crie um arquivo de configuração com os valores ConnectionId necessários e o transmita a --config:
{
    "* > *": {
        "ConnectionId": "00000000-0000-0000-0000-000000000001"
    }
}
{
    "* > *": {
        "ConnectionId": "00000000-0000-0000-0000-000000000001"
    }
}

Após a migração

  1. Revise o relatório do SARIF: verifique a pasta .upgrade no diretório do projeto e resolva quaisquer problemas sinalizados.
  2. Abra o projeto migrado no Studio e execute Analisar Projeto: revise os resultados da regra ST-AMG-001 do Analisador de Fluxo de Trabalho (disponível no Studio 2025.10.8 Suporte em Longo Prazo/ Studio 2026.0.189 STS ou superior) para identificar atividades que exigem ações pós-migração.
  3. Validar escopos de aplicativo: confirme que os escopos mesclados comportam-se conforme o esperado. Teste fluxos de trabalho com atividades Use Application/Browser.
  4. Executar testes de ponta a ponta: execute fluxos de trabalho migrados em um ambiente controlado antes de implantar na produção.

Desempenho e manutenção

  1. Otimizar seletores de UI Automation: após a migração, revise os seletores para obter precisão e estabilidade.
  2. Monitorar período de execução: as atividades modernas podem ser executadas mais lentamente no início. Otimize onde necessário.
  3. Documentar suas alterações: mantenha um registro de projetos migrados, versões de destino e configurações aplicadas para fins de auditoria e reversão.

Esta página foi útil?

Conectar

Precisa de ajuda? Suporte

Quer aprender? Academia UiPath

Tem perguntas? Fórum do UiPath

Fique por dentro das novidades