Pesquisar este blog

quinta-feira, 26 de janeiro de 2012

Dica da semana - Formatar Data em Gráfico

Essa é importada daqui daqui.

Formatar a data em um gráfico, geralmente no eixo X.

O ReportStudio permite que você formate as exibição de dadas, de modo que você não precise fazer modificações em nível de consulta, apenas layout.

Acontece que para isso, é necessário uma pequena mudança que não é explicada em lugar algum.

Mude a propriedade Tipo de origem (Source Type) de Legenda do Membro(Member Caption) para Valor do Item de Dados(Data Item Value) e voilá, agora a formatação funciona!!

Espero que ajude!

quinta-feira, 19 de janeiro de 2012

Cognos Determinants

Como eu havia prometido mes passado, vou fazer uma explicação de como é e pra quê serve esse trem,

Pela pela IBM:

Determinant é um modo de prover controle sobre granularidade.
Quando utilizar:



Exemplo:

Ano Mes Dia Data
2011 05 2011-05-01 1 de Maio de 2011
2011 05 2011-05-02 2 de Maio de 2011

Vamos supor que preciso trazer informações da Fato Notas Fiscal, que é diária, nesse caso meu join seria pela  própria data ou ID da dimensão.

Numa segunda consulta preciso trazer informações da Fato de Orçamento, está é mensal, logo esse join seria por Ano + Mes.

Agora vamos imaginar o caso real, preciso ver se minhas vendas estão atingindo as metas de orçamento, logo vou juntar duas fatos numa consulta, mas cada uma tem uma nivel de granulariade diferente, como impedir a duplicação dos dados?

Podemos criar os seguintes determinants.
Name Key Attributes Uniquely Identified Group By
Ano Ano Nenhum Não Sim
Mes Ano, Mes Nenhum Não Sim
Dia Dia Data Sim Não

*É importante lembrar que para os determinantes funcionarem é preciso ter um join nos campos deste.

Então temos 3 determinants, um para cada nível da dimensão. Não é necessário criar um determinante para cada nível das dimensões, apenas para os que fazem joins.

Repare que no nível mês, não temos um campo que identifica os registros unicamente, então temos que colocar o Ano e Mês como chave.

Na prática o determinante criará um uma sub-consulta na dimensão agrupando os dados pelos campos chave e utilizando a função MIN nos campos atributos.

Isso reolve o problema.

Como sempre, em caso de dúvidas, e-mail.!!

segunda-feira, 12 de dezembro de 2011

Multi-Version Coexistence Cognos 10

Você sabia que é possível configurar 2 ambientes Cognos a partir da versão 10.1?

Com isso você pode criar um projeto de migração transparente ao usuário.

A versão 10.1 se torna a padrão mas ao clicar em links pré-configurados, o usuário é levado a versão anterior sem que perceba.

Cognos 10 Multi-Version Coexistence suporta as versões Cognos 8.3.x, 8.4.x e 8.4.1.
A versão 8.4.1 suporta nativamente, as demais versões precisam do último FP disponível.

Como fazer:

No seu portal versão 10

1 - Iniciar->IBM Cognos Administration
2 - Clique na aba Configuration.
3 - Clique na em Set Properties.
4 - Clique na outra aba Configuration.
5 - Clique em Environment->Advanced Settings .
6 - Adicione as respectivas linhas.


Variable​
Value​
MVC_remoteWebContent​http://<hostname>.ibm.com/<c8alias>​
MVC_remoteGateway​http:​/​​/​<hostname>.ibm.com​/​<c8alias>​/​cgi​-​bin​/​cognos.cgi​​
MVC_domain​ibm.com


No seu portal versão 10

1 - Iniciar->IBM Cognos Administration
2 - Clique na aba Configuration.
3 - Clique na em Set Properties.
4 - Clique na outra aba Configuration.
5 - Clique em Environment->Advanced Settings .
6 - Adicione as respectivas linhas.

 
Variable​
Value​
MVC_gateway​http:​/​​/​<hostname>.ibm.com​/​<c10alias>​/​cgi​-​bin​/​cognos.cgi​​
MVC_domain​ibm.com​

*IMPORTANTE, AMBOS OS SERVIÇOS DEVEM ESTAR CONFIGURADOS NO MESMO DOMÍNIO E ESTE DEVE ESTAR INCLUÍDO NA POLÍTICA DE SEGURANÇA DE FIREWALL DO COGNOS, do contrário um erro javascript poderá aparecer ou será informado um erro do CAF.

*Obs, não consegui fazer funcionar na versão 10.1.1 x64 com 8.4.1 x32.

Aqui o How-to da IBM.
http://www-01.ibm.com/support/docview.wss?uid=swg21459041

Aqui tem um exemplo de como fica.
http://www.youtube.com/watch?v=kD7J5fZY-n8

terça-feira, 6 de dezembro de 2011

Dica da semana - Cálculo Incorreto

É isso aí, voltei, depois de umas férias e uma ripa no trabalho.

A dica do dia fica pra uma propriedade muito útil embora pouco conhecida dos Data Itens, o famoso Solve Order.

As vezes precisamos fazer uma série de cálculos e apresentá-los numa lista ou crosstab, mas por mais que tentamos a porcaria do valor sempre vem errado.

