OBIEE – Como aplicar ‘Case When’ utilizando fonte de dados do ESSBASE

Share Button

Uma das vantagens das soluções Oracle é a capacidade de modelar a aplicação para que a mesma funcione de acordo com às necessidades do negócio. Em alguns cenários de arquitetura do OBIEE, a fonte de dados não é um Data Warehouse convencional, mas sim o cubo do ESSBASE, uma aplicação Oracle para planejamento financeiro e orçamentário. Neste cenário, as questões convencionais de modelagem que conhecemos de modelo relacional mudam para cruzamentos multidimensionais.

Uma das maiores dificuldades que encontrei em ambientes com esse tipo de arquitetura, foi a de utilizar funções que interferem na agregação das métricas, como por exemplo, uma expressão muito utilizada para tratar atributos e métricas, conhecido como: “CASE WHEN”.

Uma vez que a agregação já estava calculada no cubo do ESSBASE, recalcular uma métrica e agrega-la novamente em tempo de execução se tornava um desafio pois as fontes de dados são linguagem distintas de banco de dados, o OBIEE é voltado para se trabalhar com linguagem SQL e o cubo do ESBASE em MDX.

A solução compreende-se em manter a mesma agregação dos dados calculada para o ESBASSE, mas exibir os dados tratados com o ‘Case When’ como se fossem uma máscara de dados para coluna da dimensão em questão.

A seguir temos um exemplo de um relatório simples, criado a partir de uma fonte de dados do cubo ESBASE:

Aplicaremos a seguinte função na coluna de “Mês” para abreviar os dados trazidos pelo campo:

Ao verificar os resultados, o relatório apresenta o seguinte erro:

A solução é bem simples, iremos trabalhar com duas colunas de “Mês” nesse relatório. Observe:

 

A coluna referente ao mês que chamei de “Mês Abreviado” contém o mesmo ‘Case When’ realizado anteriormente:

A primeira coluna “Mês” não contém nenhuma sintaxe ou fórmula de expressão, somente a informação nativa da sua área de assunto:

Ainda nesta coluna “Mês” clico com o botão direito do mouse e entro em suas “Propriedades”:

Na caixa de propriedades, navegue até a aba “Formato da Coluna” e marque a opção “Ocultar” para que a coluna não apareça na visualização final do relatório:

Em seguida confira o resultado:

Carina Mendes.