Boa tarde para todos,
Estou iniciando no JaspeReport e usando iReport.
Estou tendo dificuldade para criar relatórios onde o usuário tenha que passar parametros.
Tipo: Relação de todos os funcionários que nascerão numa determinada data.
alguém tenha algum exemplo pra me auxiliar.
Obigado.
Divino.
da uma olhada aqui, é um tutorial interessante , vale a pena vc dar uma olhada!
Obrigado Brossi,
Mas estou um pouco além deste tutorial.
Fui encarregado de estudar essa parte que envolve relatórios.
Estou bem encaminhado até o ponto onde gera os relatórios.
Mas quero algo mais genérico, algo que facilite a vida do desenvolvedor.
Usando Jasperreports 0.6,4 estou tendo o seguinte problema:
Quero fazer reflexão de atributos de classes e depois compará-los antes de mover para um array bidimensional.
Muito obrigado.
Divino Sérgio Mendes
Exemplo o código:
package datasource;
import javax.swing.table.;
import java.lang.reflect.;
import attweb.finan.Caixa;
import java.math.BigDecimal;
import java.util.Vector;
public class CustomTableModel2 extends AbstractTableModel{
private String[] columnNames;
private Object[][] data ;
private Caixa caixa = null;
public CustomTableModel2(BigDecimal empresaId) throws Exception {
Vector vCaixa = Caixa.recuperaCaixasPorEmpresa(empresaId);
caixa = new Caixa();
Class classCaixa = caixa.getClass();
Field[] camposCaixa = classCaixa.getDeclaredFields();
columnNames = new String[camposCaixa.length];
for (int i = 0; i < camposCaixa.length ; i++) {
columnNames[i] = camposCaixa[i].getName();
}
data = new Object[vCaixa.size()][columnNames.length] ;
for (int i=0; i < vCaixa.size(); i++) {
caixa = (Caixa) vCaixa.elementAt(i);
for (int j=0; j < columnNames.length; j++) {
Method g = caixa.getClass().getMethod(this.buildGetMethodName(camposCaixa[j].getName()), null);
//if (g.equals())
// NÃO ESTOU CONSEGUINDDO SAIR DAQUI.
data[i][j] = caixa.getCaixaId();
data[i][5] = caixa.getDescricao();
}
}
}
private String buildGetMethodName(String attrName){return "get" + attrName.substring(0, 1).toUpperCase() + attrName.substring(1, attrName.length());}
public int getColumnCount() {
return this.columnNames.length;
}
public String getColumnName(int columnIndex) {
return this.columnNames[columnIndex];
}
public int getRowCount() {
return this.data.length;
}
public Object getValueAt(int rowIndex, int columnIndex) {
return this.data[rowIndex][columnIndex];
}
}