Как использовать CSV в качестве источника данных в Jaspersoft Server?
Меня попросили разработать отчет, используя студию Jaspersoft для создания шаблона отчета, а затем использовать сервер jaspersoft, чтобы пользователи создавали отчет по требованию, используя данные из файла CSV вместо базы данных.
Мне удалось создать отчет локально с помощью студии, загрузить отчет на сервер, но я не могу создать отчет оттуда.
Я искал вокруг, и каждое решение, которое предлагается, состоит в том, чтобы внедрить данные в БД и затем сгенерировать отчет, используя это. Но в другом посте в сообществе jaspersoft говорится, что поддержка CSV будет добавлена к началу 2014 года, так что, я думаю, она уже есть.
Итак, я думаю, что это может это исправить:
1) Добавьте файл CSV на сервер, но как связать отчет (.jrxml) и dataAdapter (.xml)?
Прямо сейчас я загрузил его в /contentFiles/xls/energy.csv, но если я добавлю его на адаптер данных, jaspersoft не сможет его найти:
Я предполагаю, потому что нет никакого ip к серверу, таким образом, это могло бы думать, что это - локальный файл. Если я использую ip для сервера, в моем случае, http: // .,.***:8080/jasperserver/ (* по соображениям безопасности) и добавьте после этого /contentfiles/xls/energy.csv он все еще может его найти. Итак, как связать адаптер с файлом CSV на сервере?
Кроме того, поскольку этот CSV-файл будет время от времени генерироваться:
2) Есть папка, в которой я могу разместить или сгенерировать файл csv для обновления на сервере jaspersoft?
1 ответ
Есть несколько шагов, чтобы следовать, чтобы иметь основанный на файле dataAdapter
правильно развернут на сервере JasperReports. Следующие шаги были выполнены с Jaspersoft Studio 6.4.0 и JasperReports Server Pro 6.4.0.
- Предполагая, что у вас есть файл CSV в вашей рабочей области
(Я использую CsvDataSouce.txt из примера csvdatasource)
вы начинаете с создания адаптера данных из представления Repository Explorer, указывая на свой файл и устанавливая имена столбцов.
Затем вы экспортируете только что созданный адаптер в файл, щелкнув его правой кнопкой мыши и выбрав опцию " Экспорт в файл". (Я сохраняю его вместе с файлом CSV)
На этом этапе вы даже можете удалить адаптер из представления Repository Explorer и сохранить только сохраненный файл, чтобы избежать ошибок. Затем вы создаете свой отчет, выбирая dataAdapter рабочей области и продолжаете свой дизайн отчета.
Публикация отчета на сервере на этом этапе не приведет к отправке файлов dataAdapter. Необходимо указать свойство адаптера данных по умолчанию для отчета на панели свойств.
выбрав свой адаптер рабочего пространства
- Теперь вы можете опубликовать отчет на своем сервере, и мастер автоматически обнаружит дополнительные ресурсы для публикации
Убедитесь, что вы выбрали опцию Не использовать источник данных в последнем диалоговом окне.
Ваш отчет теперь связан с отчетом с сервера с таким набором свойств:
<property name="ireport.jasperserver.url" value="http://localhost:8080/jasperserver/"/> <property name="ireport.jasperserver.user" value="jasperadmin"/> <property name="ireport.jasperserver.report.resource" value="/public/CsvReport_files/main_jrxml"/> <property name="ireport.jasperserver.reportUnit" value="/public/CsvReport"/>
Вы можете продолжить работу над ним, и Jaspersoft Studio предложит вам переиздавать при каждом сохранении.
- Ваш CSV-файл теперь является ресурсом репозитория JasperReports Server, который вы можете обновлять в любое время, используя Studio или пользовательский интерфейс сервера. Если вы не хотите, чтобы он находился на стороне сервера JasperReports, вы можете просто использовать внешний URL-адрес, указывающий на ваш файл, при создании / редактировании файла dataAdapter.