Pular para o conteúdo principal

Postagens

Configurar CDE Biblioteca Utils para pt-br

Para configurar a Biblioteca Utils usado no CDE para o idioma pt-br execute ao iniciar o dashboard o seguinte código: function configurar_internacionalizacao(){ Utils.configLanguage('pt-br', {     number: {     mask: '#,0.##',     style: {     integerPad: '0',     fractionPad: '0',     decimal: ',',     group: '.',     groupSizes: [3],     abbreviations: ['k','m', 'b', 't'],     negativeSign: '-',     currency: 'R$'     } },     dateLocale: {                 months: [                             "Janeiro", "Fevereiro", "Março", "Abril", "Maio", "Junho",                             "Julho", "Agosto", "Setembro", "Outubro", "Novembro",                             "Dezembro"                         ],                 monthsShort: [                    

Ativando a RequireJS no Pentaho

RequireJS é carregador de código javascript modular. Ele otimiza a carga do código aumentando a velocidade. Para ativá-lo em um dashboard, Pentaho/CDE ativa RequireJS no Editor do CDE em Settings. Diversas bibliotecas serão ativadas como: Utils; jquery; moment; chosen; Obs: A variável de ambiente para para referência aos dashboard mudará de : Dashboards Para  dashboard Observe que é o case sensitive. Referências: https://help.pentaho.com/Documentation/7.0/0R0/CTools/CDE_Advanced_Solutions

Variáveis de contexto no Pentaho

As seguintes variáveis de contexto estão disponíveis no Pentaho/CDE: user - O ID do usuário ativo; roles - A lista de papéis associados ao usuário; serverLocalDate - A data e hora do servidor; serverUTCDate - A data e hora em formato UTC sessionTimeout - O tempo para expiração da sessão atual; path - O caminho do arquivo atual no repositório do Pentaho; locale - A linguagem e o local que estão configuração no servidor do Pentaho; Essas variáveis são acessíveis através das variável: function f(){     return Dashboards.context.user; } function f(){     return Dashboards.context.roles; } function f(){     return Dashboards.context.serverLocalDate; } function f(){     return Dashboards.context.serverUTCDate; } function f(){     return Dashboards.context.sessionTimeout; } function f(){     return Dashboards.context.path; } function f(){     return Dashboards.context.locale; } 

Cookies em Dashboards Pentaho/CDE

Salvar o valor de um campo em um formulário CDE pode ser feito a partir salvando e carregando o valor a partir de um cookie: A seguinte implementação foi usada no CDE em um Javascript Script Function : Implementação function createCookie(name,value,days) {     var expires = "";     if (days) {         var date = new Date();         date.setTime(date.getTime() + (days*24*60*60*1000));         expires = "; expires=" + date.toUTCString();     }     document.cookie = name + "=" + value + expires + "; path=/"; } function readCookie(name) {     var nameEQ = name + "=";     var ca = document.cookie.split(';');     for(var i=0;i < ca.length;i++) {         var c = ca[i];         while (c.charAt(0)==' ') c = c.substring(1,c.length);         if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);     }     return ""; } function eraseCookie(name) {     createCookie(name,"

Otimizando o Postgresql para BI seq_page_cost e random_page_cost

Quando se usa o Postgresql como banco de dados para BI  com a Plataforma Pentaho uma preocupação é otimizar o banco. Uma estratégia se você tem memória é reduzir os valores dos parâmetros do arquivo postgresql.conf Valores originais: #seq_page_cost = 1.0 # measured on an arbitrary scale #random_page_cost = 4.0 # same scale as above Estes dois parâmetros definem o custo para leituras sequencias e aleatórias, sendo que valores altos priorizam o uso do disco e valores baixos priorizam o uso da memória. Valores Ajustados para uso de memória, as tabelas são carregadas nas primeiras leituras: seq_page_cost = 0.1 # measured on an arbitrary scale random_page_cost = 0.1 # same scale as above Outra dica: Se existe memória disponível e está sendo usado linux com SO não aloque totalmente a memória para o postgresql, deixe um percentual para uso de cache do SO, isto fará que o linux carregue no cache do SO em memórias as tabelas utilizadas no momento.

Função Diferença em Anos para Postgresql

A seguinte função para o banco de dados Postgresql permite calcular a Diferença em Anos entre duas datas: -- Function: public."func_Data_Diferenca_Anos"(date) -- DROP FUNCTION public."func_Data_Diferenca_Anos"(date); CREATE OR REPLACE FUNCTION public."func_Data_Diferenca_Anos"("in_Data" date)   RETURNS integer AS $BODY$ DECLARE     iAnoAtual integer;    iAnoData integer;    iMesAtual integer;    iMesData integer;    iDiaAtual integer;    iDiaData integer;    iDifAnos integer;    iDifMeses integer;   BEGIN iAnoAtual=EXTRACT(year from CURRENT_DATE); iAnoData=EXTRACT(year from $1); iMesAtual=EXTRACT(month from CURRENT_DATE); iMesData=EXTRACT(month from $1); iDiaAtual=EXTRACT(day from CURRENT_DATE); iDiaData=EXTRACT(day from $1); iDifAnos=iAnoAtual-iAnoData; IF (iMesAtual < iMesData) THEN     iDifAnos=iDifAnos-1; END IF;     RETURN iDifAnos;   END;    $BODY$   LANGU

Depurando Dashboards Pentaho/CDE

Encontrar erros em dashboards Pentaho/CDE pode ser um desafio para que está acostumado ao debug de ferramentas como eclipse. Mas existe um caminho desconhecido por muitos: Ao acrescentarmos a expressão  ?debug=true&debugLevel=5 O Dashboard é executado em modo debug. A informações de depuração passam a estar acessíveis através do console do Browse. Na maior parte dos navegadores para visualizar utiliza-se a tecla F12. Um Exemplo do que é visualizado: