Arquivo por categoria: BI (Business Intelligence)

Business Intelligence

mai 10 2015

Demonstração do SAP Lumira

Introdução

O objetivo desse artigo é demonstrar ao leitor o funcionamento dessa ferramenta da SAP que vem crescendo no mercado por sua facilidade e agilidade na criação de Dashboards.  Nesse artigo vamos explicar e demonstrar todas as etapas para a criação de um Dashboard (Aquisição, Preparação, Visualização, Composição e Compartilhamento).

artigo1

 

01 -  Aquisição de Dados

Ao abrir o SAP Lumira uma tela inicial é apresentada mostrando como mensagem os passos para a criação de dashboards na ferramenta. Para o nosso exemplo vamos usar uma massa de dados de um Excel.

 

artigo2

 

 

Ao clicar em Arquivo -> Novo uma tela onde podemos escolher uma fonte de dados específica será aberta.

 

artigo3

 

 

No nosso exemplo vamos escolher uma fonte de dados Excel.

artigo4

 

Ao clicar em Criar o processo de Aquisição é concluído e agora podemos começar a elaborar o nosso Dashboard.

artigo6

 

 

02 -  Preparação dos Dados

Arrastando as dimensões e medidas e escolhendo o tipo de gráfico rapidamente temos um gráfico pronto.

 

artigo7

 

Após salvar essa visualização podemos criar outras para compor nosso dashboard.  Para salvar e criar uma nova visualização basta clicar em “salvar” indicado na parte inferior direita do painel.

artigo8

Criaremos mais 2 visualizações para o nosso Dashboard conforme indicamos na figura abaixo.

artigo9

As próximas etapas da criação do nosso dashboard será o processo de criação e compartilhamento.  Com as devidas visualizações criadas vamos compor o nosso painel e acrescentarmos mais detalhes.

No próximo artigos vamos dar continuidade na construção do nosso Dashboard e mostraremos em detalhes o processo de compartilhamento utilizado no exemplo.

Espero que tenham gostado e espero vocês na segunda e última parte do nosso artigo.

 

Abraços

 

 

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

Abrir Xcelsius em versões diferentes

Em todos os softwares existe o problema de versão, pois os fabricantes não permitem a abertura de um projeto que está sendo desenvolvido em uma versão mais recente em um software com a versão mais antiga.

Existe um meio de “burlar” este problema no xcelsius.

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

A extensão do arquivo abaixo é xlf.

Figura 1 Versao Dif.

Modifique a extensão para ZIP.

Figura 2 Versao Dif.

 

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

Figura 3 Versao Dif.

 

O próximo passo é editar o arquivo document.xml em qualquer editor de texto e verificar a parte superior do arquivor.

Figura 4 Versao Dif.

Cuidado para não cometer um engano, pois você poderá modificar no lugar errado e não ocorrer o resultado esperado (não acontecerá nada).

Na segunda linha do arquivo você poderá encontrar ‘version=”5.6″‘ e ‘createdby=”xcelsius 2008 SP6″‘. Se você modificar esta última parte (createdby) não acontecerá o resultado esperado e você continuará sem conseguir abrir o arquivo.

Será necessário modificar a parte de “version” para 5.3 ou simplesmente 5  (apagando o “.6″).

Após modificar o arquivo, salve o no no .zip e modifique a extensão novamente para .xlf.

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)

abr 01 2015

Problema de Seleção no Infopackage (campo KADKY)

Neste post será falado sobre um problema encontrado ao fazer uma seleção de data utilizando um dos campos standards.

Foi encontrado um problema no módulo de função standard para o campo KADKY, pois este não poderá ser utilizado para seleção, apesar de ser campo standard.

Cenário do problema encontrado:

Foi feita uma seleção no infopackage, com ABAP, para pegar apenas o mês corrente e foi utilizado o campo standard KADKY do data source 0CO_PC_PCP_10. Verificamos, ao carregar os dados, que todos os meses estavam sendo carregados e a seleção não estava funcionando, apesar de estar corretamente configurado.

Solução:

