- Visão geral
- Texto Explicativo
- Complex Scenarios
- Credenciais
- Data Service
- Notas de versão
- Sobre o pacote de atividades Data Service
- Compatibilidade do projeto
- Criar Gravação de Entidade
- Excluir Registro de Entidade
- Obter Registro de Entidade Por Id
- Consultar Registros de Entidade
- Atualizar Registro de Entidade
- Carregar Arquivo no Campo de Registro
- Baixar arquivo do Campo de Registro
- Excluir Arquivo do Campo de Registro
- Criar Vários Registros de Entidade
- Atualizar Vários Registros de Entidade
- Excluir Vários Registros de Entidade
- Formulário
- Notas de versão
- Compatibilidade do projeto
- Formulários em tempo real
- Atualização de dados do formulário
- Execução de formulários usando JavaScript
- Personalização de formulários usando CSS
- Componentes condicionais
- Adição de vários componentes na mesma linha em Colunas
- Como usar o componente Data Table
- Get File/Folder Path
- Leitura de valores de célula de um componente de Grade de Dados
- Exibição de arquivos PDF
- Exibição de imagens em formulários
- Rolagem através de grades de dados
- Uso de ferramentas de desenvolvimento com formulários
- Calcular valores do componente do formulário
- Como gerenciar datas em formulários
- Como abrir hiperlinks dentro de formulários
- Exibição de uma guia padrão em formulários
- Exibição do rótulo completo de um componente
- Como pesquisar strings longas em listas suspensas
- Sobre a experiência pré-23.4 do Form
- Compatibilidade do Projeto
- Formulários em tempo real
- Caixas de seleção dinâmicas
- Menus suspensos condicionais
- Exibindo uma guia padrão
- Exibição de imagens
- Exibição de arquivos PDF
- Exibição do rótulo completo
- Elementos HTML dinâmicos
- Gerenciamento de datas
- Como pesquisar strings longas em menus suspensos
- Personalização de formulários usando arquivos CSS locais
- Execução do bloco Fazer durante alteração de caixa de seleção
- Personalização da largura de colunas
- Atualização de dados do formulário
- Redefinição de dados da coleção
- Lógica Avançada
- Execução do bloco Fazer durante alteração de opção em menu suspenso
- Leitura de valores de célula de um componente de Grade de Dados
- Componentes condicionais
- Rolagem através de componentes de Grade de Dados
- Como usar o componente de Grade
- Ferramentas de Desenvolvedor
- Valor Calculado
- Menus suspensos dinâmicos
- Como alternar abas com um clique de botão
- Como abrir hiperlinks dentro de formulários
- FTP
- IPC
- Persistence
- Notas de versão
- Compatibilidade do projeto
- Sobre o pacote de atividades Persistence
- Bulk Form Designer
- Start Job And Get Reference
- Wait for Job and Resume
- Add Queue Item And Get Reference
- Wait For Queue Item And Resume
- Wait for Form Task and Resume
- Resume After Delay
- Assign Tasks
- Create External Task
- Wait For External Task and Resume
- Complete Task
- Forward Task
- Get Form Tasks
- Get Task Data
- Add Task Comment
- Update Task Labels
- Criar tarefa do aplicativo
- Wait For App Task and Resume
- Trabalhando com tarefas de aplicativo
- Criando sua primeira ação de formulário
- Controles avançados para menus suspensos
- Incorporando objetos em ações de formulário
- Permitindo que usuários baixem arquivos para o bucket de armazenamento
- Adicionando lógica avançada usando Java Script
- Configurando uma guia padrão
- Removendo o botão Excluir de Editar grade usando CSS personalizado
- Personalização de modelos de Editar grade
- Uso de botões para disparar uma lógica personalizada
- Usando um layout de formulário externo
- Expansão dinâmica de componentes do formulário no runtime
- Amostras de Fluxos de Trabalho
- Pipelines do Automation Ops
- System
- Notas de versão
- Sobre o pacote de atividades System
- Compatibilidade do projeto
- Assistente do Construtor RegEx
- É Correspondência de Texto
- Encontrar Padrões Correspondentes
- Modify Text
- Modify Date
- Replace Matching Patterns
- Text to Left/Right
- Adicionar Coluna de Dados
- Add Data Row
- Criar Tabela de Dados
- Clear Data Table
- Get Row Item
- Update Row Item
- Merge Data Table
- Output Data Table
- Remove Data Column
- Remove Data Row
- For Each Row in Data Table
- Generate Data Table From Text
- Create List
- Append Item to List
- Read List Item
- Update List Item
- Add Log Fields
- Comentar / Atividades desabilitadas
- Comentar
- Change Type
- Mensagem do Log
- Remove Log Fields
- Invoke Com Method
- Format Value
- Lookup Data Table
- Filtrar Tabela de Dados
- Sort Data Table
- Remove Duplicate Rows
- Join Data Tables
- Report Status
- Anexar Linha
- Compress/Zip Files
- Copy File
- Copy Folder
- Create Folder
- Create File
- Excluir
- File Exists
- Folder Exists
- Extract/Unzip Files
- Wait for Download
- File Change Trigger
- For Each File In Folder
- For Each Folder in Folder
- Delete File
- Delete Folder
- Move File
- Move Folder
- Rename Folder
- Rename File
- Path Exists
- Ler Arquivo de Texto
- Gravar Arquivo de Texto
- Get File Info
- Get Folder Info
- Get Processes
- Get Username/Password
- Kill Process
- Beep
- Get Environment Folder
- Get Environment Variable
- Invoke Power Shell
- Input Dialog
- Caixa de Mensagem
- Browse for file
- Pesquisar pasta
- Invoke VBScript
- Process End Trigger
- Process Start Trigger
- File Change Trigger v3
- Trigger Scope
- Repeat Number Of Times
- Colocar todo o texto em Maiúscula/Minúscula
- Set Environment Variable
- For Each
- Break / Exit Loop
- Tentar Escopo Novamente
- Check True
- Check False
- Workflow Placeholder
- Invocar Arquivo de Fluxo de Trabalho
- Launch Workflow Interactive
- Invoke Code
- Continue / Skip Current
- Multiple Assign
- Invocar Processo
- Run Parallel Process
- While
- Do While
- Repeat Number Of Times
- Raise Alert
- Orchestrator HTTP Request
- Get Asset
- Get Credential / Get Orchestrator Credential
- Set Asset
- Set Credential
- Get Jobs
- Get Current Job Info
- Iniciar Trabalho
- Parar Tarefa
- Add Queue Item
- Add Transaction Item
- Delete Queue Items
- Get Queue Items
- Obter item de transação
- Postpone Transaction Item
- Set Transaction Progress
- Set Transaction Status
- Should Stop
- Wait Queue Item
- Bulk Add Queue Items
- Write Storage Text
- Upload Storage File
- List Storage Files
- Read Storage Text
- Download Storage File
- Delete Storage File
- Entrada Personalizada
- Append Item to Collection
- Build Collection
- Collection to DataTable
- Exists In Collection
- Filter Collection
- Merge Collections
- Remove From Collection
- Reset Timer
- Resume Timer
- Start Timer
- Stop Timer
- Timeout Scope
- Manual Trigger
- When New Item Added to Queue
- Parar Gatilhos Locais
- Executar Gatilhos Locais
- Repetir gatilho
- Gatilho de Tempo
- Desabilitar Gatilho Local
- Habilitar Gatilho Local
- Notify Global Variable Changed
- Gatilho de variável global alterada
- Extrair Texto
- Localizar e substituir
- Retornar
- Extrair data e hora de um texto
- Alterar formatação para texto
- Add or Subtract from Date
- Baixar arquivo da URL
- Formatar data como texto
- Dividir texto
- Combinar texto
- Add Data Row
- AddQueueItem
- Add Transaction Item
- Anexar Linha
- BulkAddQueueItems
- Clear Data Table
- Compactar Arquivos ZIP
- Copy File
- Create File
- Create Folder
- Delete File or Folder
- Delete Queue Items
- Delete Storage File
- Download Storage File
- ExtractUnzip Files
- Filtrar Tabela de Dados
- Get Asset
- Get Credential
- GetJobs
- Get Queue Item
- GetQueueItems
- Obter recurso para caminho local
- Get Row Item
- Obter item de transação
- Invocar Processo
- Join Data Tables
- List Storage Files
- Lookup Data Table
- Merge Data Table
- Move File
- Orchestrator HTTP Request
- OutputDataTable
- Path Exists
- Postpone Transaction Item
- Read Storage Text
- Ler Arquivo de Texto
- Remove Data Column
- Remove Duplicate Rows
- Substituir
- Set Asset
- Set Credential
- SetTransactionProgress
- Set Transaction Status
- Sort Data Table
- Iniciar Trabalho
- Parar Tarefa
- Update Row Item
- Upload Storage File
- Wait Queue Item
- Write Storage Text
- Gravar Arquivo de Texto
- Teste
- Notas de versão
- Compatibilidade do projeto
- Sobre o pacote de atividades Testing
- O nome do caso de teste não é exclusivo no projeto
- Convenção de nomenclatura do caso de teste quebrada
- Verificações ausentes dentro do caso de teste
- Fluxos de trabalho não testados
- Test Manager conectado
- Simulação não usada
- Caso de teste sem anotações
- Caso de teste/fluxo de trabalho muito complexo
- O caso de teste possui muitas ramificações
- Configurações do projeto
- Add Test Data Queue Item
- Address
- Attach Document
- Bulk Add Test Data Queue Items
- Delete Test Data Queue Items
- Get Test Data Queue Item
- Get Test Data Queue Items
- Given Name
- Sobrenome
- Random Date
- Random Number
- Random String
- Random Value
- Verify Control Attribute
- Verify Expression
- Verify Expression with Operator
- Verify Range
- Address
- Add Test Data Queue Item
- Attach Document
- Bulk Add Test Data Queue Items
- Delete Test Data Queue Items
- Get Test Data Queue Item
- Get Test Data Queue Items
- GivenName
- Sobrenome
- Random Date
- Random Number
- Random String
- Random Value
- VerifyAreEqual
- VerifyAreNotEqual
- VerifyContains
- Verify Expression
- Verify Expression with Operator
- VerifyIsGreater
- VerifyIsGreaterOrEqual
- VerifyIsLess
- VerifyIsLessOrEqual
- VerifyIsRegexMatch
- Verify Range
- Workflow Events
- Workflow Foundation
Menus suspensos dinâmicos
Você pode adicionar listas suspensas dinâmicas em seu formulário, usando o componente Lista suspensa no Form Designer. Esses tutoriais descrevem como criar uma lista suspensa dinâmica com elementos que representam países.
Para criar uma lista suspensa dinâmica:
- Arraste e solte uma atividade de Sequência em seu fluxo de trabalho. Para este exemplo, nomeie-o
DynamicDropdowns
. -
Crie duas variáveis:
2.1. Crie um tipo de variávelString
e defina o escopo como a atividade Sequência. Para este exemplo, nomeie a variávelcountry
e defina o escopo comoDynamicDropdowns
.2.2. Crie um tipo de variávelList<String>
e defina o escopo como a atividade Sequência. Para este exemplo, nomeie a variávelcountryList
e defina o escopo comoDynamicDropdowns
. -
Dentro do campo Default da variável
List<String>
, crie uma nova List do tipo String, que contém os nomes dos países. Por exemplo, dentro do campo Padrão da variávelcountryList
, digite a seguinte expressão:New List (Of String) From { "US", "India", "Romania" }
New List (Of String) From { "US", "India", "Romania" } - Arraste e solte uma atividade Criar formulário em sua Sequência.
-
No menu de propriedades FormFieldsCollection , vincule as variáveis ao seu formulário:
5.1. Crie um argumento do tipo String com a direção de entrada/saída e defina o valor como a variávelString
. Para este exemplo, defina o valor como a variávelcountry
. Nomeie o argumentocountry
5.2. Crie um argumento de Type List<String> com a direção In e defina o valor como a variávelList<String>
. Para este exemplo, defina o valor como a variávelcountryList
. Nomeie o argumentocountry_dropdown
.
country_dropdown
torna a lista suspensa dinâmica e a preenche com os elementos da variável List<String>
.
6. Abra o Designer de formulários.
6.1. Arraste e solte um componente Lista suspensa no Designer de formulário.
String
no campo Nome da propriedade . Para este exemplo, insira country
.
6.3. Salve o componente.
7. Salve o formulário.
Resultado: O componente Drop-down List mostra como opções a lista de Strings criada no passo 3.
Criando uma lista suspensa dinâmica dentro de uma grade de dados
Este tutorial demonstra como criar um dropdown dinâmico dentro de um Data Grid. O componente Data Grid exibe, dentro do formulário, os dados provenientes de uma Tabela de Dados previamente criada. Para criar um menu suspenso dinâmico dentro de uma grade de dados:
-
Crie uma Tabela de Dados usando a atividade Construir Tabela de Dados . Para este exemplo, salve a tabela de dados como uma variável denominada
sampleDataTable
. -
Adicione uma atividade Invoke Code ao seu fluxo de trabalho e defina o Language como CSharp.
2.1. Selecione Editar Código e crie uma lista de Strings, onde você adiciona as opções que deseja exibir dinamicamente na lista suspensa. Por exemplo, adicione o código abaixo dentro do Code Editor:
countryListInitialized = new List<string>(); countryListInitialized.Add("USA"); countryListInitialized.Add("India"); countryListInitialized.Add("Romania"); countryListInitialized.Add("Dubai");
countryListInitialized = new List<string>(); countryListInitialized.Add("USA"); countryListInitialized.Add("India"); countryListInitialized.Add("Romania"); countryListInitialized.Add("Dubai");2.2. Selecione Editar argumentos e crie um argumento que armazenará a lista de Strings criadas dentro de uma variável que você poderá usar posteriormente em seu fluxo de trabalho. O nome do argumento deve ter o mesmo nome da lista criada no Code Editor. Para este exemplo, crie um argumento denominadocountryListInitialized
, com a direçãoIn/Out
, o tipoList<String>
, que tenha o valor definido como uma variávelList<String>
. Para este exemplo, nomeie a variávelcountryListVariable
. -
Adicione uma atividade Criar formulário ao seu fluxo de trabalho.
3.1. Adicione um componente de grade de dados .
3.2. Adicione um componente de campo de texto dentro da grade de dados.
3.3. Adicione um componente de lista suspensa dentro da grade de dados.
-
Abra o FormFieldsCollection e crie os seguintes argumentos para vincular os dados ao formulário:
Name
Direction
Tipo
Valor
Description
dataGridSample
In/Out
TabelaDeDados
sampleDataTable
Este argumento liga os dados da Tabela de Dados ao componente Grade de Dados dentro do formulário.
Para este exemplo, a tabela de dados é armazenada dentro da variávelsampleDataTable
.countryList_dropdown
In/Out
Lista<String>
countryListVariable
Este argumento vincula os dados da lista de Strings ao componente Lista suspensa* dentro do formulário.
O sufixo_dropdown
torna o menu suspenso dinâmico.Para este exemplo, a lista de Strings é armazenada dentro da variávelcountryListVariable
.countryList_parent
Em
String
"dataGridSample"
Esse argumento vincula o menu suspenso dinâmico ao componente Grade de dados por meio do sufixo_parent
e pela inserção da Chave de campo do componente Grade de dados dentro da coluna Valor .Para este exemplo, odataGridSample
é a Chave de Campo do componente Grade de Dados . -
Abra o Designer de formulários.
5.1. Defina a Chave de campo do componente Grade de dados como o argumento que vincula a Tabela de dados ao formulário. Para este exemplo, defina a Chave de campo do componente Grade de dados comodataGridSample
.5.2. Defina a Chave do campo do componente Campo de texto como o nome da coluna Tabela de dados que representa o texto. Para este exemplo, defina-o comoname
.5.3. Defina a Chave de campo do componente Lista suspensa como o nome do argumento que liga a lista de Strings ao formulário. Para este exemplo, defina-o comocountryList
. - Salve cada componente e o formulário.
Resultado: O componente Drop-down List mostra como opções a lista de Strings criada no passo 2, dentro da coluna de um Data Grid.
Para verificar o fluxo de trabalho completo ou para ter uma referência futura, baixe o exemplo do XAML