Arquivo por categoria: Dashboard Designer

abr 06 2015

Business Intelligence Consumer Service (BICS)

Este post será sobre a criação de uma conexão Business Intelligence Consumer Service (BICS). Tentarei explicar de uma sucinta sobre o assunto.

BICS é uma camada de acesso de dados do BW que permite o dashboard acessar os dados sem que haja a necessidade de um universo. Na verdade, esta conexão “cria” um universo capaz de fazer o papel da camada semântica.

Esta conexão é interessante quando utilizado o BW como fonte de dados, pois não há a necessidade em passar por um relatório ou universo para acessar os dados. Ou seja, a performance da consulta dos dados é melhor.

Prós e contras:

Prós:
– Se for necessário mudar algum filtro da query (fixo), não haverá necessidade em modificar o Universo (pois não existe) e esta mudança se refletirá automaticamente na seleção dos dados do dashboard.

Contra:
– Caso tenha que incluir uma variável para fazer o filtro ou incluir novo índice ou medida, haverá a necessidade de refazer a conexão;
– Você não conseguirá visualizar os dados em tempo de execução no excel;
– Você terá que publicar o dashboard para visualizar os dados.

OBS: Há duas formas de fazer uma conexão no dashboard via BICS: SAP Netweaver BW connection e Query Browser. Veremos apenas a primeira forma.

Inicialmente devemos abrir a caixa de conexão e criar a conexão “Conexão com o SAP NetWeaver BW”.

BICS fig 1

Após a seleção, a conexão escolhida aparecerá na caixa conforme a figura abaixo.

BICS fig 2

Repare que as opções desta conexão são diferentes das conexões apresentadas pela conexão QaaWS e LiveOffice.

BICS fig 3

Aba Definição:

– Modifique o nome Conexão 1 pelo nome que melhor convier a conexão;
– Escolha o ambiente BW e selecione a consulta apertando no botão Procurar;

Nota: Cabe ressaltar que o campo Sistema será automaticamente preenchido após a escolha do ambiente e query desejados.

BICS fig 4

Selecione o mandante, usuário e senha;

BICS fig 5

Selecione a query que deseja extrair os dados. No caso do exemplo, a query já estava no meu histórico, mas caso não esteja, procure em Funções ou na Pesquisa.

BICS fig 6

Após selecionada query, na tela a seguir apresentará o cabeçalho da conexão.
OBS: Repare que o Sistema (Produção) foi preenchido automaticamente.

BICS fig 7

– Todas as medidas que foram configuradas em Características Livres, colunas e linhas aparecerão dentro de Filtro e Variável (dentro de Valores de Entrada) conforme mostrado na figura abaixo.

BICS fig 8

– Em Valores de Saída (Dados válidos para várias tabelas), deverá ser configurado o intervalo de células. Cabe ressaltar que ao atualizar a conexão, o xcelsius inserirá os valores neste intervalo.

– Caso você não queria extrair os valores conforme a estrutura foi configurada na query e na conexão, você poderá, em Entradas possíveis, selecionar apenas o que deseja visualizar. Ou seja, se você quiser apenas visualizar a Chave (valor do filtro), selecione o intervalo de celular apenas para o campo “Chave (valor do filtro)”. Esta opção é muito utilizada para criar uma hierarquia (no caso de BICS você deverá montar a hierarquia). Segue o exemplo abaixo.

BICS fig 9

Aba Visualização de Dados:

– Deverá ser configurada a forma como os dados aparecerão no Excel. Ou seja, em coluna aparecerão os índices e em linha apenas centro de descrição.  Cabe ressaltar que se a escolha de Valores da Saída for apenas selecionar o campo requerido, não há necessidade em configurar a visualização de dados.

OBS: Não há necessidade em redefinir a visualização de dados.

BICS fig 10

Aba Uso:

– Após definir a visualização dos dados, na aba Uso, você deverá definir quando a conexão irá ser atualizada. Esta aba é padrão para todos os tipos de conexão.

BICS fig 11

