Модераторы: LSD, AntonSaburov
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Birt передача данных в отчет 
:(
    Опции темы
Veroonya
Дата 22.6.2012, 10:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 69
Регистрация: 10.10.2008
Где: Россия, Омск

Репутация: 1
Всего: 1



Требуется передать в отчет список данных для dataSet

запускаю отчет из java-приложения

Код

public File generateToFile(TargetFormat format, AccountInfo ai, HashMap<OptionsReportEnum, String> enumReportParamsValue, ServletContext sc) throws Exception {
    File outFile = AccountInfo.generateRndFileName(repFolder, this.getClass().getSimpleName(), format.getFileExt());
    
    IReportEngine engine = null;
    EngineConfig config;
    IReportRunnable design = null;
    try {
      config = new EngineConfig();
      config.setEngineHome("D:/ReportEngine");

      Platform.startup(config);
      IReportEngineFactory factory = (IReportEngineFactory)      Platform.createFactoryObject(IReportEngineFactory.EXTENSION_REPORT_ENGINE_FACTORY);
      engine = factory.createReportEngine(config);
      design = engine.openReportDesign("...");
    }
    catch (Exception e) {
      System.err.println("An error occured during the opening of the report file!");
      e.printStackTrace();
      System.exit(-1);
    }

    
    EXCELRenderOption options = new EXCELRenderOption();
    //Тут выставляем всякие опции

    task.setRenderOption(options);


    //Cross our fingers and hope everything is set
    try {

      //выставляем параметры для задачи
      setTask(task);
      //Запускаем задачу
      task.run();
    }
    catch (Exception e) {
      System.err.println("An error occured while running the report!");
      e.printStackTrace();
      System.exit(-1);
    }

    engine.destroy();
    return outFile;  
  }




Пробовала делать стандартным методом, описанным в мануалах, то есть в шаблоне задавать скрипт (это пример на действие open у dataSet):

Код

import (Packages.....)
gettingData = new ClassName();
myrows = gettingData.getRows();
itr = myrows.iterator();



НО! В классе ClassName() при выполнении метода getRows() мне требуются данные, которые можно взять ТОЛЬКО из выполняемого приложения (статичесике данные от класса-родителя),а при создании экземпляра класса в шаблоне эти данные не создаются.
Могу ли я каким либо образом передать в отчет готовый список данных (таблицу), наподобие как я передаю параметры, которую будет использовать dataSet? 

Это сообщение отредактировал(а) Veroonya - 25.6.2012, 05:50
PM MAIL ICQ   Вверх
priam220
Дата 22.6.2012, 13:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 291
Регистрация: 4.6.2010

Репутация: 7
Всего: 8



Можно прояснить что значит "(статичесике данные от класса-родителя),а при создании экземпляра класса в шаблоне эти данные не создаются"?

PM MAIL   Вверх
Veroonya
Дата 25.6.2012, 05:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 69
Регистрация: 10.10.2008
Где: Россия, Омск

Репутация: 1
Всего: 1



Это значит, что при создании класса из приложения там уже имеются некие данные (которые идут от объекта класса-родителя). А при создании класса в шаблоне, несмотря на то что шаблон запускается из приложения эти данные пустые, то есть шаблон не знает, что создан объект класса-родителя. Общий смысл этого высказывания в том, что нужно передавать данные именно из приложения, а не формировать их в шаблоне, как это указано в мануалах.
PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Java"
LSD   AntonSaburov
powerOn   tux
javastic
  • Прежде, чем задать вопрос, прочтите это!
  • Книги по Java собираются здесь.
  • Документация и ресурсы по Java находятся здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит", если у Вас нет русских шрифтов.
  • Помечайте свой вопрос как решённый, если на него получен ответ. Ссылка "Пометить как решённый" находится над первым постом.
  • Действия модераторов можно обсудить здесь.
  • FAQ раздела лежит здесь.

Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux, javastic.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Java: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0884 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.