Vimos que no módulo de função SREP_COPC_PCP_10 não constava o campo KADKY, utilizado para a seleção, apesar deste campo ser padrão da SAP. Ou seja, utilizar o campo KADKY não vai funcionar até que a SAP libere uma release contendo este campo no módulo de função, como padrão. Vejam na figura abaixo os campos padrões que podem ser utilizados.

Figura 1

 

O código ABAP do campo KADKY foi retirado e colocado no campo KADAT com as devidas modificações no código para a seleção do mês corrente.

Figura 2

 

mai 15 2014

Compressão de dados do HANA

Olá pessoal !!

Neste post falaremos de algo muito importante que normalmente é subjugado, mas do meu ponto de vista é um ótimo recurso para justificar um investimento no HANA e aumentar o ROI e a diminuir o TCO: A compressão de dados.

Ah legal, todos ouvem falar disso e qualquer pessoa com um pouco de conhecimento em informática sabe do que se trata… economizar espaço em disco, mas no caso do HANA economizar espaço em memória RAM, o que pode trazer uma maior custo benefício ainda visto que memória RAM ainda é muito mais cara que memória em disco, embora tenha caído drasticamente nestes últimos anos, permitindo desenvolvimento de plataformas in-memory como o SAP HANA.

A logica é simples: Digamos que a sua empresa já esteja chegando perto do limite de storage para o DW que é de 10 TB e ela já esteja com 9 e isso logicamente é um sinal vermelho para os gestores de TI serão necessários investimentos em algumas baterias de disco para duplicar essa capacidade que acredito custar no mínimo algo em torno de R$ 100 mil se sua empresa for mais ousada então e quiser colocar uma bateria de SSD então.. acho que quase podemos duplicar esse valor! Me corrijam se eu estiver errado mas foi o que conseguir descobrir em uma rápida pesquisa no Google… Como o SAP HANA pode comprimir no mínimo 3x os dados da armazenados no DW por exemplo então se sua empresa optasse por investir no HANA ela teria os seus 9 TB reduzidos a 3 podendo chegar a menos de 1 TB e com isso ajudar já ganhar um ótimo “desconto” com o dinheiro que iria ser gasto em baterias novas… Excelente não? Ou seja, bastaria vc investir em um servidor de 6 TB para ter essa capacidade duplicada e o que o HANA conseguisse comprimir além de 3x ficaria de “contingencia” por exemplo.

Mas logicamente nenhuma empresa bem gerida gosta de desperdiçar dinheiro e o ideal seria investir com “precisão”, e como pra tudo se tem um jeito nessa vida, menos pra morte(ainda..!) existe uma maneira que pode ajudar nisso e falaremos mais tarde.

Na verdade compressão em banco de dados não é exatamente uma novidade, outros bancos também utilizam este recurso,  o que faz o HANA ser tão diferenciado nesse ponto são os seus algoritmos de compressão e fazer tudo isso IN-MEMORY tornando o HANA único!!

Mas como funciona?

Neste post falarei apenas da técnica que dá suporte a todas as outras técnicas, pois falando a grosso modo, em cima dela todos outros algoritmos são baseados otimizando ainda mais a compressão e ela é relativamente simples a técnica se chama: Dictionary Encoding.

Vamos nos basear como exemplo uma tabela que contem dados da população mundial, na figura abaixo vemos 2 objetos que são a base dessa técnica o dictionary e o attribute vector:

 

img00

 

Na imagem acima temos a coluna de nome da tabela e o Dictionary armazena apenas os valores não repetidos e cria um índice para cada valor o “Value ID”.

O Attribute Vector por sua vez faz exatamente um de-para entre os dados da tabela original e o Dictionary e também cria um índice o “position”.

Agora fica tudo mais fácil pois é só converter os dados da tabela original por bits, pois armazenar em bits é muito mais “econômico” do que armazenar no seu formato original, principalmente se o dado do campo for do tipo char a economia é maior ainda.

 

img01

 

 

Vamos fazer de conta que nossa tabela tenha 8 bilhões de linhas e o comprimento do registro seja de 200 bytes, então teremos:

8.000.000.000 x 200 = 1.6 TB

