iReport sem BD

10 respostas
W

Eu gostaria de saber como faço para pegar as informações em um jTextArea?
tipo assim tenho uma tela com jTextArea onde o usuário digita um monte de coisas e um botão de imprimir. tem como?

10 Respostas

O

seuTextArea.getText(); não?

W

quase. na verdade queria saber quais comandos ireport que eu poderia utilizar para pegar o jTextArea.getText(); e compliar o ireport na minha aplicação.

consegui explicar melhor?

TheKill

amigo, acho que esta confundindo as coisas.:

primeiro cortar a carne em pequenos pedaços, mastigar bem, e depois engolir pra não se afogar.

1.: monte seu relatorio como vc desejar.
se for o caso um $F com tamanho enorme para caber seu jTextArea.

2.: compile este relatório.

3.: envie da aplicação o getText do seu jTextArea().

4.: vuala. seu relatorio impresso na tela

A

acho que você quer saber como os parametros são passados…você pode passa-los em um objeto Map…

MarcosOLIVEIRA

cara coloque os seus parametros em um Hashmap

tipo assim

HashMap mapa = new HashMap();

mapa.put("parametro1", "valor")

JasperFillManager.fillReport(-------, mapa);

la no seu Ireport deve te um textField $P{parametro1}

W

MarcosOLIVEIRA:
cara coloque os seus parametros em um Hashmap

tipo assim

HashMap mapa = new HashMap();

mapa.put("parametro1", "valor")

JasperFillManager.fillReport(-------, mapa);

la no seu Ireport deve te um textField $P{parametro1}

ok. isso eu endendi. na verdade a minha ideia era colocar no ireport 4 parametros no ireport e na minha aplicação o usuário escolheria um desses 4 parametros para implimir o jTextArea. em qual das Band do ireport eu colocaria os parametros?

eu fiz algo assim:

if (linha.getText().equals("1") || coluna.getText().equals("1")){
                parametros.put("L1C1",jTextPane1.getText());
            }else if (linha.getText().equals("1") || coluna.getText().equals("2")){
                parametros.put("L1C2",jTextPane1.getText());
            }else if (linha.getText().equals("2") || coluna.getText().equals("1")){
                parametros.put("L2C1",jTextPane1.getText());
            }else if (linha.getText().equals("2") || coluna.getText().equals("2")){
                parametros.put("L2C2",jTextPane1.getText());
            }

mas ele não troca de parametro no ireport fica sempre no primeiro. alguma sugestão?

MarcosOLIVEIRA

ja tentou debuggar para ver se ele esta passando por alguma das outras linhas das condiçoes? ou sempre so passa pela primeira?

outa coisa, seria bom voce colocar um valor default nos outros fields

tipo:

if (linha.getText().equals("1") || coluna.getText().equals("1")){  
                parametros.put("L1C1", jTextPane1.getText());
                parametros.put("L1C2", "");    
                parametros.put("L2C1", "");
                parametros.put("L2C2", "");
            }.......

porque se o campo aparece “null” caso nao tenha o valor da key no map.

TheKill

pq ao invés de criar 4 parametros.

vc nao cria apenas 1???

Ou, vai haver situação em que vai enviar os 4 parametros para o relatório??
Se só é enviado 1 parametro por vez.
pode fazer 1 unico parametro.

e enviar a informação nele.

MarcosOLIVEIRA

Acho que ele preenche campos diferntes no relatorio dependendo da linha e coluna.
Se for o mesmo parametro para todos, aparecerá o mesmo resultado nos 4 campos sendo necessario somente preencher 1

W

Obrigado a todos pelas dicas e orientações. Já consegui fazer o que eu pretendia que era qdo o usuário escolhia um dos 4 jtextPane e imprimia colocando o nro de linha e coluna. o problema estava nos if’s.

Abraços a todos.
Wlademir

Criado 9 de julho de 2010
Ultima resposta 12 de jul. de 2010
Respostas 10
Participantes 5