Olá a todos! Sou um Consultor Sênior SAP HANA que trabalha em estreita colaboração com as Soluções de Relatórios Enterprise HANA e Business Objects.
Hoje gostaria de compartilhar uma abordagem que alguém poderia adotar para
identificar padrões
em cada texto usando Artefatos do Banco de Dados HANA.
Requisito:
Identificar o Trimestre mencionado em cada linha de texto do documento e exibir KPIs em relação a este trimestre derivado. Este texto da linha do documento é mantido pelos Usuários de Negócios e é difícil determinar em qual formato um Usuário de Negócios irá manter o Trimestre no Texto.
Exemplo:
Exemplos de formatos de trimestres no texto da linha do documento
Desafio:
Como o formato do Trimestre não é mantido uniformemente no texto, como você identificará o Trimestre correto em cada linha?
Solução:
Abordaremos esse desafio aproveitando
Funções de Expressão Regular
em uma Função de Tabela HANA.
Para entender o código, você precisará de um entendimento básico da Sintaxe de Expressões Regulares. Você pode consultar a seção
'Referências Úteis'
no final do meu blog para obter uma compreensão rápida.
Algoritmo em Alto Nível:
1. Analise o texto mantido pelos usuários e identifique todos os padrões possíveis (etapa manual).
2. Crie templates de correspondência de padrões por meio de funções REGEX.
3. Combine cada padrão com o texto e identifique o padrão usado por meio de funções REGEX.
4. Extraia o padrão usado e transforme em um formato comum (por exemplo: 21T1).
5. Exiba KPIs em relação a este TRIMESTRE_DERIVADO (ao unir a Função de Tabela a uma Visão de Cálculo).
Observação:
O código abaixo contém mais funções REGEX do que você realmente precisa para este cenário. A única razão pela qual eu os adicionei é para que você possa entender como usá-los e esperançosamente isso o ajudará em seu cenário específico.
Forneço comentários que ajudarão você a entender o que cada linha de código está fazendo.
Código da Função de Tabela:
...
Saída da Função de Tabela:
Saída da função de tabela
Em seguida, você pode unir esta Função de Tabela com uma Visão de Cálculo Gráfica e exibir KPIs em relação ao Trimestre Derivado.
Conclusão:
A Correspondência de Padrões pode ser facilmente feita usando Expressões Regulares no HANA. No entanto, tenha em mente que o desempenho da Visão de Cálculo irá degradar na mesma proporção do número de padrões a serem correspondidos e do volume de dados contra o qual o padrão precisa ser correspondido.
Espero que este blog o ajude quando você enfrentar uma situação semelhante.
Sinta-se à vontade para fazer perguntas. Obrigado e tenha um ótimo dia!
Referências Úteis:
Tutorial de Sintaxe de Expressão Regular:
https://regexone.com/
Informações sobre Expressão Regular:
https://en.wikipedia.org/wiki/Regular_expression
https://www.regular-expressions.info/
Documentação de Ajuda SAP:
https://help.sap.com/viewer/7c78579ce9b14a669c1f3295b0d8ca16/LATEST/en-US/a2f80e8ac8904c13959c69bfc3...