Peguemos o primeiro campo “first name”, para conseguir substituir os dados por bits tem que saber quantos bits são necessários para 49 bytes de dados e assim por diante, conforme tabela acima, para isso usamos uma função logarítmica de base binária:

Log2(5.000.000) = 23

Fazendo este cálculo temos 23 bits que são necessários para armazenarmos os mesmos 49 bytes, agora vamos fazer uma comparação:

Antes:

8.000.000.000 x 49 Bytes = 392.000.000.000 Bytes / 1024 / 1024 / 1024  = 365.1 GB

Depois:

8.000.000.000 x 23 Bits = 184.000.000.000 Bits  / 8 / 1024 / 1024 / 1024 = 21.4 GB

 

WOWW!!! Tivemos uma redução 94% do tamanho, fantástico não? Agora o que será gravado no campo “first name” serão uma sequencia de 23 bits ao invés de “William” por exemplo… Para quem conhece o BW isso se assemelha a usar as “Surrogate IDs” (SIDs) nas dimensões do cubo.

Mas porque então quando fazemos select vem o nome correto ao invés dos bits? Aahh isso ocorre por causa de uma outra técnica chamada “Materialização” mas isso é assunto para outro post :)

Não podemos esquecer de somar os espaço necessário ocupado pelo dicionário

49 bytes x 5.000.000 / 1024 / 1024 / 1024  = 0.23 GB

Então finalmente temos:

img02

 

Temos um fator de redução de aproximadamente 17 vezes e o novo tamanho da coluna “first name” consome apenas 6% do tamanho original… excelente!!!

Basta repetirmos esta mesma logica para as outras colunas e chegaremos ao fator de redução da tabela inteira…

Então podemos concluir que o nível de compressão depende não só do do tipo de dado como também de quantas vezes temos valores repetidos em uma determinada coluna, ou melhor, quantos valores distintos temos, bem como a quantidade de registro

A esta razão damos o nome de ENTROPIA.

 

Entropia =

cardinalidade da coluna
cardinalidade da tabela

 

Então quanto MENOR a entropia maiores taxas de compressão teremos e para nossa alegria os dados corporativos armazenados em tabelas, costumam ter baixa entropia em suas colunas, então na maioria dos casos é possível obter taxas de compressão maiores que o mínimo de 3x sugerido pela SAP.

Outras técnicas de compressão como Prefix Encoding, Run-Length Encoding, Cluster Encoding, Indirect Encoding, Delta Encoding são aplicadas em cima destes 3 objetos(a tabela, o Dictionary e o Attribute Vector) normalmente depois da Dictionary Encoding já aplicada, por isso ela é a mais importante e as outras tem um papel de tornar ainda mais eficiente a compressão do HANA tornando uma banco muito especial e maravilhoso nesse sentido.

O que havia falado no inicio do post sobre a decisão reduzir investimento em sizing implementando o HANA e para isso ter a maior precisão possível, pois o principal fator  que define o preço do HANA é a quantidade de memória RAM, então pode ser fazer uma programa que analise cada tabela da empresa aplicando a logica acima:

Primeiro definir quantos valores distintos a para cada coluna de uma determinada tabela

  • Ver o comprimento de cada coluna
  • Fazer os cálculos apresentados usando a função logarítmica
  • E ao final somar o resultados em GB de cada coluna e comparar com o original

 

Pronto! Ao final o programa apresenta um relatório e vc pode ajudar o seu diretor ou gerente de TI a comprar exatamente o tamanho necessário para sua empresa de um servidor HANA, claro que levando em consideração uma contingencia segundo as perspectivas de crescimento por ano dos dados da empresa.ou o Sizing Plan

Se o sistema da sua empresa for o SAP é mais fácil ainda… basta consultar a tabela DD02 e a DD03 para ter o nome de todas as tabelas e seus campos que existem no sistema e ainda otimizar uma busca apenas por tabelas que contenham dados e voilá

Bom, está lançada a idéia… quem sabe no próximo posto eu não dou uma de Papai Noel e presenteie vcs com esse programa em ABAP pronto ;)

Um abraço e até a próxima!

 

Will

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!!!!

 

out 03 2013