abr 05 2015

Importar ou Exportar Excel do Xcelsius

Algumas vezes eu tive que modificar o XLS e tive uma grande dificuldade em abrir o arquivo xcelsius e importar o novo excel. Este fato pode ocorrer, dentre outros motivos, quando o excel está corrompido ou com problema.

Uma das formas de burlar este problema é fazer a importação ou a exportação por fora do software xcelsius.

Inicialmente teremos que transformar o arquivo XLF do xcelcius em arquivo ZIP.

A extensão do arquivo abaixo é xlf.

Figura 1 IMP ou EXP.

Modifique a extensão para ZIP.

Figura 2 IMP ou EXP.

Abra este arquivo em qualquer leitor e irá encontrar a figura abaixo.

Figura 3 IMP ou EXP.

 

O arquivo xldoc contém todo o excel do xcelsius, incluindo as conexões.

Neste caso você poderá retirar este arquivo e colocar em outro dashboard ou simplesmente atualizar ou sobrescrever por outro.

Caso queira modificar e depois salvar no próprio xlf, inclua a extensão xls no arquivo e depois abra normalmente no excel.

Faça as modificações necessárias, salve novamete e retire a extensão xls do arquivo xldoc.

Salve o arquivo .ZIP (o próprio editor do ZIP irá reconhecer que houve diferença e pedirá para salvar) e depois retire a extenão .ZIP do arquivo.

abr 01 2015

Ordenação de Dados e Ranking

Neste post veremos uma das maneiras de ordenar de forma crescente e
decrescente uma lista de valores, porém precisaremos tratar os valores
repetidos que poderão surgir na lista. A partir desta lista ordenada, você
poderá fazer um ranking com o número de linhas adequadas para sua solução.

Iniciaremos com uma lista contendo descrição e valores para a ordenação.

Etapa 0:
Na lista contendo descrição e valores, crie uma coluna contendo um valor sequencial iniciando do 1. Veja a figura da Etapa 1.

Etapa 1:
Criaremos uma coluna contendo um valor sequencial para apoiar a ordenação
dos valores e o tratamento dos valores repetidos.
Utilize a função ORDEM para identificar a ordem em que o valor ocupa na lista.
-> ORDEM(valor; matriz; [ordem])

No caso abaixo, o valor procurado é o -2 no intervalo de D3 a D10. Ao
replicar esta função para as outras linhas, fixe apenas o intervalo para
que a célula requerida seja flutuante.
OBS: A ordem é uma opção, porém é interessante selecionar uma delas. No
caso abaixo, foi selecionada ordem crescente.

pic29959

pic32628
Etapa 2:
Na etapa 2, precisaremos tratar os valores repetidos.

Na coluna G faremos o tratamento e utilizaremos a função CONT.SE para isso.
-> CONT.SE(matriz, valor)

pic21228

Deve ser selecionado, como primeiro parâmetro, o array onde encontraremos
os valores repetidos, sendo que precisaremos deixar o primeiro valor do
array fixo e o último flutuante. Nesta função faremos os testes de acordo
com a coluna F apenas. No outro parâmetro, necessário na função, será o valor
que queremos procurar e subtrairemos 1 para haja a ordenação correta.
Ou seja, ao procurar uma valor, se este não tiver valores repetidos, o
valor retornado será 1, caso contrário o valor somado a 1.

OBS: Caso o valor retornado seja 1, o valor no somatório será 2 e assim sucessivamente.

Exemplo:
A linha D4 tem mais 2 valores iguais e precisaremos dar uma posição para
cada um deles.
O valor 5, nas células D3 a D4, não tem valor repetido e por isso retornará
1 (subtrairemos 1 mais adiante e por isso o valor 0).
O valor 5, nas células D3 a D8, tem um valor repetido e por isso o
resultado é 2 (subtrairemos 1 mais adiante e por isso o valor 1).
O valor 5, nas células D3 a D9, tem 2 valores repetidos e por isso o
resultado é 3 (subtrairemos 1 mais adiante e por isso o valor 2).

