em 09-30-2020 01:41 PM - editado pela última vez em 01-13-2021 08:04 AM por FláviaB
Precisamos falar de Macros
Você já se deparou frente a uma situação onde ficou cansado de fazer a mesma coisa várias e várias e várias e várias e várias e várias e várias e várias e várias e várias e várias e várias e várias e várias e várias e várias vezes?
Pois é, quem nunca? É ai que as Macros no Alteryx ajudam a simplificar as coisas. Basicamente uma macro é um fluxo de trabalho do Alteryx compactado para ser uma ferramenta.
Inclusive, sabia que muitas das ferramentas que você vê no Alteryx são macros?
Vamos dar uma olhada em um exemplo. Observe a ferramenta Contar Registros:
Ao clicar com o botão direito na ferramenta e selecionar a opção Abrir macro, podemos ver o que há por dentro dessa ferramenta:
Observe que a ferramenta Contar Registros, na verdade é um pedaço de um workflow empacotado realizando a contagem de registros.
Vamos trazer para um exemplo do dia a dia?
Imagina que no seu fluxo há uma série de ferramentas com o objetivo de validar se um determinado produto foi cadastrado corretamente ou não. Há fórmulas, junção em tabela de referência e algumas validações. O problema é que você tem que validar o cadastro de produto em diversos pontos do seu processo. Nesse caso há duas opções: copiar e colar a regra de validação em cada etapa OU empacotar esse conjunto de regras em uma única ferramenta e REUTILIZÁ-LA quando e onde quiser.
Crie apenas uma vez e estará pronta para ser usada sempre 😉
Agora que já sabemos o conceito geral de Macro, vamos entrar um pouco mais em detalhes sobre os tipos de macros existentes. Vamos falar de 3 tipos: Standard, Batch e Iterative.
Standard Macro:
É a simplificação de um workflow dentro de uma ferramenta. Uma Standard Macro irá realizar a mesma tarefa para cada registro que passar por ela.
Exemplo: Validação de CPF.
Batch Macro:
Para quem conhece programação é o mesmo conceito do "FOR". Basicamente processa uma regra para registros individualmente ou para grupos de registros de uma só vez.
Exemplo: Geração automática de relatórios por loja. Se na base de dados de origem tiver registros de vendas de 4 lojas, a Batch Macro irá gerar 4 relatórios diferentes.
Iterative Macro:
Uma Iterative Macro tem o conceito de "Loop", ou seja, irá executar repetitivamente a mesma tarefa N vezes até atingir uma condição pré determinada.
Exemplo: Cálculo de juros composto por 36 meses. A Iterative Macro irá calcular o imposto até atingir a quantidade de meses definido para o empréstimo.
Que tal fazermos um exemplo prático?
O foco nesse post será Standard Macro, mas não se preocupe, falaremos mais dos outros tipos de Macros nos próximos. 😉
Nesse fluxo de trabalho há uma Fórmula que multiplica por 10 o valor de um campo e depois ordena esse campo do maior para o menor valor:
Vamos transformar essa parte do fluxo em uma macro. Há dois elementos básicos para uma Macro: Entrada de Macro e Saída de Macro. Essas duas ferramentas são encontradas na aba Interface.
Como o nome diz, uma será usada como "Entrada" da informação que será passada para a Macro, e a outra, a "Saída" ou retorno do resultado da Macro.
Podemos "arrastar e colar" no fluxo de trabalho essas ferramentas, ou clicar com o botão direito na nossa fonte atual e transformar essa ferramenta de Entrada em uma Entrada de Macro, como na imagem abaixo:
Ao fazer isso, automaticamente o fluxo de trabalho se transforma em uma Macro Standard e a ferramenta de Entrada muda a sua configuração, como a seguir:
O final do processo poderá receber uma Saída de Macro, para retornar o resultado do processo:
Dessa forma, já temos uma Standard Macro pronta. 😃
E uma coisa bastante interessante quando falamos de Macro é que podemos deixá-la completamente parametrizada para que o usuário escolha o multiplicador usado no cálculo e a ordenação desejada.
Primeiro, vamos inserir uma ferramenta chamada Numérico Alto/Baixo, da aba de Interface, no fluxo:
Na aba de configuração, podemos alterar a descrição da pergunta que queremos que apareça para o usuário.
Lembrando: a ideia é fazer com que o valor passado pelo usuário altere o cálculo criado na ferramenta Fórmula.
Nota: Ligue a ferramenta Numérico ao símbolo de Raio da ferramenta de Fórmula. Assim o Alteryx vai inserir automaticamente uma ferramenta de Ação que será configurada para atualizar o valor desejado dentro da ferramenta Fórmula.
Configurando a ferramenta de Ação:
1- Escolher a ação: Atualizar Valor (Padrão)
2- Selecionar FormulaField -> @expression (que é o cálculo criado na ferramenta)
3- Substituir o multiplicador default (10) pelo valor passado pelo usuário
Dessa forma, já deixamos parametrizado o cálculo de multiplicação e agora faremos o mesmo para a ferramenta de Ordenação.
Vamos inserir no fluxo uma ferramenta chamada Menu Suspenso, e configurá-la da seguinte maneira:
1- Altere a mensagem que será passada para o usuário.
2- Valores da Lista, selecionar "Definir valores manualmente"
3- Na Propriedades, escrever como abaixo.
Na ferramenta de Ação, realizar a seguinte configuração:
Agora nossa Macro está pronta e basta salvá-la. Observe que o Alteryx salva uma macro com a extensão .yxmc
Para adicionar uma macro a um fluxo de trabalho, clique com o botão direito do mouse na tela e selecione Inserir ferramenta e, em seguida, procure a opção Macro na parte inferior.
Parabéns! Agora podemos usar nossa Macro no fluxo passando os parâmetros que desejamos:
Na sequência abordaremos Batch Macro e Iterative Macro. Fiquem ligados 😉
Sensacional Vilela, parabéns pelo material... muito legal.
Abraços
Carlos Teixeira
Show!!
Parabéns pela didática.
Muito bom,
Parabéns 👏, Material Excelente.