SAP HANA One (Visão Geral)

Olá pessoal, hoje vamos falar sobre SAP HANA One.

O que venha ser o SAP HANA One?

O SAP HANA One é a plataforma do SAP HANA na web. Com ela você pode trabalhar no HANA como um servidor de banco de dados comum com diferença que ele está remotamente na web.

E com isso você pode desenvolver aplicativos usando o HANA com um banco de dados, mas isso é assunto para um outro post…

Eis aqui o passo-a-passo de como fazer. Embora exista alguns posts na internet que já mostrem como fazer, esse é o primeiro em português, com prints e com umas dicas a mais de maneira a tornar o mais fácil possível o processo.

Há outras empresas oferencedo o SAP HANA One, mas neste post iremos mostrar com o AWS da Amazon.

 

Let´s Begin:

1 – Clique aqui para criar uma conta no AWS

2 – Clique aqui para fazer o download do client e do HANA studio

3 – Clique aqui para criar uma chave S na SCN

image10 image01

 

 

Depois de criar o login e ESTIVER LOGADO, siga para o passo 4.

4 – Clique aqui para criar uma licença de desenvolvedor.

As telas a seguir são bastante intuitivas, você deve aceitar a licença.

 

image02

 

image02 imagem03

 

 

Nesta tela é só inserir o numero da conta que você criou no AWS.

image04

 

 

Nesta tela tudo que você precisa fazer é dar um nome para o stack a ser criado. O stack é uma espécie de “lâmina” de servidor onde os recursos serão alocados (CPU, Memória, discos etc…).

image05

 

 

Nesta tela note que escolhi a menor instância, por questões de custo, o ideal é começar com a menor e caso precise, você poderá mudar a qualquer momento no seu console.

 

image06

 

 

Eu não criei nenhum tag e até hoje nunca me facilitou em nada.

image07

 

 

Aqui tem um dica importante com relação aos custos veja o link abaixo destacado em vermelho escrito “Cost” recomendo criar um link em seus favoritos para sempre que alterar a sua instancia ou adicionando discos você tenha uma previsão de quanto vai pagar, mas a frente eu dou um detalhamento deste link..

Após clicar em continue seu stack ficará pronto em menos de 5 minutos.

 

image08

 

 

image09

 

 

Uma vez com o stack pronto, clique em Services e você poderá arrastar os ícones e criar atalhos na sua barra de atalhos.

Clicando no link “EC2” vc irá acessar a próxima tela.

image10

 

 

Clicando nos links destacados podermos descobrir o IP que será usado para conectar ao HANA no através do HANA Studio.

 

image11

 

 

Use o IP abaixo para configurar o arquivo Hosts.

 

image12

 

 

O arquivo Hosts, normalmente fica no caminho C:\Windows\System32\Drivers\etc

image13

 

image14

 

 

Uma vez configurado o arquivo Hosts e instalado o cliente e o HANA Studio no computador, é só conectar ao HANA.

 

image15

 

 

image16

 

 

Nesta tela coloque:

Usuário: SYSTEM
Senha: manager (em minúsculo)

image17

 

 

E Voilà o HANA está conectado!!!

 

image18

 

 

Custos:

Com relação aos custos tenho apenas 3 observações:

1 – Sempre que não estiver usando o HANA, mantenha sua instancia parada. Ainda assim a Amazon cobra um pequeno custo (menos de 6 dólares). Para não haver cobrança nenhuma você deve clicar em “terminate”.

 

image19

 

 

2 – Nunca deixe seu “Elatic IP” unassigned, pois se ele não estiver associado a uma instancia você é cobrado por isso também.

3 – A titulo de exemplo, usando o template padrão no qual o HANA One foi criado, usando 30 GB de disco e 2 horas por dia no mês (ou 60 horas) temos um custo aproximado de 38 dólares.

 

image20

 

 

Acesso ao LINUX a nível de OS:

1 – Você precisará dos 3 arquivos abaixo. Clique aqui para fazer o download do arquivos.

2 – Você deverá ter salvo o arquivo *.pem durante a criação do stack, caso não tenho feito, a exemplo deste post de realizar o download deverá deletar a chave e recriar novamente que após a re-criação será feito o download automaticamente pelo browser.  Lembre-se de guardar em um LOCAL SEGURO para não perder.

 

image21

 

 

image22

 

 

3 – O usuário default do sistema operacional são:

Usuário: hdbadm
Senha: HANAabcd1234

Com eles você pode entrar no sistema e alterar esta senha, parar ou iniciar o banco (somente o banco e não a instancia) direto do HANA Studio com esse usuário e senha ou via linha de comando do Linux, usando o Putty e o arquivo .PEM.
Sinceramente nunca usei, troquei e nunca tive problemas e para ser sincero, quando tentei fazer ocorria um erro e não conseguia acessar.

Acho que um hacker não vai se interessar em descobrir o IP de um servidor de teste de um simples desenvolvedor… mas caso você queira tentar só clicar aqui, seguir as instruções e boa sorte ;)

 

Bom pessoal, agora que o brinquedo está pronto é só brincar!

No próximos posts iremos falar sobre outras maneiras de usar o HANA One e funcionamento interno do HANA.

Abraços e até lá.

 

set 09 2013

SAP Lumira (Parte 01)

Olá pessoal,

retornando as atividades do blog, hoje venho mostrar uma prévia (em 02 partes) do SAP Lumira (formerly SAP Visual Intelligence).

O que é o SAP Lumira: É uma ferramenta onde os usuários acessam, transformam e visualizam dados de maneira repetida, modo self-service. A interface dela é amigável e permite analisar rapidamente os dados.

Você pode conectar o SAP Lumira para visualização dos dados ao SAP HANA, a universos do SAP BO (versões 3.x e 4.x), a planilhas Excel, arquivos CSV ou usando um freehand SQL (instruções SQL).

 

Ah, e você pode baixar a versão Personal Edition for Free do SAP Lumira e realizar seus testes e afins.

 

Bom, vamos a prática:

- Execute o SAP Lumira:

img01

 

 

- Essa é a interface dela:

img02

 

 

- Clique em “New Document” e escolha “Universe 4.x”.

img03

 

- Conecte-se ao CMS (Servidor BO) e escolha o Universo (no caso e-fashion). Clique em “select”.

img04

 

 

- Escolha os objetos necessários para a sua consulta (podem usar o exemplo abaixo se quiser) e clique em “Acquire”.

img05

 

 

- Carregando os dados…

img06

 

 

- Pronto!

img07

 

 

Observe que a primeiro momento ele exibe os dados de forma tabular, podendo ser alterado no menu acima em: “Data”, “Split” e “Visualize”.

 

  • Em “Data”, como dito anteriormente são os dados disponíveis em forma de tabela.
  • Em “Split”, você divide a tela na visão dos dados tabulares e de gráfico.
  • Em “Visualize”, você tem uma visão com os componentes gráficos pertinentes aos objetos que você selecionou na consulta.

 

- Split.

img08

 

 

- Visualize.

img09

 

 

 

- Na parte superior você pode alternar com os diversos tipos de componentes gráficos. Exemplo abaixo, 3D.

img010

 

 

 

- Você também pode fazer filtros. É só clicar e arrastar a área de “Filters”. Assim que você seleciona um valor, automaticamente os dados são refletidos no gráfico.

img011

 

 

 

- Você também pode salvar uma espécie de “Snapshot”, clicando em “Save”. No Exemplo abaixo, selecionei um gráfico de Pizza.

img012

 

 

- Visão salva! Como podem ver aparece uma pequena janela logo abaixo de sua visão atual.

img013

 

 

Enfim, você pode trabalhar com qualquer tipo de dado e ter suas próprias visões. Um ponto interessante: Você pode compartilhar isso via e-mail, via StreamWork e etc.

 

Bom, essa foi a primeira parte, visão geral mesmo da ferramenta SAP Lumira. Em breve mais posts relacionados a esse e outros assuntos. Até mais.

 

Para esse post foi utilizado o SAP Lumira 1.0.11, SAP BO 4.0 conectado do Universo de testes/treinamento/padrão de instalação chamado e-fashion.

 

Posts mais antigos «