[RESOLVIDO] IReport + varios Dataset + passar parametro [SOLUCAO NO POST]

Tenho varios dataSet, gostaria de passar 1 parametro para todos, alguem tem uma dica?

NĂŁo estou com o iReport aqui para verificar, mas nĂŁo Ă© sĂł criar um parĂąmetro do relatĂłrio e acessar esse parĂąmetro em todos os datasets normalmente nĂŁo ?

Nao. Quando vo pra fazer a query ele so aparece as variaves e parametros daquele dataset, pois cada dataset tem os seus.

tenho uns 5 dataset no meu relatorio, se eu conseguisse passar o valor pra cada um dele, ja resolveria, acredito que nao seje o ideal mais funcionaria.

bom consegui resolver


1Âș Crie um parametro na base principal! Nao esqueça de mudar o tipo do parametro no caso o meu era tipo Long. (Caso teste direto do ireport deixa a opção “Use as a prompt” se for testa direto do sistema passando o parametro ae nao precisa deixar marcado)

2Âș Crie um parametro em cada base(DataSet) do MESMO TIPO que voce na base principal e desmarque a opção “Use as a prompt”.

3Âș Vai na sua tabela ou List e clique com o botao direito e vĂĄ em “Edit table datasource”

4Âș Selecione o subDataset que deseja usar, e na Aba “Connection / DataSource Expression” verifique se a opção “Use connection expression” esta selecionada que automaticamente o valor “$P{REPORT_CONNECTION}” serĂĄ preenchida.

5Âș Ainda na mesma tela, vĂĄ na aba “Parameters” e click em “Add”, No drop voce ira selecionar o parametro que voce criou no SUBDATASET, apĂłs selecionado, a baixo em “Value expression” click no botao “Expression Editor” e ae voce procura o PARAMETRO criado no DataSet PRINCIPAL e clica nele atĂ© ele aparecer na caixa de texto.

6Âș Pronto, pode dar “Ok”, ae so pra confirma, vai aparecer tipo uma tabela contendo o nome dos dois parametros na tela DataRun na aba parameters, ae pode dar “ok” em tudo que ja vai estar funcionando.

7Âș VĂĄ no seu Sub DataSet, click com o botao direito e em “Edit Query” e utilize o parametro do jeito que vocĂȘ quiser :smiley:

Obs.: Caso tenha 10 tabelas, terĂĄ que fazer isso tudo nas 10 sempre lincando com o parametro do DATASET principal, ae Ă© so passar o valor via prompt ou pelo o sistema que voce esta criando.

vlw, penei pra descobrir isso entao para os proximos que tiverem a mesma duvida, fica a dica :smiley:

3 curtidas

[quote=Guguuu]bom consegui resolver


1Âș Crie um parametro na base principal! Nao esqueça de mudar o tipo do parametro no caso o meu era tipo Long. (Caso teste direto do ireport deixa a opção “Use as a prompt” se for testa direto do sistema passando o parametro ae nao precisa deixar marcado)

2Âș Crie um parametro em cada base(DataSet) do MESMO TIPO que voce na base principal e desmarque a opção “Use as a prompt”.

3Âș Vai na sua tabela ou List e clique com o botao direito e vĂĄ em “Edit table datasource”

4Âș Selecione o subDataset que deseja usar, e na Aba “Connection / DataSource Expression” verifique se a opção “Use connection expression” esta selecionada que automaticamente o valor “$P{REPORT_CONNECTION}” serĂĄ preenchida.

5Âș Ainda na mesma tela, vĂĄ na aba “Parameters” e click em “Add”, No drop voce ira selecionar o parametro que voce criou no SUBDATASET, apĂłs selecionado, a baixo em “Value expression” click no botao “Expression Editor” e ae voce procura o PARAMETRO criado no DataSet PRINCIPAL e clica nele atĂ© ele aparecer na caixa de texto.

6Âș Pronto, pode dar “Ok”, ae so pra confirma, vai aparecer tipo uma tabela contendo o nome dos dois parametros na tela DataRun na aba parameters, ae pode dar “ok” em tudo que ja vai estar funcionando.

7Âș VĂĄ no seu Sub DataSet, click com o botao direito e em “Edit Query” e utilize o parametro do jeito que vocĂȘ quiser :smiley:

Obs.: Caso tenha 10 tabelas, terĂĄ que fazer isso tudo nas 10 sempre lincando com o parametro do DATASET principal, ae Ă© so passar o valor via prompt ou pelo o sistema que voce esta criando.

vlw, penei pra descobrir isso entao para os proximos que tiverem a mesma duvida, fica a dica :D[/quote]

Isso me salvou!! Muito obrigado!!