domingo, 17 de novembro de 2013

SpagoBI e Mondrian

Em caso de erros do tipo: com.tonbeller.jpivot.olap.model.OlapException: ERROR: function upper(integer) does not exist

adicione o tipo de dados à descrição do cubo Olap (por padrão o editor do SpagoBI Studio não o faz), para que o Mondrian / JPivot saiba que o atributo em questão não é do tipo String e sim um Integer, Numeric, etc...

vide exemplo da descrição da dimensão abaixo (extrato da descrição de um Cubo Mondrian) - note o atributo type = "Integer" deixando claro que nrsetor na tabela lote era do tipo Inteiro e não String:





allMemberName="Todos_SetorLote"
primaryKey="idlote" 
>


ordinalColumn="nrsetor"
uniqueMembers="false"
/>

uniqueMembers="false"
/>


 

quinta-feira, 14 de novembro de 2013

Workarounds para problemas entre SpagoBI 4 e JasperReports


Usando SpagoBI 4, alguns problemas apareceram ao usar relatórios com JasperReports. Tais relatórios estavam sendo preparados com a versão 5.1 do iReports. Para solucionar os problemas os seguintes workarounds foram utilizados:
- Para o bug do UUID não aparecer, evitar importar as configurações de versões anteriores do iReports
- Nas configurações do iReport, solicitar modo de compatibilidade para a versão 4.0.1 e com isso o bug do (Invalid content was found starting with element 'paragraph'. No child element is expected at this point.) deixou de aparecer
- Para corrigir erros do tipo: Cannot cast from Date to String
                value = (java.lang.String)(new java.util.Date()); //$JR_EXPR_ID=13$
que apareciam nos textFields, bastou em cada TextField marcar o tipo de dado que ele deveria exibir (o mesmo do campo a que ele estava relacionado)
- Para trabalhar com imagens no relatório e poder especificar o caminho relativo para as imagens, criar o parâmetro SBI_RESOURCE_PATH. Tal parâmetro estará apontando para o diretório resources da pasta do SpagoBI. Assim, para referenciar um certa imagem, usar o exemplo: $P{SBI_RESOURCE_PATH} + "logo1_peq.jpg"