Após fazer isso para todas as linhas, precisaremos subtrair 1 para que os
valores possam se ajustar no passo seguinte.

pic22139

Etapa 3:
Após identificar os valores repetidos e subtrair de 1, precisaremos somar
esta coluna (G) com a coluna de ordenação (F) para identificar a verdadeira
ordenação sem repetição.

pic27580

Etapa 4:
Nesta etapa faremos a ordenação do menor para o maior e para isso
utilizaremos a ordem sequencial numérica que fizemos na coluna B.
Faremos o uso da função CORRESP para identificar o valor requerido na lista
a partir do sequencial numérico.
-> CORRESP(valor; matriz; [tipo de correspondência])

pic21778

O tipo de correspondência é importante para identificar os valores de forma
exata ou não.  Neste caso, selecione a correspondência exata.

pic32471
A partir da coluna I, podemos fazer um PROCV para extrair a descrição e valor em ordem crescente ou decrescente.
->procv(I3;B3:D10;2;FALSO)

mar 04 2014

Dashboard 4.0 – Atualização dinâmica do status do componente check box – Parte 1

Olá pessoal, o nosso blog tem como objetivo trazer sempre alguma novidade ou dica preciosa sobre as ferramentas da SAP com o objetivo de unir e ajudar toda a comunidade de profissionais espalhadas pelo Brasil e pelo mundo. Hoje vamos falar sobre um tópico específico de desenvolvimento em painéis Dashboards. Essa foi uma dificuldade que eu particularmente enfrentei em um dos projetos que participei e acredito que é uma dificuldade que muitos profissionais também já passaram ou passam com essa ferramenta. A grande questão do post de hoje é, será que é possível fazer um componente check box funcionar de forma dinâmica? Vamos ao entendimento dessa questão que a princípio parece ser simples, mas não é.

1 – Para verificar ou não verificar?

Um dos pedidos mais comuns quando se usa SAP BusinessObjects Dashboards ( Xcelsius ) é a capacidade de redefinir seletivamente componentes Seletor de volta ao seu estado original. Ao contrário de muitos outros seletores, a tarefa não é tão fácil de conseguir com o componente Check Box. Não podemos atualizar dinamicamente o seu estado verificado / Desmarcado, porque as mudanças do valor na célula que o componente é obrigado a não afetar o próprio componente. A falta desta funcionalidade também torna difícil apoiar a atualização dos status de várias caixas de seleção ao mesmo tempo. Este post é o primeiro de uma série em que eu vou compartilhar a minha solução para esse desafio e examinar algumas das suas aplicações práticas.

Componente Xcelsius Check Box é semelhante ao seu homólogo Excel, mas age de forma diferente. No Excel, a conexão entre um controle de caixa de seleção e sua célula vinculada funciona nos dois sentidos, como se conclui da propriedade do controle: Ligação celular. Atualizando o status caixa de seleção altera o valor na célula vinculada, e vice- versa. Assim, no Excel, podemos alterar dinamicamente um valor de célula ligada e ver a mudança imediata no estado do componente. Esse não é o caso do componente check box.

Vamos realizar um teste simples e comparar os resultados com o mesmo cenário no Excel e Xcelsius:

1. Adicionar uma caixa de seleção e um controle de botão de rotação do Formulário Excel seção Controles para uma planilha e associar os dois a célula C2.

2. Defina os valores de botão de rotação variando de 0 a 1.

 

060612_2113_Dynamicstat1

3. Quando a caixa de seleção está marcada / desmarcada a célula recebe valores verdadeiro / falso.

060612_2113_Dynamicstat2

Quando o botão de rotação é clicado para cima ou para baixo altera valores na célula vinculada a 1 ou 0 e, ao mesmo tempo o estado da caixa de seleção fica alternado também.

060612_2113_Dynamicstat3

4. Agora, vamos ver o que acontece no Dashboard.

Adicione uma Caixa de seleção, Spinner e um componente de valor único para uma tela conforme demonstrado na imagem abaixo.

060612_2113_Dynamicstat4

5. Ligue todos os componentes para a célula C2 e abra um Preview.

6. Quando a caixa está marcada ou desmarcada a célula de destino recebe valores de 1 ou 0.

060612_2113_Dynamicstat5Mas quando o spinner atualiza o valor na célula o status nas caixas não muda.

060612_2113_Dynamicstat6

Isto significa que, na versão atual do Dashboard não há nenhuma funcionalidade built-in para alternar dinamicamente o status verificado / Desmarcado do componente Caixa de Seleção.

Felizmente, há um trabalho em torno. Ao contrário de controles de formulário Excel, componentes Dashboard tem uma propriedade chamada de Visibilidade Dinâmica. Usando a sua magia em um conjunto com um componente Botão, podemos simular a funcionalidade de caixa de seleção do Excel em um Dashboard.

Vamos criar um modelo que demonstra essa técnica:

  1. Adicione duas Push Button e dois check box para uma tela. Vamos Personalizar um botão de pressão e combinar caixas de seleção e um botão em um botão personalizado. Podemos também usar os componentes de imagem em vez disso, é só temos um bom par de imagens de uma caixa de seleção marcada e desmarcada.
  2. Defina a propriedade do item de uma das caixas de seleção como verificado e o outro como desmarcada. A propriedade desse item está localizada na guia Comum da seção Comportamento. Vincular dados de origem para os botões de ação para a célula A3 e Destino para H3. A fórmula do Excel em A3 é = 1-H3 e o valor inicial no H3 é 1.
  3. A célula H3 vai definir a propriedade Visibility Status dinâmico para ambas as caixas de seleção. Defina a propriedade de chave para a caixa de seleção marcada para 1 e 0 para o desmarcado.

Neste ponto, a configuração do modelo deve ser semelhante à figura a seguir:

060612_2113_Dynamicstat7

1. Um dos botões vai ser exibido como é, e o outro será transparente. Sua propriedade Label deve estar em branco e a propriedade Fundo Botão Show desmarcada.

2. No componente check box coloque o botão transparente em cima deles.

3. Adicionar componente Tabela de planilha para ver o que acontece por trás da visualização.

Agora estamos prontos para testar.

Quando começa uma pré-visualização, podemos ver que a caixa de seleção está marcada e os valores em A3 (sombra em verde) é 0 e em H3 (sombreados em amarelo) é 1.

060612_2113_Dynamicstat8Quando um usuário clica em uma caixa de seleção, o que não está marcado, os valores em H3 e A3 se transformam em 0 e 1, respectivamente.

060612_2113_Dynamicstat9

Clicando sobre a caixa de seleção desmarcada traz o modelo para o estado inicial. E, como nos lembramos, o real clique acontece no botão de comando, e não em uma caixa de seleção. Mas é transparente para o usuário.

Esta abordagem permite que simulemos a funcionalidade caixa de seleção Excel em redefinir o status verificado / Desmarcado do componente check box. Também nos dá um modelo de trabalho que pode se estender para projetos mais complexos que fornecem regras baseadas em seleção dinâmicas de componentes logicamente agrupados em várias check boxes. Vou mostrar um exemplo na Parte 2 desta série: Selecionar todos ou selecione Nenhum.

Espero que tenham gostado dessa primeira parte do artigo e não percam as outras pois de agora em diante a coisa fica um pouco mais complicada.

 

Abraços!!!!

 

fev 11 2012

Dashboard Designer – SAP BO 4.0 – (Parte 01)

No artigo de hoje vamos começar uma serie de estudos sobre a nova ferramenta da SAP para painéis gerenciais, o Dashboard Designer. Vale ressaltar que essa ferramenta e uma evolução do Xcelsius. O objetivo dessas serie de artigos é demonstrar a capacidade dessa ferramenta, seus componentes, aplicações, curiosidades e integrações com outras ferramentas da SAP como o WebIntelligence, etc.

Introdução

Antes de começarmos a mostrar algumas funcionalidades dessa ferramenta vamos mostrar o novo visual do ambiente de trabalho do Dashboard Designer. Podemos observar de uma forma geral que pra essa nova versão a ferramenta apresenta um visual mais elegante.

Um detalhe importante sobre essa nova versão diz respeito aos menus NEW, RECENT e OPEN.

Conforme observado na figura abaixo no menu NEW podemos por exemplo criar um documento novo, um documento a partir
de um modelo já existente, etc. O menu RECENT nos mostrará os últimos documentos que foram abertos e trabalhados na ferramenta e por último no menu OPEN encontramos a opção para abrir documentos diretamente da plataforma SAP BO, um arquivo local, etc.

Observamos também que a barra de ferramentas continua praticamente a mesma da versão Xcelsius para o SAP BO 3.1.

1 – Visão Geral

O Dashboard Designer pode ser entendido como uma ferramenta gráfica com diversos componentes para visualização.  Essa ferramenta não
processa fórmulas ou condições; essas são pré-contruídas nas planilhas que serve como a principal fonte de dados para a mesma.

Exemplo de painel gerencial no Dashboard Designer.

Obs.: Para os nossos exemplos de utilização de componentes e criação de Painéis utilizaremos como base o modelo de planilha abaixo.

2 – Componentes

Mostraremos nessa parte do artigo os principais componentes, suas funcionalidades e aplicabilidades no desenvolvimento de Painéis Gerenciais.

Os principais componentes estão disponíveis e agrupadas conforme ilustram as figuras, e suas formas de visualização e utilização fica a critério do desenvolvedor.

Uma vantagem dessa nova versão, dentre algumas que destacaremos ao longo dos artigos, é um componente que nos permite conectar ao Universo do SAP BO. A opção onde encontramos esses componentes é a Universe Connectivity e dentro dela encontraremos os dois componentes utilizados para conectar com o universo que são Query Refresh Button e Query Prompt Selector.  A sua utilização bem como a de outros componentes demonstraremos no final dessa série de artigos.

3 – Componentes Gráficos

O Dashboard Designer disponibiliza uma série de componentes gráficos para a criação de Painéis Gerenciais, dentre eles temos opções para a criação de gráficos de pizza, gráfico de barras, gráficos de linhas, etc.

Para o nosso primeiro exemplo demonstraremos a criação de um gráfico de linhas utilizando a base já apresentada nesse artigo.

Para o exemplo abaixo a planilha que serviu de base para o nosso estudo já foi devidamente importada para a ferramenta.

Escolheremos o gráfico desejado e arrastaremos o mesmo para a nossa área de trabalho conforme abaixo.

Faremos agora os devidos mapeamentos com a nossa base de dados para apresentar o gráfico de forma amigável e com informações consistentes.

Passo 1 – Na opção General façamos o mapeamento dos campos referentes ao Titles e Subtitles conforme demonstrado abaixo.

Passo 2 – Para as informações de dados na opção By Range faremos o mapeamento dos dados referentes aos itens Desktops, Notebooks, etc. em relação a todos os meses do ano. Na informação referente à By Series para cada item (Desktops, Notebooks, Servidores, etc.) fazer o devido mapeamento conforme demonstrado abaixo.

Para cada item no By Series faça o mapeamento para o campo Name  e para o campo Values(Y).

Para o mapeamento referente à opção Category labels (X) proceda com o mapeamento conforme abaixo.

Com os mapeamentos devidamente realizados execute o painel para verificarmos o resultado final desse componente.

Ainda existem outros recursos muito interessantes que muita das vezes são comuns aos componentes como, por exemplo, Insertion (Drill), Alertas, etc.

Espero que tenham gostado desse primeiro artigo dessa série no qual vamos abordar vários temas interessantes sobre o Dashboard Designer. No próximo artigo continuaremos a falar sobre os componentes existentes nessa poderosa ferramenta de criação de painéis gerencias.

Até a próxima.