Me lembrei disso ontem enquanto via um relatório que aparentemente continha todas as agregações definidas corretamente, mas os rollups estavam todos errados.

Esse tipo de problema aparece geralmente em crosstabs, pois podemos colocar qualquer coisa em qualquer lugar.

Procedimento muito simples, veririque se as agregações estão corretas, depois basta definir nos Data Itens valores em sequência na mesma ordem dos cálculos.

Obs.: Por padrão Aggregate Functions utilizam Solve Order 1, e dados de Query utilizam 0 ou nada.

Dúvidas? Complicado? Quer adicionar algo? E-mail-me!

Próximo post malditos Determinants!!!!

sexta-feira, 7 de outubro de 2011

Javascript Expand and Colapse - Agrupar e Desagrupar - Part 2

Eu sei, demorei pacas pra por esse post, vida corrida!!

Como disse antes esse é um exemplo de agrupamento possível, pode-se fazer muitos níveis, aqui vamos fazer apenas 1.

1 - Construa uma query com essa cara.


Só dois níveis nesse exemplo.







2 - Construa uma página com essa cara.

Repare que existem 5 HTML Itens, disponha-os exatamente da mesma forma.
Agora vamos ao conteúdo deles:

HTML 1: <script type="text/javascript"> A função do post anterior</script>

HTML 2: <span id="tbl1">

HTML 3:
<img src="../images/PropertyGroup_plus.gif" onclick="ExpandCollapse(this);" style="cursor:hand; vertical-align:middle; margin-right:2px"/>

HTML 4: </span>

HTML 5: <script type="text/javascript">StartHidden('tbl1');</script>

3 - E por fim acerte o padding(espaçamento) no Nível 1 em 20 px.

Com isso está pronto, rode e veja o que acontece!

Caso queira inserir mais níveis, faça o padding incremental, mas sempre deixe o último nível(nesse caso o 2) sem padding.
Nível 3 normal
Nível 2 20px
Nível 1 40px


Essa função só server para grupos superiores, ou seja totais na parte de cima do relatório, para totais na parte inferior é necessário adequar a função, se precisar de ajuda me manda um e-mail.

Boa noite a todos.

terça-feira, 20 de setembro de 2011

Javascript Expand and Colapse - Agrupar e Desagrupar - Part 1

Esse post já está preparado tem um tempo, mas não ficou muito bom.

Outra funcionalidade muito solicitada é o famoso "Agrupar" do Excel, que facilita a visão diminuindo a poluição no relatório, pois ele agrupa varias linhas, e expande quando solicitado.

É como a estrutura de diretório do Windows, clique no "+"(mais) e a árvore abre.

Pois bem, existe um modo de se fazer isso no Cognos graças ao Mr. Javascript, abençoado seja o inventor.

A utilização é muito simples, e a lógica aplicada também, então vamos a explicação técnica.

No HTML o elemento TABLE possui os elementos TR, que são as linhas da tabela - table row.
Esses elementos TR por sua vez possuem um atributo chamado STYLE, o qual possui uma propriedade chamada DISPLAY.

table.tr.style.display, ok?

Essa propriedade define se um elemento estará visível ou não na tela, apesar de ter sido carregado.
Então DISPLAY = 'NONE' significa que o elemento estará oculto e DISPLAY = 'BLOCK'... visível.

A função consiste basicamente em ler todas as linhas da tabela e atribuir a propriedade não visível ou visivel, isso dependerá de uma variável do preenchimento definido na variavél INDENT_SIZE.

A função percorre todas as linhas abaixo da linha clicada verificando se existe uma imagem dentro da primeira célula, se tiver significa que é hora de para. Uma vez verificada a célula, a linha é trocada de status, se visível então invisível e a imagem muda de IMG_UP/DOWN para IMG_DOWN/UP.

Logo abaixo você vai encontrar os itens necessários para poder criar um relatório com Expand/Collapse.
No próximo post vou fazer uma demonostração de utilização.

------>>>> Código da função

Cognos 10.1.1 - Released - Lançado

Post rapidinho pra começar o dia.

Então, eis que a IBM lança mais uma versão do Cognos, bom... muitos vão falar que não é uma versão, só um patch ou algo assim.
Gostaria que isso fosse verdade, antigamente eu diria que 10 era a versão, 1 a release e o outro 1 era  patch, mas esse lançamento tem coisas diferentes e não existe a possibilidade de atualização de uma versão existente, fora que eles já tinham lançado o FP1.

É necessário fazer uma nova instalação!!

Resumindo Cognos 10.1.0 + FP1 ≠ Cognos 10.1.1

A única coisa que me chamou a atenção, até agora, foi o lançamento do report service finalmente em 64-bits, porém ao que parece ele foi feito para ser utilizado junto ao DQM(Dynamic Query Mode) um treco que aprimora query e caches em alguns tipos de fontes de dados como TM1, Essbase e agora em DMR.

Então não se deve esperar que a velocidade ou capacidade dos relatórios diminua e aumente, respectivamente, só nos casos citados.

Fora isso, uma bela lista de correção de erros, e mesmo assim eu já achei um, incrível!

Agora é ir usando pra ver o mais da pra fazer.

Abs