Как установить TableModel в качестве источника данных в пустом iReport (NetBeans 7.1) - PullRequest
1 голос
/ 27 марта 2012

Я впервые создаю отчет с помощью плагина iReport в Netbeans 7.1.У меня есть все записи, которые мне нужны ( записи были сохранены в TableModel ), и я хочу, чтобы в качестве datasource он был установлен как пустой отчет.

Вот что я сделал до сих пор:

1.) У меня есть TableModel из ResultSet .(поля: StudentID, FullName, SectionName )

        private TableModel ConvertResultSetToTableModel(ResultSet rs)
        {
             TableModel tb;
             ... // codes here
             return tb;
        }

2.) Я добавил EmptyReport в свой проект. Причина, по которой он пуст, заключается в том, что я не хочу, чтобы iReport подключался к моему серверу баз данных.

Adding Empty Report

3.)мой пример отчета ( нет элегантного дизайна ).Как я могу связать или заполнить поля TableModel (поля: StudentID, FullName, SectionName ) с TextField iReport (* 1044)* $ F {StudentID}, $ F {FullName}, $ F {SectionName} )?И как я также могу напрямую установить $ F {CourseName} TextField из локальной строковой переменной?

Sample Report

Надеюсь, я все прояснил здесь.Пожалуйста помоги.Спасибо.

1 Ответ

3 голосов
/ 27 марта 2012

Это будет ответ на ваш вопрос

Отчеты Jasper предоставляют реализацию, упрощающую задачу генерации отчетов из табличных форматов в Swing. Приложения. В этой демонстрации мы будем использовать отчеты Jasper 3.6.1, Netbeans 6.1 и Ireport 3.6.1.

Попробуйте этот код

    private void generateReports(String name, Map param)
{
        try
        {
                String source = "C:/sabonay/jasperreports/" + name + ".jrxml";
                if (new File(source).exists() == false)
                {
                        xputils.showMessage("Please go to setting and Choose report Source");
                        return;
                }

                JasperReport jasperReport = JasperCompileManager.compileReport(source);
                JasperPrint jasperPrint = JasperFillManager.fillReport(jasperReport, param, new JRTableModelDataSource(tbProducts.getModel()));

                JasperViewer.viewReport(jasperPrint, false);

        }
        catch (Exception e)
        {
                e.printStackTrace();
                System.out.println("reports Error  " + e.toString());

        }
}

Для получения дополнительной информации перейдите по этой ссылке ...

...