Para manter a simplicidade nos tutoriais anteriores, diversos exemplos de funções do Analytics usam valores de entrada literais: "joão SILVA", "VT-123-45" etc. Mas, como podemos aplicar uma função a todo um conjunto de valores de um campo em uma tabela do Analytics?

A aplicação de uma função a todo um campo pode ajudar a executar tarefas úteis, como agrupamento de registros de uma tabela por mês.

Uma forma de aplicar uma função a todos os valores de um campo é criar um campo calculado. Um campo calculado é um campo criado, muitas vezes com base em um campo físico real, mas composto inteiramente por valores calculados pelo Analytics.

Da mesma forma que na saída de uma função, você pode considerar um campo calculado como dados virtuais calculados pelo Analytics e residentes na memória. Após calculados, esses dados virtuais podem ser usados em operações subsequentes.

Podemos criar um campo calculado denominado Mês que usa a função MONTH( ) para extrair a parte do mês de todas as datas em um campo de data de fatura. Em seguida, podemos agrupar os registros da tabela por mês.

Criar o campo calculado

  1. No Analytics, abra Sample Project.ACL e abra a tabela Trans_Cp (Tables\Accounts_Payable\Trans_Cp).

    Se o projeto Sample Project.ACL não estiver disponível, abra qualquer tabela com um campo de data. Para que esse exemplo funcione, o campo deverá usar o tipo de dados datahora.

  2. Execute as etapas a seguir para criar o campo calculado Mês:
    1. Na parte superior da exibição de tabela, clique em Editar layout da tabela .
    2. Na caixa de diálogo Layout da tabela, clique em Adicionar uma nova expressão .
    3. No campo Nome, digite Mês, e no campo Valor padrão, copie e cole esta versão da função MONTH( ):

      MONTH(Data_Fatura)

      Se você não estiver usando a tabela Trans_Cp, atualize o nome do campo de acordo com os dados.

    4. Clique em Aceitar entrada  e feche a caixa de diálogo Layout da tabela.
    5. Na exibição de tabela, clique com o botão direito no cabeçalho da coluna Data da fatura, selecione Adicionar colunas. Em Campos disponíveis, clique duas vezes em Mês e clique em OK.

      Resultado: o campo calculado Mês é adicionado à exibição. O campo contém a parte do mês de cada data na coluna Data da fatura, exibida como um número de 1 a 12.

    6. Clique em Salvar o Projeto Aberto para salvar as alterações.

Agrupar registros por mês

Agora que você criou o campo calculado Mês, poderá usá-lo para agrupar os registros na tabela Trans_Cp por mês.

  1. No menu principal, selecione Analisar > Sumarizar.
  2. Na lista Sumarizar em, selecione o campo Mês.
  3. Na lista Campos de subtotal, selecione o campo Valor_Fatura.
  4. Clique na guia Saída, selecione Arquivo, digite Trans_Cp_agrupado no campo Nome e clique em OK.

    Resultado: o Analytics gera a nova tabela, que agrupa os registros da tabela Trans_Cp por mês. Para cada mês, há um subtotal de valor da fatura e uma contagem do número de registros que ocorrem no mês.

    MêsValor da faturaContagem
    185.670,2212
    24.496,566
    32.941,805
    4467,401
    58.272,575
    61.582,862
    73.101,984
    821.146,962
    932.577,3220
    1041.595,8919
    1170.779,2619
    126.008,517

Você pode usar a função CMOY( ) para criar um segundo campo calculado para exibir os nomes dos meses. CMOY é uma abreviação de "Caractere para o Mês do Ano".

  1. Na tabela Trans_Cp, siga as mesmas etapas seguidas para criar o campo calculado Mês e adicione-o à exibição de tabela, mas com estas diferenças:
    • No campo Nome, digite Mês_2.
    • No campo Valor padrão, copie e cole esta versão da função CMOY( ):

      CMOY(Data_Fatura, 9)

    Resultado: O campo calculado Mês_2 é adicionado à exibição com o nome de cada mês.

  2. Siga as mesmas etapas usadas para agrupar os registros da tabela Trans_Cp por mês, mas com estas diferenças:
    • Na lista Outros campos, selecione Mês_2.
    • Na guia Saída, especifique o nome do arquivo de saída Trans_Cp_agrupado_2.

    Resultado: o Analytics gera a nova tabela, que agrupa os registros da tabela Trans_Cp por mês, mas incluindo agora os nomes dos meses.

    MêsValor da faturaContagemMês_2
    185.670,2212Janeiro
    24.496,566Fevereiro
    32.941,805Março
    4467,401Abril
    58.272,575Maio
    61.582,862Junho
    73.101,984Julho
    821.146,962Agosto
    932.577,3220Setembro
    1041.595,8919Outubro
    1170.779,2619Novembro
    126.008,517Dezembro

Em muitos casos, é útil criar um campo calculado como forma de aplicar uma função a vários valores. No entanto, é possível conseguir o mesmo resultado e otimizar o trabalho no Analytics incorporando as funções diretamente nos comandos do Analytics.

