Arquivo por tag: Web Intelligence

jan 22 2012

Web Intelligence – Solução de Problemas em fórmulas

No artigo de hoje vamos falar sobre um tema que vai ajudar bastante os desenvolvedores de SAP BO no que diz respeito aos principais problemas e soluções de fórmulas no WebI. Um ponto importante que vale ressaltar é que todas as mensagens de erro em fórmulas no WebI começam com o # e aparecem na célula onde a fórmula é colocada.

Os principais erros são:

•#DIV/0

• #MULTIVALUE

• #OVERFLOW

• #SYNTAX

• #INCOMPATIBLE

• #CONTEXT

• #ERROR

1 – #DIV/0

# DIV / 0 ocorre sempre que uma fórmula tenta dividir um número por zero, o que é matematicamente impossível. Zero nunca pode aparecer como um divisor.

Exemplo:

2 – #MULTIVALUE

Ocorre sempre que você coloca uma fórmula que retorna mais de um valor em uma célula que produz um único valor.

Exemplo:

Obs.: Se esse mesmo relatório é dividido em seções por País, por exemplo, observamos que há apenas um valor por país conforme figura abaixo.

Fora da seção, no entanto a fórmula ainda retorna #MULTIVALUE.

3 – #OVERFLOW

O erro #OVERFLOW ocorre quando um cálculo retorna um valor que é muito grande para WebIntelligence trabalhar. Esse valor, na forma exponencial, é 1.7E308.

4-#SYNTAX

Ocorre quando uma fórmula referencia um objeto que já não existe no relatório.

Exemplo:

Referenciando um objeto não existente.

Se a variável Yearly Average  é excluída do relatório, ele agora aparece com esse formato:

5 – #INCOMPATIBLE

Ocorre quando as dimensões em uma consulta são incompatíveis.

6 – #CONTEXT

A mensagem de erro #CONTEXT está relacionada com o erro #INCOMPATIBLE que ocorre quando uma consulta contém objetos incompatíveis.  O #CONTEXT ocorre quando em uma consulta específica um objeto medida de agregação é inexistente para um determinado contexto.

7 – #ERROR

É a mensagem de erro padrão que cobre todos os erros não abrangidos pelas mensagens descritas anteriormente nesse artigo.

Exemplo:

Esses são erros que certamente o leitor vai encontrar no seu dia a dia de desenvolvimento de relatórios. Com a prática a resolução desses problemas se torna algo mais fácil.

Espero que tenham gostado.

Até a próxima.

jan 16 2012

Sincronizando Dados no Web Intelligence

No artigo de hoje falaremos sobre uma funcionalidade muito interessantes e útil no Web Intelligence que é a Sincronização de dados ou mescla de dimensões. Essa funcionalidade é muito útil quando queremos apresentar em uma tabela, por exemplos informações oriundas de consultas distintas.

1 – Introdução

Em um documento Web Intelligence pode ser utilizado um ou mais queries. Estas queries podem ser baseadas em um ou mais universos.

Ou seja, em um mesmo relatório, pode ser incluído e formatado o resultado de duas queries que acessam universos diferentes.

O system administrator determina as permissões para os acessos a universos

Em um único documento é possível incluir até no máximo 15 queries.

Observamos no exemplo abaixo a junção dos 5 blocos de resultados das consultas em apenas 3 blocos.

Para ter dados de diferentes fontes em um único bloco, é preciso sincronizar dados de dimensões merged.

Se os dados não forem sincronizados com dados similares o Web Intelligence não irá saber de que forma os dados estão relacionados e o relatório pode não mostrar resultados relevantes.

2 – Sincronizando Queries Merging Dimensions Manualmente

Há como definir os relacionamentos entre os objetos de diferentes universos manualmente (merging dimensions).

Isto permite identificar os objetos que retornam dados comuns em ambas as queries.

Uma vez que as dimensões merged estejam postadas, é possível comparar as informações entre as queries mais precisamente.

Algumas regras para relembrar ao merging dimensions de múltiplas queries:

1- Só é possível o link  de objetos de dimensão

2- Os objetos não precisam ter o  mesmo nome

3 – Os objetos precisam ter o mesmo formato de dado

