Формирование отчета в ODS (Open Office) | |
---|---|
maple4 Автор Сообщений: 210 Откуда: Москва Дата регистрации: 26.10.2007 |
Сделал программу для генерации отчетов в формате ODS (раньше было только в xml).
Естественно, с поддержкой графики. Теперь, в зависимости от формата бланка - xml или ods - формируется отчет xml для открытия в Excel или отчет в формате ods для открытия в Open Office. Осталось разобраться с xlsx ![]() Проблему с морганием DOS-окна так и не решил (создание отчета в ODS требует разархивирования и архивации в zip-файл, для работы с архивом использую 7za.exe с параметрами). Нужны мнения и советы. В архиве (486 Кб) находятся исходники программы, файл помощи readme.htm, а также программа 7za.exe. http://www.maple4.ru/a_downloads_for_maple4_ru/maple4_report_generator.zip Информация о программе на сайте (описание, примеры запуска): http://www.maple4.ru/xmlbuilder.htm Данная программа (Maple4 Report Generator, m4rg ) НЕ ЯВЛЯЕТСЯ конвертором. Это ГЕНЕРАТОР ОТЧЕТОВ по заранее созданным (в Open Office или Excel) бланкам. пример запуска для формирования отчета в ods Open Office DO start.prg WITH "test_lists_ods.ods","проба test_lists2.ods" пример запуска для формирования отчета в xml Excel DO start.prg WITH "test_lists.xml","проба test_lists2.xml" запуск start.prg без параметров - выбор бланка (ods или xml) вручную[attachment 10587 file_blank_report50_80.jpg] Исправлено 1 раз(а). Последнее : maple4, 31.08.10 14:56 ![]() |
Re: Формирование отчета в ODS (Open Office) | |
---|---|
ssa Сообщений: 13092 Откуда: Москва Дата регистрации: 23.03.2005 |
Решение для этой проблемы демонстрировалось уже не единожды в основном форуме. ------------------ Лень - это неосознанная мудрость. ![]() |
Re: Формирование отчета в ODS (Open Office) | |
---|---|
maple4 Автор Сообщений: 210 Откуда: Москва Дата регистрации: 26.10.2007 |
С проблемой "моргания" пробовал бороться, как было предложено здесь:
forum.foxclub.ru
![]() Вообще, думал пообщаться с гуру ODS/Open Office (если таковые имеются). А "Нужны мнения и советы" относилось в целом к проекту ![]() Вопросов много. Например, как сделать динамическое добавление рисунков при генерации отчета (они будут автоматом добавляться в каталог Pictures)? Размер рисунка в пикселях я определю, а вот как узнать размеры в см для размещения информации в content.xml? И какая минимальная конструкция (не вызывающая ошибок открытия файла) для размещения рисунка? Как можно определить,к какой ячейке будет относиться размещаемый рисунок? Или ячейка размещения не играет роли? В какие файлы, кроме content.xml нужно что писать (сейчас пока - ТОЛЬКО в content.xml, и файл открывается без ошибок)? Как то-же самое (как с формированием ODS) сделать в xlsx? Принцип, наверное, тот же... и все же. Хотел бы услышать: "у меня не работает тут и тут". Или наоборот. ![]() И вообще, есть ли смысл генерации в ods? ![]() |
Re: Формирование отчета в ODS (Open Office) | |
---|---|
BOBAN Сообщений: 646 Откуда: Солигорск Дата регистрации: 05.07.2004 |
|
Re: Формирование отчета в ODS (Open Office) | |
---|---|
maple4 Автор Сообщений: 210 Откуда: Москва Дата регистрации: 26.10.2007 |
немного переделав код (СПАСИБО за подсказку!)
... выложил новую версию без всплывающих окон www.maple4.ru ![]() |
Re: Формирование отчета в ODS (Open Office) | |
---|---|
Igor Korolyov Сообщений: 34580 Дата регистрации: 28.05.2002 |
Возможно это пустое предубеждение, но для такого рода компоненты я бы использовал способ запуска на основе АПИ CreateProcess... С отслеживанием кода завершения, и, конечно, тоже без всяких левых окон консоли.
------------------ WBR, Igor ![]() |
Re: Формирование отчета в ODS (Open Office) | |
---|---|
piva Сообщений: 18655 Откуда: Курган Дата регистрации: 24.03.2004 |
тем более моя прога Process.prg где-то тут и как раз на основе CreateProcess ;)
------------------ Часто бывает так, что есть над чем задуматься, а нечем. ![]() |
Re: Формирование отчета в ODS (Open Office) | |
---|---|
maple4 Автор Сообщений: 210 Откуда: Москва Дата регистрации: 26.10.2007 |
Обновлен архив программы Maple4 Report Generator
http://www.maple4.ru/a_downloads_for_maple4_ru/maple4_report_generator.zip Исправлен баг с кодировкой (при работе с ods) Оптимизирована работа с генерацией строк по условию - более быстрая работа. На листе Сальдо в каждом из бланков, в примечании ячейки в первой колонке строки detail размещено условие вставки строки в генерируемый отчет (для примера). Если услуга Интернет - вставляется блок из двух строк, выделенных цветом, иначе - одна обычная строка. P.S. Несмотря на то, что есть выбор файла xlsx - генерация по данному типу бланков не работает (все в процессе создания). Пока есть только считывание, разбор на составляющие и определение структуры отчета. Информация о программе на сайте (описание, примеры запуска): http://www.maple4.ru/xmlbuilder.htm ![]() |
Re: Формирование отчета в ODS (Open Office) | |
---|---|
maple4 Автор Сообщений: 210 Откуда: Москва Дата регистрации: 26.10.2007 |
Как меня этот xlsx... замучил... Не то слово.
Претензии к Microsoft: 1. Начну с общих формул. Ну почему не сделать так же, как с общими строками, т.е. вынести в отдельный файл? Сейчас же пока такое даже не обрабатывается - просто я не смог добиться, что бы Excel вставил общую формулу в ячейку ![]() 2. Ну зачем (тут раньше было другое слово), спрашивается, такое огромное количество файлов? Отдельные листы, отдельные примечания и т.д. и т.п. Хотя проблемы генерации файлов, как таковой, нет. Т.е. все решаемо ![]() 3. Вставка картинок. Вот это действительно проблема. Я еще даже не понял КАК это можно сделать. Поэтому, очень нужен совет тех, кто с xlsx разобрался (ну как же ods прост по сравнению с xlsx...). ICQ: 226-071-270 Может вообще "забить" на генерацию xlsx-файлов? Для пользователей Excel есть обычный xml (правда, без поддержки картинок). Кроме того, сам Microsoft Office УЖЕ поддерживает формат ODS (после установки соответствующего обновления). Или, может есть бесплатные конверторы ODS->XLSX(XLS) с запуском из коммандной строки (вот это была бы вещь ![]() P.S. Если не получится с картинками в xlsx (в принципе, остальное все готово) - даже не знаю, чего делать. ![]() |
Re: Формирование отчета в ODS (Open Office) | |
---|---|
maple4 Автор Сообщений: 210 Откуда: Москва Дата регистрации: 26.10.2007 |
Спасибо sphinx за подсказанное решение конвертации ods->xls!
forum.foxclub.ru ![]() Необходим установленный Open Office! 1. Скачивается JODConverter (последней версии, например 2.2.2) http://sourceforge.net/projects/jodconverter/files/ 2. Архив распаковывается в нужное место на диске. 3. Настройка open office для работы конвертера (у меня office находится здесь) - из строки или ярлыка - запускается 1 раз "C:\Program Files\OpenOffice.org 3\program\soffice.exe" -accept="socket,port=8100;urp;" 4. Запуск конвертации из строки или ярлыка C:\WINDOWS\system32\java.exe -jar jodconverter-cli-2.2.2.jar report_test_lists_ods.ods report_test_lists_ods.xls Через некоторое время выложу версию программы с авто-конвертацией. Выводы : а) С xlsx - завязываю (как и с docx!) - ну слишком сложный формат... для логического понимания ![]() б) Нет необходимости создания двух бланков для различных офисов! Исправлено 3 раз(а). Последнее : maple4, 15.09.10 14:08 ![]() |
© 2000-2025 Fox Club  |