Incorporar uma função para ajudar a agrupar registros por mês

Usaremos os mesmos exemplos acima, mas sem criar os campos calculados. Em vez disso, incorporaremos as funções diretamente no comando de sumarização.

  1. Abrir a tabela Trans_Cp.
  2. No menu principal, selecione Analisar > Sumarizar.

Incorporar a função MONTH( )

  1. Clique em Sumarizar por e clique em Expr.
  2. No Construtor de expressões, clique duas vezes em MONTH(data/datahora) na lista Funções.

    Dica

    Para facilitar a localização da função MONTH( ), selecione Data e Hora no filtro suspenso na parte superior da lista Funções.

  3. Na caixa de texto Expressão, selecione data/datahora e clique duas vezes em Data_Fatura na lista Campos Disponíveis.

    Você deve ter MONTH(Data_Fatura) na caixa de texto Expressão.

    Nota

    A expressão deve parecer familiar. É a mesma do campo calculado do exemplo anterior, mas agora está incorporada ao comando de sumarização.

  4. Clique em OK para sair do Construtor de expressões e clique em OK para sair da caixa de diálogo Selecionar campos.

Incorporar a função CMOY( )

  1. Clique em Outros campos e clique em Expr.
  2. No Construtor de expressões, clique duas vezes em CMOY(data/datahora; comprimento) na lista Funções.
  3. Na caixa de texto Expressão, substitua data/datahora por Data_Fatura e comprimento por 9.

    Você deve ter CMOY(Data_Fatura; 9) na caixa de texto Expressão.

  4. Clique em OK para sair do Construtor de expressões e clique em OK para sair da caixa de diálogo Selecionar campos.

Finalizar a operação de sumarização

  1. Na lista Campos de subtotal, selecione o campo Valor_Fatura.
  2. Clique na guia Saída, selecione Arquivo, digite Trans_Cp_agrupado_3 no campo Nome e clique em OK.

    Resultado: o Analytics gera a nova tabela, que agrupa os registros da tabela Trans_Cp por mês. Você pode ver as duas funções incorporadas.

    MONTH(Data_Fatura)Valor da faturaContagemCMOY(Data_Fatura, 9)
    185.670,2212Janeiro
    24.496,566Fevereiro
    32.941,805Março
    4467,401Abril
    58.272,575Maio
    61.582,862Junho
    73.101,984Julho
    821.146,962Agosto
    932.577,3220Setembro
    1041.595,8919Outubro
    1170.779,2619Novembro
    126.008,517Dezembro

Ponto importante

Você usou dois métodos diferentes para conseguir exatamente o mesmo resultado:

  • Campo calculado A criação de um campo calculado antes de usar o campo em um comando é uma abordagem mais literal e detalhada. Essa abordagem poderá ser adequada se você quiser usar o campo calculado para mais de uma finalidade.
  • Função incorporada Ignorar a criação de um campo calculado e incorporar uma função em um comando é uma abordagem mais otimizada. Essa abordagem pode ser adequada no contexto de um script e gera scripts mais eficientes.

Se você quiser praticar mais o uso de funções para criar campos calculados ou a incorporação de funções em comandos, refaça algumas ou todas as atividades acima, usando as funções DOW( ) e CDOW( ).

DOW( ) e CDOW( ) são bastante semelhantes a MONTH( ) e CMOY( ), mas extraem o dia da semana de uma data em vez do mês de um ano.

Dica

Use DOW( ) and CDOW( ) para analisar os números de vendas, comparando-os nos diversos dias da semana.

Você pode usar o método DISPLAY na linha de comando para ter uma noção da saída gerada pela criação de um campo calculado ou da incorporação de uma função em um comando.

  1. Com a tabela Trans_Cp aberta, cole esta versão da função UPPER( ) na linha de comando, digite DISPLAY e um espaço antes da função colada e pressione Enter.

    UPPER(Fornecedor.Nome_Fornecedor)

    A função UPPER( ) converte todo o texto de entrada em maiúsculas.

    Se o primeiro registro da tabela Trans_Cp for selecionado, a saída da função será INDÚSTRIAS PODEROSAS.

  2. Na tabela, selecione o registro número 6.

    Clique no número do registro para selecionar o registro. O número do registro selecionado será realçado em verde.

  3. Digite ou recarregue a função na linha de comando e pressione Enter.

    A saída da função será UNITED EQUIPMENT.

  4. Selecione um ou dois dos outros registros e repita o processo.

    Ponto importante: Você está vendo, registro a registro, o que um campo calculado ou uma função incorporada fazem com todos os valores do campo Fornecedor.Nome_Fornecedor.

    Você pode usar esse método de teste com qualquer função do Analytics que aceite um campo como entrada.

Saiba como usar variáveis com uma função para criar interatividade: Usando variáveis em uma função para permitir entradas do usuário