- Visão geral
- Texto Explicativo
- Complex Scenarios
- Credenciais
- Data Service
- 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
- Obter tarefas do aplicativo
- Add Task Comment
- Update Task Labels
- Criar tarefa do aplicativo
- Wait For App Task and Resume
- Configure task timer
- 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
- Alinhar o conteúdo de um componente de formulário da esquerda para a direita usando atributos JSON
- Amostras de Fluxos de Trabalho
- Pipelines do Automation Ops
- Notas de versão
- Sobre o pacote de atividades Pipelines
- Compatibilidade do projeto
- Ativar implantação da solução
- Analisar
- Criar
- Clonar
- Delete Solution Package
- Deploy Solution
- Download Package
- Download Solution Package
- Baixar configuração do pacote da solução
- Publicar pacote
- Publicar pacote da solução
- Re-sync Solution Project
- Faça testes
- Estágio
- Desinstalar solução
- Processo de atualização
- Carregar pacote da solução
- System
- Notas de versão
- Sobre o pacote de atividades System
- Compatibilidade do projeto
- Codificação de caracteres suportada
- Assistente do Construtor RegEx
- Adicionar Coluna de Dados
- Add Data Row
- Add Log Fields
- Add or Subtract from Date
- Add Transaction Item
- Add Queue Item
- Append Item to Collection
- Append Item to List
- Anexar Linha
- Beep
- Break / Exit Loop
- Browse for file
- Pesquisar pasta
- Build Collection
- Criar Tabela de Dados
- Bulk Add Queue Items
- Alterar formatação para texto
- Change Type
- Check False
- Check True
- Clear Data Table
- Collection to DataTable
- Comentar
- Compress/Zip Files
- Copy File
- Copy Folder
- Combinar texto
- Comentar / Atividades desabilitadas
- Continue / Skip Current
- Create File
- Create Folder
- Create List
- Entrada Personalizada
- Excluir
- Delete File
- Delete Folder
- Delete Storage File
- Delete Queue Items
- Desabilitar Gatilho Local
- Do While
- Baixar arquivo da URL
- Download Storage File
- Habilitar Gatilho Local
- Evaluate Business Rule
- Exists In Collection
- Extract/Unzip Files
- Extrair data e hora de um texto
- Extrair Texto
- File Change Trigger
- File Exists
- Filter Collection
- Filtrar Tabela de Dados
- Folder Exists
- For Each
- For Each File In Folder
- File Change Trigger v3
- Localizar e substituir
- Encontrar Padrões Correspondentes
- For Each Folder in Folder
- For Each Row in Data Table
- Formatar data como texto
- Format Value
- Generate Data Table From Text
- Get Asset
- Get Credential / Get Orchestrator Credential
- Get Current Job Info
- Get Environment Folder
- Get Environment Variable
- Get File Info
- Get Folder Info
- Get Jobs
- Get Processes
- Get Row Item
- Obter item de transação
- Get Username/Password
- Get Queue Items
- Gatilho de variável global alterada
- Input Dialog
- Invoke Code
- Invoke Com Method
- Invoke Power Shell
- Invocar Processo
- Invoke VBScript
- Invocar Arquivo de Fluxo de Trabalho
- É Correspondência de Texto
- Join Data Tables
- Kill Process
- Launch Workflow Interactive
- List Storage Files
- Mensagem do Log
- Lookup Data Table
- Manual Trigger
- Merge Collections
- Merge Data Table
- Caixa de Mensagem
- Modify Date
- Modify Text
- Move File
- Move Folder
- Multiple Assign
- Novo item adicionado à fila
- Notify Global Variable Changed
- Orchestrator HTTP Request
- Output Data Table
- Path Exists
- Postpone Transaction Item
- Process End Trigger
- Process Start Trigger
- Raise Alert
- Read List Item
- Ler Arquivo de Texto
- Read Storage Text
- Remove Data Column
- Remove Data Row
- Remove Duplicate Rows
- Remove From Collection
- Remove Log Fields
- Replace Matching Patterns
- Repeat Number Of Times
- Repetir gatilho
- Rename File
- Rename Folder
- Report Status
- Reset Timer
- Resume Timer
- Tentar Escopo Novamente
- Retornar
- Executar Gatilhos Locais
- Run Parallel Process
- Set Asset
- Set Credential
- Set Environment Variable
- Set Transaction Progress
- Set Transaction Status
- Should Stop
- Dividir texto
- Sort Data Table
- Start Timer
- Iniciar Trabalho
- Parar Tarefa
- Parar Gatilhos Locais
- Stop Timer
- Text to Left/Right
- Colocar todo o texto em Maiúscula/Minúscula
- Gatilho de Tempo
- Trigger Scope
- Timeout Scope
- Update Row Item
- Update List Item
- Upload Storage File
- Wait for Download
- Wait Queue Item
- While
- Workflow Placeholder
- Write Storage Text
- Gravar Arquivo de 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
- Sobre o pacote de atividades Testing
- Compatibilidade do projeto
- 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
- Criar Regra de Comparação
- 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
- Verificar a equivalência dos documentos
- Verify Expression
- Verify Expression with Operator
- Verify Range
- Verificar equivalência do texto
- Address
- AddTestDataQueueItem
- AttachDocument
- BulkAddTestDataQueueItems
- DeleteTestDataQueueItems
- GetTestDataQueueItem
- GetTestDataQueueItems
- GivenName
- LastName
- RandomDate
- RandomNumber
- RandomString
- RandomValue
- VerifyAreEqual
- VerifyAreNotEqual
- VerifyContains
- VerifyExpression
- VerifyExpressionWithOperator
- VerifyIsGreater
- VerifyIsGreaterOrEqual
- VerifyIsLess
- VerifyIsLessOrEqual
- VerifyIsRegexMatch
- VerifyRange
- Workflow Events
- Workflow Foundation
PREVIEWTrabalhando com tarefas de aplicativo
Este tutorial orienta você pelo processo de criação de uma tarefa do aplicativo, que envolve as seguintes fases:
- Criar uma definição de ação e carregá-la no Action Center.
- Desenvolvendo um aplicativo de ação dentro do Apps, e configurando os campos para cada propriedade definida na definição da ação.
- Publicar o aplicativo e criar um fluxo de trabalho no Studio Web ou no Studio Desktop usando a atividade Create App Task .
- Prepare a definição da ação:
- Comece adicionando uma chave de abertura para indicar o início do objeto JSON.
- Dentro do objeto JSON, defina as propriedades
Name
eDescription
como strings, junto com seus valores."Name": "Validate Document", "Description": "Validate and approve invoice",
"Name": "Validate Document", "Description": "Validate and approve invoice", - Adicione uma propriedade
Allowed Actions
como uma matriz de strings para especificar as ações permitidas que você pode realizar no final da ação. Os valores devem ser equivalentes a Complete ou Recusar."AllowedActions": [ "Yes", "No" ],
"AllowedActions": [ "Yes", "No" ], - Adicione uma propriedade
Schema
e atribua a ela um objeto que siga o padrão do Esquema JSON:http://json-schema.org/draft-07/schema#
."Schema": { "$schema": "http://json-schema.org/draft-07/schema#", "type": "object",
"Schema": { "$schema": "http://json-schema.org/draft-07/schema#", "type": "object", - Dentro do objeto
properties
, defina cada propriedade que você deseja incluir no esquema. Para cada propriedade, especifique seutype
edescription
.Cada propriedade noSchema
é equivalente aos campos de entrada que você adicionará na ação do aplicativo."properties": { "Description": { "type": "string", "direction": "in", "description": "Validation message" }, "invoice_document": { "type": "string", "direction": "in", "description": "Document file." }, "Comments": { "type": "string", "direction": "inout", "description": "Approval or rejection comments" } }
"properties": { "Description": { "type": "string", "direction": "in", "description": "Validation message" }, "invoice_document": { "type": "string", "direction": "in", "description": "Document file." }, "Comments": { "type": "string", "direction": "inout", "description": "Approval or rejection comments" } }Observação: se a propriedadedirection
não estiver definida, então o valor padrão para ela éinout
(In/Out
). - Se determinadas propriedades forem necessárias, inclua uma matriz
required
, na qual você lista as propriedades que deseja marcar como obrigatórias na ação. - Feche o objeto JSON adicionando uma chave de fechamento.
- Carregue a definição da ação para o Action Center:
- Abra o Action Center, navegue até Configurações de administrador e selecione Tenant.
- Na guia Definições de ação , selecione Adicionar definição de ação.
- Selecione Baixar exemplo de definição de ação para baixar um exemplo de esquema JSON para ajudar você a preparar a definição de ação.
- Selecione Importar do arquivo e selecione o arquivo JSON que você preparou anteriormente.
- Insira um nome e descrição apropriados para a definição da Ação e, em seguida, selecione Criar.
Os aplicativos criados usando uma integração para ações são projetados para serem utilizados dentro de fluxos de trabalho de longa duração e os usuários finais podem acessar esses aplicativos apenas por meio da interação com as ações geradas.
- Abra o Apps dentro da organização onde você carregou as definições de ação.
- Crie um aplicativo do zero ou escolha um modelo pré-fabricado que se adeque às suas necessidades.
- Ao lado de Adicionar controle, selecione Adicionar qualquer e, então, selecione Ação.
Esta etapa permite que você especifique a definição de ação para este aplicativo. Para este exemplo, estamos usando a definição da ação
Validate Document
. - Selecione o tenant no qual você carregou anteriormente a definição da ação e selecione Avançar.
- No lado esquerdo da caixa de diálogo Adicionar ação , selecione a definição de ação que você criou e clique em Adicionar.
Acesse Referenciar uma definição de ação em seu aplicativo para saber mais sobre o uso de definições de ação com seus aplicativos de Ação.
- Agora, você pode começar a adicionar controles ao aplicativo.
Certifique-se de que os nomes dos controles do aplicativo se alinhem precisamente aos nomes usados no esquema JSON da definição da ação. Por exemplo, se você incluir um controle do Visualizador de documentos para exibir a propriedade
invoice_document
da definição da ação, nomeie o controleinvoice_document
.Os parâmetros de entrada ou saída de uma ação podem ser associados a qualquer controle de aplicativo, usando a seguinte sintaxe:Actions.<referenced_action_name>.<action_parameter_name>
- Crie uma página em branco e adicione um Layout a ela.
- Dentro do Layout, adicione um Contêiner, onde você pode adicionar a caixa de texto e os controles de imagem para exibir o nome do cliente e o logotipo da empresa que está validando o documento.
- Dentro do Layout, adicione um Contêiner, onde você coloca o controle do Visualizador de documentos .
- Crie uma variável chamada
var_invoice_file
e a adicione como origem do controle do Visualizador de documentos . - Adicione outro contêiner dentro do Layout, no qual você possa adicionar uma Área de texto à esquerda. Como o tipo de texto Padrão na seguinte expressão:
Actions.Validate_Document.Comments
. - Adicione dois controles Botão responsáveis por concluir a ação e configure uma regra para enviar a ação, correspondendo ao
Allowed Actions
especificado na definição da ação:- Acesse Eventos e selecione Criar regra.
- No menu de lista suspensa selecione Enviar ação.
- Em Resultado da ação, selecione a ação permitida que você deseja que o botão acione quando clicado:
Yes
ouNo
.
Acesse Regra: enviar ação para saber mais sobre essa regra específica.
- Estabeleça um link para um compartimento de armazenamento do qual você carregará o documento antes de encaminhá-lo como parte da ação.
- Publique o aplicativo, tornando-o acessível para uso dentro dos fluxos de trabalho do Studio.
Acesse Publicação de um aplicativo de ação para saber mais sobre o processo de publicar um aplicativo de ação.
Crie um fluxo de trabalho no Studio Web ou no Studio Desktop para baixar um documento de fatura de uma conta do Google Drive. Faça o upload do documento baixado para o bucket de armazenamento associado ao seu aplicativo de Ação. Depois, adicione uma atividade de Ação do usuário/Ação doaplicativo para exibir o documento específico para aprovação ou rejeição do usuário. Atribua a tarefa a um usuário, aguarde a conclusão da ação e retome o fluxo de trabalho. Registra uma mensagem detalhando a decisão de validação do usuário para o documento.
- Crie um novo projeto no Studio.
- Adicione uma atividade Download File .
- Estabeleça uma conexão com o Google Drive dentro da atividade.
- No campo Arquivo a baixar , especifique o nome do arquivo que deseja baixar.
- Na seção Saída , crie uma variável para armazenar o arquivo baixado.
Para este exemplo, nomeie a variável
downloadFile
.
- Adicione uma atividade Carregar arquivo de armazenamento para carregar o arquivo para o bucket de armazenamento associado ao seu aplicativo de Ação.
- Em Caminho da pasta do Orchestrator e Nome do bucket de armazenamento, escolha o caminho da pasta do Orchestrator e o bucket de armazenamento em que deseja carregar o arquivo.
- No campo Arquivo , insira a variável onde você armazenou o arquivo que você baixou.
Para este exemplo, insira
downloadFile
. - No campo Onde carregar/Caminho , insira a expressão
downloadFile.FullName.toString
para salvar o arquivo no bucket de armazenamento.Dica: Você pode armazenar essa expressão em uma variável.
- Adicione uma atividade Create App Task para criar a ação.
- Defina Título e Prioridade de acordo.
- Para Apps, selecione o aplicativo de Ação criado anteriormente no tutorial.
- Preencha os campos gerados com as variáveis apropriadas.
- Na seção Saída , crie uma variável
UserActionData
para armazenar os dados relacionados à ação gerada.Neste exemplo, nomeie a variável comotaskID
.
- Adicione uma atividade Assign Tasks para atribuir a tarefa a um usuário dentro da organização.
- No campo ID da tarefa , insira uma expressão que recupere a ID da tarefa da variável de saída criada na etapa 4, subetapa d.
Neste exemplo, insira a seguinte expressão:
taskID.Id.Value
. - No campo Nome ou e-mail do usuário, insira o nome de usuário ou o endereço de e-mail do usuário a quem você deseja atribuir a ação.
- No campo ID da tarefa , insira uma expressão que recupere a ID da tarefa da variável de saída criada na etapa 4, subetapa d.
- Adicione uma atividade Wait For App Task And Resume para aguardar que o usuário conclua a ação e depois retome o fluxo de trabalho.
- No campo Tarefa de aplicativo criada , insira a variável de saída criada na etapa 4, subetapa d.
- No campo Ação realizada , crie uma variável (exemplo:
userActionTaken
) para armazenar o tipo de ação que o usuário realizou para concluir a tarefa.
- Adicione uma atividade Mensagem de Log para imprimir o tipo de ação que o usuário realizou para concluir a tarefa. Use uma expressão como
"The action that user used to complete the Validate Invoice action was " + userActionTaken.ToString
Para seguir as etapas e experimentar o tutorial, baixe o projeto de amostra do Studio Desktop aqui. Para abri-lo no Studio Web, salve o projeto no Cloud e, em seguida, verifique seu Studio Web para o projeto abri-lo lá.