4 – Todos os dados no data provider são case-sensitive

5 – O formato dos valores deve ser o mesmo

6 – Qualquer número de query podem ser linked por objetos de dimensão comuns

7 – Qualquer número de objetos de dimensão podem ser merged entre duas queries

8 – Um objeto measure pode ser sincronizado com sucesso somente para o nível de detalhe mais baixo  que é comum entre duas diferentes fontes de dados.

Abaixo mostramos o resultado de uma consulta envolvendo 2 universos.  Os objetos Store name e Sales revenue são do mesmo universo
e fonte de dados (eFashion) mas o Number of employees é de outro universo e fonte (eStaff).

O resultado abaixo é apresentado quando criamos um relatório onde não fazemos a sincronização dos dados desses universos.

Agora apresentaremos o resultado do mesmo relatório com as dimensões mescladas.

3 – Demonstração

Abaixo demonstraremos como criar um relatório com múltiplas fontes de dados. Primeiro criaremos uma consulta a partir do universo eFashion conforme ilustrado abaixo.

Criaremos em seguida outra consulta vinda do Universo Island Resorts conforme ilustrado abaixo.

Observe que para cada consulta temos a dimensão City cujos dados estão na mesma granularidade. Esse objeto será usado para realizar a mescla das duas consultas conforme veremos a seguir. O resultado das duas consultas separadamente está sendo representada no relatório de exemplo abaixo.

Para criarmos um relatório com as duas medidas, precisamos fazer o que chamamos de mescla de dimensões.  Para tanto juntamos o objeto em comum nas duas consultas, no nosso exemplo o objeto City. O resultado dessa mescla é apresentado abaixo. Observe que a medida Number of Guests apresenta valor apenas para os dados que existem em comum nas duas consultas.

Esse tipo de recurso no Web Intelligence é muito útil em determinados casos, dependendo do projeto em que você estiver atuando.

Espero que tenham gostado desse artigo e em caso de dúvidas é só postar.

Até breve.

jan 13 2012

Web Intelligence – Mensagens de Erros

Começaremos o ano novo com um artigo simples, mas bem útil pra quem desenvolve muito usando o  WebIntelligence.  Agrupamos nesse artigo algumas das principais mensagens de erro e possíveis soluções. O objetivo desse artigo não é esgotar esse assunto uma vez que existem vasto materiais e manuais técnicos com essas mensagens para orientar o desenvolvedor.

Invalid block definition. (WIH 00001)

Causa:

Você tentou executar a consulta, ou acessar os filtros dos relatórios ou Propriedades sem completar os seguintes critérios:

Para tabelas, crosstabs e formulários, você deve alocar objetos para cada campo.

• Para todos os tipos de gráfico, você deve alocar objetos de medida únicos para a Y-Axis.

• Para todos os tipos de gráfico, exceto gráficos de pizza, você deve alocar pelo menos uma dimensão ou objeto detalhe para o X-Axis.

• Para todos os tipos de gráfico, exceto gráficos de pizza, se você tiver atribuído mais de um objeto para o eixo Y, você não pode alocar todos os objetos para o Z-Axis.

• Para gráficos de pizza, você pode alocar apenas um objeto de medida para a Y-Axis.

• Para gráficos de pizza, você deve alocar pelo menos um objeto para o X-Axis.

Ação:

Alocar adequadamente os objetos para cada campo necessário.

This object has already been inserted. (WIH 00002)

Causa:

Você não pode inserir o mesmo objeto mais de uma vez em uma consulta

Ação:

Escolha outro objeto, ou execute a consulta com o objeto que você selecionou.

This filter has already been inserted. (WIH 00003)

Causa:

Você não pode inserir o mesmo filtro pré-definido mais de uma vez em uma consulta.

Ação:

Escolha outro filtro predefinido, ou execute a consulta com o filtro predefinido já escolhido.

You must insert a result object before choosing another tab. (WIH 00008)

 Causa:

Você tentou acessar outro guia, sem a inserção de objetos para o relatório.

Ação:

Inserir um ou mais objetos para o relatório no painel de objetos no Universo na tab de query.

You cannot create a section using a measure. (WIH 00009)

Causa:

Você só pode criar seções em dimensões. Por exemplo, você pode criar seções por períodos de tempo, geografias, categorias de produtos, clientes e assim por diante. Você não pode criar seções sobre medidas.

Ação:

Selecione a dimensão para criação a seção. 

The document could not be saved. (WIH 00014)

 Causa:

O WebIntelligence não foi capaz de salvar o documento para o repositório. Este erro pode ocorrer por uma série de razões. Por exemplo: você não tem o direitos de segurança para a pasta onde você tentou salvar o documento.

Ação:

Consulte o administrador do BusinessObjects para determinar por que você não poderia salvar o documento.

 You cannot create a variable that has the same name as an existing document object. Give the new variable a different name. (Error: WIJ 10001)

Causa:

Um documento único do WebIntelligence não pode conter vários objetos ou variáveis ​​com o mesmo nome.

Ação:

Para salvar uma nova variável, cria a mesma com um nome diferente dos objetos e variáveis ​​já incluídas no documento.

The query in this document is empty. Check that the Result Objects pane on the query tab includes objects before running the query (ERR WIJ 30000).

Causa:

Se a consulta não contém quaisquer objetos, Web Intelligence não pode executar a consulta e recuperar dados do banco de dados.

Ação:

Edite a consulta e adicione os objetos apropriados no painel de consulta.

Existem ainda muitas outras mensagens de erros conhecidas, com o tempo iremos postar mais.

Espero que tenham gostado e até a próxima.

ago 09 2011

Cálculo de Contexto (Input e Output Context)

Cálculo de Contexto (Calculation Context).

Primeiro vamos entender um pouco mais sobre este cálculo, pois existe uma confusão grande na diferença entre os dois.

Para o cálculo de contexto, são compreendidos duas formas: Input e Output

Quando queremos utilizar uma agregação calculada, precisamos do Input Context e quando queremos utilizar uma agregação projetada, precisamos do Output Context.

Contexto de Input (Input Context):

Quando fazemos qualquer seleção em um bloco (tabela ou gráfico) ou queremos incluir alguma(s) dimensão no contexto do meu trabalho e não precisamos de uma agregação no nível do relatório (global), utilizamos um Contexto de Input. Este contexto nos dá a liberdade de selecionar uma ou mais  dimensões para restringir os valores e/ou incluí-los no contexto da minha consulta.

Como foi dito anteriormente, o Contexto de Input é utilizado para fazer uma Agregação Calculada, ou seja, esta função restringe o meu universo ao subconjunto que eu desejo trabalhar . Posso citar como exemplo o caso do valor máximo da receita relaciona aos Estados e utilizá-lo em apenas um bloco. Neste caso utilizarei o operador IN (darei os operadores em um quadro ao final do texto) pois especificarei a dimensão que eu quero relacionar
Ex:  =Max( [Receita] ) In ([Estado])

Caso eu queria restringir o meu Estado e ainda relacionar a minha maior receita ao ano, precisarei laçar mão de outro operador que é o Where (ou em português Onde).
Ex:  =Max ([Receita] ) In ([Estado]; [Ano]) Where ([Estado] = “Rio de Janeiro”)

Ou seja, neste caso eu estou utilizando o operador In para atrelar a receita máxima para cada Estado e depois incluindo o ano para descobrir o maior valor (dentre os Estados) em cada ano. Após isso, estou utilizando o operador Where para restringir o Estado que eu quero extrair a receita. O resultado desta forma será o valor máximo da receita para o Estado do Rio de Janeiro por ano.

OBS: Não necessariamente precisamos especificar um bloco para utilizar um contexto de input. Caso você determine que o relatório inteiro precise desta regra de negócio, faça.

Contexto de Output (Output Context):

Quando queremos fazer cálculos com dimensões que não estão sendo utilizados nos blocos criados ou no relatório (apenas na minha consulta), precisaremos utilizar o recurso do Contexto de Output. Este recurso nos permite fazer cálculos de projeção como o valor total do que está sendo extraído no bloco (ou relatório) em relação ao valor total encontrado na base (sempre com relação a consulta feita).

Segue um exemplo para extrair o valor total de todos os Estados.
= Sum ( [Receita] ) ForAll [Estados]

