Crosstab com o Dynamic Jasper

3 respostas
A

Eu sou usuário iniciante. Agora estou começando a usar de crosstab, como eu faço uma crosstab de um arquivo txt? Eu defino ele como uma fonte de dados e como? Eu sou um novato mesmo. E como definir uma fonte de dados de crosstab de um arquivo XML?
As medidas são agrupadas? Meu arquivo txt é o seguinte:

receita | ano | peça | quantidade

569294998 | 1992 | PGGR#2421 | 196
549307863 | 1993 | PGGR#2421 | 159
512661262 | 1994 | PGGR#2421 | 170
498948039 | 1995 | PGGR#2421 | 184
570293504 | 1996 | PGGR#2421 | 185
489472321 | 1997 | PGGR#2421 | 177
334744227 | 1998 | PGGR#2421 | 102

Só preciso mudar a visualização desta tabela para crosstab mesmo… sem fazer qualquer tipo de agrupamento. Obrigado pela ajuda desde já.

Anderson C.

3 Respostas

A

Aceito outras sugestões também! de criação de crosstab dinamicamente com o jasper a partir de um arquivo txt, eu perguntei pelo dynamic jasper pois achei mais fácil de mexer.

A

Por favr gente, alguma idéia, jah li bastante tópicos de forum e nao encontrei nada que me ajudasse… o meu datasource seria um arquivo txt, como um .csv… separados por virgulas. Poderia trasnformar ele em collection ou em xml para fazer um crosstab a partir deste arquivo… mas como passar um xml ou collection como parametro pro jasper ou dynamic jasper via código? alguém pode me ajudar por favor? :?:

A

ninguem pode me ajudar? =/ bom no site do dynamic jasper diz…:

setDatasource(, ,  )

Where:

path to the data source: A string that points to the data source.

origin of the data source: A constant from DJConstants class which can be: SUBREPORT_DATA_SOURCE_ORIGIN_FIELD or SUBREPORT_DATA_SOURCE_ORIGIN_PARAMETER, it just tells the subreport where to look for the data source (the parameters map, or if its a property of the current row)

For example, if path to the data source is subreportDatasource and origin of the data source is SUBREPORT_DATA_SOURCE_ORIGIN_PARAMETER, then it will look in the parameters map for an object under the key of subreportDatasource, on the other hand if we pass SUBREPORT_DATA_SOURCE_ORIGIN_FIELD, in the current row, there must be a property with the name subreportDatasource that returns an object of the type DATA_SOURCE_TYPE_

type of the data source: A constant from DJConstants class, all types constants has a name like DATA_SOURCE_TYPE_, where  represents the type. Most known types are java.sql.ResultSet, Collection, Array, Xml, etc.

Bom… os argumentos estão bem explicados e td mais… e no código de exemplo do site ele passa o parametro assim:

djcross.setDatasource(“sr”,DJConstants.DATA_SOURCE_ORIGIN_PARAMETER, DJConstants.DATA_SOURCE_TYPE_COLLECTION)

montando o datasource… essa parte eu entendi, e no final do código ele fala:

//put a collection in the parameters map to be used by the crosstab
params.put(“sr”, SortUtils.sortCollection(TestRepositoryProducts.getDummyCollection(),djcross));

é aih que eu não entendi… daonde surgiu essa collection? E essa collection deve ter oq nela… pra quando vc montar as linhas e as colunas serem identificadas como? por exmeplo… aqui ele monta o que serão as linhas e as colunas e a measures:

djcross.addColumn(“State”,“state”,String.class.getName(),false)

djcross.addColumn(“Branch”,“branch”,String.class.getName(),false)

djcross.addRow(“Product Line”, “productLine”, String.class.getName(),false)

djcross.addRow(“Item”, “item”, String.class.getName(),true)

djcross.addMeasure(“amount”,Float.class.getName(), ColumnsGroupVariableOperation.SUM , “Amount”,measureStyle)

minha dúvida então é a seguinte… como passar uma collection como parametro e como ela tem q ser definida pra que eu consiga definir o que é linha, coluna e measures.

Por favor alguem pode me ajudar??

Criado 19 de junho de 2010
Ultima resposta 28 de jun. de 2010
Respostas 3
Participantes 1