A partir delta fórmula, podemos calcular o percentual de receita por Estado de acordo com o valor total de todos os Estados.

Operadores utilizados para o cálculo dos Contextos:

O Input Context utiliza os operadores ForEach e In.

O Output Context utiliza os operadores ForAll e In.

O Cálculo do Contexto (Input e Output) utiliza o operador Where.

Input vs Output Contextos

jul 26 2011

Enviando relatórios para a Caixa de Entrada do BO e por E-mail

Olá pessoal, hoje vou falar de um assunto interessante no quesito compartilhamento de informações analíticas, gerenciais, etc.

No BO, também é possível enviar relatórios para outros usuários do BO através de uma funcionalidade disponível no InfoView.

Essa etapa de agora vamos realizar uma prática de envio de relatórios do Web Intelligence para a Caixa de Entrada do BO.

Para compartilhá-los, é simples, navegue pela pasta particular ou pública até encontrar o documento (relatório) desejado. Marque-o.
Clique em “Enviar para” e selecione a opção “Caixa de entrada da Business Objects”.
Ao clicar nesta opção será aberta a tela de envio de relatório para a caixa de entrada da Business Objects e desmarque a opção “Usar configurações padrão”.
Nessa tela, você pode enviar o relatório para um ou mais usuários ou ainda para um grupo.
Para conferir, vá na Caixa de Entrada do BO e veja a mensagem recebida e clique para ver o relatório.

Enviando relatório por e-mail:

O envio de um relatório por e-mail depende de alguns fatores, entre eles, a configuração no CMC para saída de e-mails externos, mas isso é assunto para outro post. Esse post!
O procedimento é o mesmo:  Navegue pela pasta particular ou pública até encontrar o documento (relatório) desejado. Marque-o.
Clique em “Enviar para” e selecione a opção “E-mail”.
Ao clicar nesta opção será aberta a tela de envio de e-mail e desmarque a opção “Usar configurações padrão”.
Obs.: Se essa opção não estiver habilitado, ou ocorreu um erro de plug-in, entre em contato com o Administrador do BO e peça para ele realizar as devidas configurações no CMC.

 

A seguinte tela será apresentada: É semelhante a de um formulário de e-mail qualquer.
Ao clicar em “Enviar”, você pode conferir o recebimento do relatório por e-mail, verificando na sua caixa de entrada do correio no Lotus Notes ou outro client de e-mail (Outlook, etc).

 

Bom, espero que tenham gostado de mais essa dica.
Mas lembre-se: Qualquer informação valiosa em sistemas de BI deve ser enviado com bastante cuidado, pois nela pode conter dados que comprometem uma área, gerência ou até mesmo a empresa como um todo!

Até.

jul 01 2011

Adicionando controles de entrada no Web Intelligence

Olá pessoal,
estreando o post de SAP BO (Business Objects) que é o propósito deste blog, hoje destaco uma funcionalidade do WebIntelligence que é bastante usado e serve como um recurso interessante em alguns relatórios.

Bom, num relatório pode-se inserir um controle de entrada (ou input control) em qualquer componente (seja gráfico ou tabela) em que funciona como uma espécie de segundo “prompt” ou “filtro”, porém ele atua de forma independente e direto no componente a partir de uma dimensão ou indicador.

Veja abaixo como isso funciona na prática: (Obs.: Em todos os artigos estaremos utilizando universos, relatórios, objetos do próprio BO que já vem instalado como padrão – exemplo: eFashion, Island Resort Marketing, etc).

– Nas abas da edição do relatório, clique em “Input Controls” ou “Controles de Entrada”
– Escolha a dimensão “Country of origin”.



– Escolha o tipo de controle, no caso “Combo Box”.

Nas propriedades do controle de entrada, escolha e preencha as opções que serão pertinentes ao componente.

– Após isso, escolha em qual componente esse controle refletirá. Clique em “Finish”.

– Execute o relatório e veja como ficou:

– Faça um teste, selecionando apenas “US”, veja resultado abaixo:

Bom, repararam que é simples utilizar este recurso que ajuda em muitas análises.
Caso ainda tenham dúvidas, mande seu comentário!

Até a próxima!