SlideShare a Scribd company logo
1 of 9
Download to read offline
Кросплатформенная подготовка и
 генерация отчетов средствами Qt
         и OpenOffice.org




Гаранин Роман, Брест
Бумажная или электронная отчетность
 — ключевой инструмент построения
          любого бизнеса


            ПРИНЯТИЕ РЕШЕНИЙ

  Бизнес                       Отчетность
Существующие системы подготовки отчетности:
●Crystal Reports
●Oracle Reports

●FastReport

●OpenOffice.org Base Report Builder

●1С:Предприятие 7.7/8.x (комплекс)

●ЕВФРАТ (комплекс)

●...etc




практически для всех из них характерны недостатки:
―Специальные знания для подготовки макета
―Специальный инструментарий (как правило проприетарный)

―Подготовкой макета практически всегда занимается

прикладной программист
―Закрытый формат хранения макетов

―Длительный этап подготовки макета

―Для некоторых комплексов: остановка целиком системы для

обновления отчетности
Один из вариантов решения:
Использование
OpenOffice.org (Calc)
и формата
OpenDocument (Open Document Spreadsheet)
для подготовки и хранения макетов
Возможные механизмы

Платформозависимые:
взаимодействие через COM/OLE/ActiveX;


Платформонезависимые:
✔   взаимодействие через UNO;
✔   правка XML структуры файла OTS/ODS
    инструментарием C++/Qt;
✔   управление генерацией через формирование макроса
    для OpenOffice.org
Инструментарий Qt




●   Развитый framework
●   GUI
●   Работа с XML (QtXml)
●   ...etc
Управление генерацией через
         формирование макроса для
              OpenOffice.org

●   Формирование макроса
●   Запись макроса в файл OTS/ODS (zip)
    посредством инструментария Qt
●   Исполнение макроса при открытии файла
●   Формирование отчета
Подготовка макета в
OpenOffice.org Calc
                               Работа с
                               готовым
    Файл                       макетом
    формата
    OTS/ODS
                      OTS/ODS + UNO + MS
                      VisualStudio
                      OTS/ODS + QtXml

                      OTS/ODS + QtXml +
                      OpenOffice.org Basic


                                 Предпросмотр,
                                 печать
                      QtWebKit + HTML +
                      OpenOffice.org Basic




  Предпросмотр,
  правка, печать

  OpenOffice.org
  Calc
      Файл
      формата ODS
OpenOffice.org Basic

More Related Content

Similar to crossplatform report generation via Qt and openoffice

Что должен уметь Linux программист
Что должен уметь Linux программистЧто должен уметь Linux программист
Что должен уметь Linux программистru_Parallels
 
линукс
линукслинукс
линуксlekiya
 
[RU] Connecting AutoCAD and Python (by Alex Bausk)
[RU] Connecting AutoCAD and Python (by Alex Bausk)[RU] Connecting AutoCAD and Python (by Alex Bausk)
[RU] Connecting AutoCAD and Python (by Alex Bausk)Alexander Bausk
 
"Оффис вне оффиса"
"Оффис вне оффиса""Оффис вне оффиса"
"Оффис вне оффиса"ANSevrukova
 
Создаем Drupal дистрибутив: от идеи до сопровождения
Создаем Drupal дистрибутив: от идеи до сопровожденияСоздаем Drupal дистрибутив: от идеи до сопровождения
Создаем Drupal дистрибутив: от идеи до сопровожденияOvadiah Myrgorod
 
Решения для пользовательского окружения (рабочие станции, почта, офисное ПО)
Решения для пользовательского окружения (рабочие станции, почта, офисное ПО)Решения для пользовательского окружения (рабочие станции, почта, офисное ПО)
Решения для пользовательского окружения (рабочие станции, почта, офисное ПО)КРОК
 
Встраивание Python в мобильные приложения – нюансы interoperation, новые подх...
Встраивание Python в мобильные приложения – нюансы interoperation, новые подх...Встраивание Python в мобильные приложения – нюансы interoperation, новые подх...
Встраивание Python в мобильные приложения – нюансы interoperation, новые подх...Anthony Marchenko
 
What's new in Visual Studio 2012
What's new in Visual Studio 2012What's new in Visual Studio 2012
What's new in Visual Studio 2012InTRUEdeR
 
О разработке десктопных приложений / About desktop development
О разработке десктопных приложений / About desktop developmentО разработке десктопных приложений / About desktop development
О разработке десктопных приложений / About desktop developmentAlexander Granin
 
Экскурс в мир WEB разработки
Экскурс в мир WEB разработкиЭкскурс в мир WEB разработки
Экскурс в мир WEB разработкиIT-Доминанта
 
Основные понятия связанные с разработкой ПО: просто о сложном. Лаабе Дмитрий.
Основные понятия связанные с разработкой ПО: просто о сложном. Лаабе Дмитрий.Основные понятия связанные с разработкой ПО: просто о сложном. Лаабе Дмитрий.
Основные понятия связанные с разработкой ПО: просто о сложном. Лаабе Дмитрий.IT-Доминанта
 
Desktop app based on node js and html5
Desktop app based on node js and html5Desktop app based on node js and html5
Desktop app based on node js and html5Provectus
 
4 особенности платформы microsoft .net для разработки корпоративных систем
4 особенности платформы microsoft .net для разработки корпоративных систем4 особенности платформы microsoft .net для разработки корпоративных систем
4 особенности платформы microsoft .net для разработки корпоративных системKewpaN
 
Реализация тестового фреймворка на основе OPEN-SOURCE инструментов
Реализация тестового фреймворка на основе OPEN-SOURCE инструментовРеализация тестового фреймворка на основе OPEN-SOURCE инструментов
Реализация тестового фреймворка на основе OPEN-SOURCE инструментовSQALab
 
Open Source Testing Framework: real project example and best practices
Open Source Testing Framework: real project example and best practicesOpen Source Testing Framework: real project example and best practices
Open Source Testing Framework: real project example and best practicesAliaksandr Ikhelis
 
введение в SharePoint
введение в SharePointвведение в SharePoint
введение в SharePointIvan Padabed
 
Платформа Docsvision
Платформа DocsvisionПлатформа Docsvision
Платформа DocsvisionDocsvision
 

Similar to crossplatform report generation via Qt and openoffice (20)

Что должен уметь Linux программист
Что должен уметь Linux программистЧто должен уметь Linux программист
Что должен уметь Linux программист
 
линукс
линукслинукс
линукс
 
[RU] Connecting AutoCAD and Python (by Alex Bausk)
[RU] Connecting AutoCAD and Python (by Alex Bausk)[RU] Connecting AutoCAD and Python (by Alex Bausk)
[RU] Connecting AutoCAD and Python (by Alex Bausk)
 
"Оффис вне оффиса"
"Оффис вне оффиса""Оффис вне оффиса"
"Оффис вне оффиса"
 
GNU/Linux и свободное ПО для компьютера
GNU/Linux и свободное ПО для компьютераGNU/Linux и свободное ПО для компьютера
GNU/Linux и свободное ПО для компьютера
 
Создаем Drupal дистрибутив: от идеи до сопровождения
Создаем Drupal дистрибутив: от идеи до сопровожденияСоздаем Drupal дистрибутив: от идеи до сопровождения
Создаем Drupal дистрибутив: от идеи до сопровождения
 
Решения для пользовательского окружения (рабочие станции, почта, офисное ПО)
Решения для пользовательского окружения (рабочие станции, почта, офисное ПО)Решения для пользовательского окружения (рабочие станции, почта, офисное ПО)
Решения для пользовательского окружения (рабочие станции, почта, офисное ПО)
 
34
3434
34
 
Встраивание Python в мобильные приложения – нюансы interoperation, новые подх...
Встраивание Python в мобильные приложения – нюансы interoperation, новые подх...Встраивание Python в мобильные приложения – нюансы interoperation, новые подх...
Встраивание Python в мобильные приложения – нюансы interoperation, новые подх...
 
What's new in Visual Studio 2012
What's new in Visual Studio 2012What's new in Visual Studio 2012
What's new in Visual Studio 2012
 
О разработке десктопных приложений / About desktop development
О разработке десктопных приложений / About desktop developmentО разработке десктопных приложений / About desktop development
О разработке десктопных приложений / About desktop development
 
Экскурс в мир WEB разработки
Экскурс в мир WEB разработкиЭкскурс в мир WEB разработки
Экскурс в мир WEB разработки
 
Основные понятия связанные с разработкой ПО: просто о сложном. Лаабе Дмитрий.
Основные понятия связанные с разработкой ПО: просто о сложном. Лаабе Дмитрий.Основные понятия связанные с разработкой ПО: просто о сложном. Лаабе Дмитрий.
Основные понятия связанные с разработкой ПО: просто о сложном. Лаабе Дмитрий.
 
Desktop app based on node js and html5
Desktop app based on node js and html5Desktop app based on node js and html5
Desktop app based on node js and html5
 
Обзор SObjectizer 5.5
Обзор SObjectizer 5.5Обзор SObjectizer 5.5
Обзор SObjectizer 5.5
 
4 особенности платформы microsoft .net для разработки корпоративных систем
4 особенности платформы microsoft .net для разработки корпоративных систем4 особенности платформы microsoft .net для разработки корпоративных систем
4 особенности платформы microsoft .net для разработки корпоративных систем
 
Реализация тестового фреймворка на основе OPEN-SOURCE инструментов
Реализация тестового фреймворка на основе OPEN-SOURCE инструментовРеализация тестового фреймворка на основе OPEN-SOURCE инструментов
Реализация тестового фреймворка на основе OPEN-SOURCE инструментов
 
Open Source Testing Framework: real project example and best practices
Open Source Testing Framework: real project example and best practicesOpen Source Testing Framework: real project example and best practices
Open Source Testing Framework: real project example and best practices
 
введение в SharePoint
введение в SharePointвведение в SharePoint
введение в SharePoint
 
Платформа Docsvision
Платформа DocsvisionПлатформа Docsvision
Платформа Docsvision
 

More from Транслируем.бел

Руководство по видео, трансляциям и премьерам (Youtube 2020)
Руководство по видео, трансляциям и премьерам (Youtube 2020)Руководство по видео, трансляциям и премьерам (Youtube 2020)
Руководство по видео, трансляциям и премьерам (Youtube 2020)Транслируем.бел
 
Корпоративный новый год онлайн
Корпоративный новый год онлайнКорпоративный новый год онлайн
Корпоративный новый год онлайнТранслируем.бел
 
Руководство для малого и среднего бизнеса по использованию цифровых решений
Руководство для малого и среднего бизнеса по использованию цифровых решенийРуководство для малого и среднего бизнеса по использованию цифровых решений
Руководство для малого и среднего бизнеса по использованию цифровых решенийТранслируем.бел
 
Онлайн-трансляции в соцсетях
Онлайн-трансляции в соцсетяхОнлайн-трансляции в соцсетях
Онлайн-трансляции в соцсетяхТранслируем.бел
 
Как организовать трансляцию в Facebook
Как организовать трансляцию в FacebookКак организовать трансляцию в Facebook
Как организовать трансляцию в FacebookТранслируем.бел
 
Что сделать, чтобы сто раз все не переделывать
Что сделать, чтобы сто раз все не переделыватьЧто сделать, чтобы сто раз все не переделывать
Что сделать, чтобы сто раз все не переделыватьТранслируем.бел
 
Когда сказать нет. Арсений Кравченко
Когда сказать нет. Арсений КравченкоКогда сказать нет. Арсений Кравченко
Когда сказать нет. Арсений КравченкоТранслируем.бел
 
SMM учебник. Как продвигать банк в социальных сетях. Наглядное пособие
SMM учебник. Как продвигать банк в социальных сетях. Наглядное пособиеSMM учебник. Как продвигать банк в социальных сетях. Наглядное пособие
SMM учебник. Как продвигать банк в социальных сетях. Наглядное пособиеТранслируем.бел
 
методы монетизации интернет проектов
методы монетизации интернет проектовметоды монетизации интернет проектов
методы монетизации интернет проектовТранслируем.бел
 

More from Транслируем.бел (20)

Медицинские трансляции
Медицинские трансляцииМедицинские трансляции
Медицинские трансляции
 
Vinteo
VinteoVinteo
Vinteo
 
Руководство по видео, трансляциям и премьерам (Youtube 2020)
Руководство по видео, трансляциям и премьерам (Youtube 2020)Руководство по видео, трансляциям и премьерам (Youtube 2020)
Руководство по видео, трансляциям и премьерам (Youtube 2020)
 
Корпоративный новый год онлайн
Корпоративный новый год онлайнКорпоративный новый год онлайн
Корпоративный новый год онлайн
 
Unofficial guide to vmix by streamgeeks
Unofficial guide to vmix by streamgeeksUnofficial guide to vmix by streamgeeks
Unofficial guide to vmix by streamgeeks
 
Руководство для малого и среднего бизнеса по использованию цифровых решений
Руководство для малого и среднего бизнеса по использованию цифровых решенийРуководство для малого и среднего бизнеса по использованию цифровых решений
Руководство для малого и среднего бизнеса по использованию цифровых решений
 
Sennheiser ew100 g2
Sennheiser ew100 g2Sennheiser ew100 g2
Sennheiser ew100 g2
 
Sony mcs 8m
Sony mcs 8mSony mcs 8m
Sony mcs 8m
 
Сравнение поколений Y и Z
Сравнение поколений Y и ZСравнение поколений Y и Z
Сравнение поколений Y и Z
 
Онлайн-трансляции в соцсетях
Онлайн-трансляции в соцсетяхОнлайн-трансляции в соцсетях
Онлайн-трансляции в соцсетях
 
Как организовать трансляцию в Facebook
Как организовать трансляцию в FacebookКак организовать трансляцию в Facebook
Как организовать трансляцию в Facebook
 
The ultimate guide to facebook live for your event
The ultimate guide to facebook live for your eventThe ultimate guide to facebook live for your event
The ultimate guide to facebook live for your event
 
Guide to facebook live
Guide to facebook liveGuide to facebook live
Guide to facebook live
 
Comdi player
Comdi playerComdi player
Comdi player
 
Что сделать, чтобы сто раз все не переделывать
Что сделать, чтобы сто раз все не переделыватьЧто сделать, чтобы сто раз все не переделывать
Что сделать, чтобы сто раз все не переделывать
 
Когда сказать нет. Арсений Кравченко
Когда сказать нет. Арсений КравченкоКогда сказать нет. Арсений Кравченко
Когда сказать нет. Арсений Кравченко
 
Marketing Essentials for Startup Teams
Marketing Essentials for Startup TeamsMarketing Essentials for Startup Teams
Marketing Essentials for Startup Teams
 
SMM учебник. Как продвигать банк в социальных сетях. Наглядное пособие
SMM учебник. Как продвигать банк в социальных сетях. Наглядное пособиеSMM учебник. Как продвигать банк в социальных сетях. Наглядное пособие
SMM учебник. Как продвигать банк в социальных сетях. Наглядное пособие
 
методы монетизации интернет проектов
методы монетизации интернет проектовметоды монетизации интернет проектов
методы монетизации интернет проектов
 
Belarus internet users discovery
Belarus internet users discoveryBelarus internet users discovery
Belarus internet users discovery
 

crossplatform report generation via Qt and openoffice

  • 1. Кросплатформенная подготовка и генерация отчетов средствами Qt и OpenOffice.org Гаранин Роман, Брест
  • 2. Бумажная или электронная отчетность — ключевой инструмент построения любого бизнеса ПРИНЯТИЕ РЕШЕНИЙ Бизнес Отчетность
  • 3. Существующие системы подготовки отчетности: ●Crystal Reports ●Oracle Reports ●FastReport ●OpenOffice.org Base Report Builder ●1С:Предприятие 7.7/8.x (комплекс) ●ЕВФРАТ (комплекс) ●...etc практически для всех из них характерны недостатки: ―Специальные знания для подготовки макета ―Специальный инструментарий (как правило проприетарный) ―Подготовкой макета практически всегда занимается прикладной программист ―Закрытый формат хранения макетов ―Длительный этап подготовки макета ―Для некоторых комплексов: остановка целиком системы для обновления отчетности
  • 4. Один из вариантов решения: Использование OpenOffice.org (Calc) и формата OpenDocument (Open Document Spreadsheet) для подготовки и хранения макетов
  • 5. Возможные механизмы Платформозависимые: взаимодействие через COM/OLE/ActiveX; Платформонезависимые: ✔ взаимодействие через UNO; ✔ правка XML структуры файла OTS/ODS инструментарием C++/Qt; ✔ управление генерацией через формирование макроса для OpenOffice.org
  • 6. Инструментарий Qt ● Развитый framework ● GUI ● Работа с XML (QtXml) ● ...etc
  • 7. Управление генерацией через формирование макроса для OpenOffice.org ● Формирование макроса ● Запись макроса в файл OTS/ODS (zip) посредством инструментария Qt ● Исполнение макроса при открытии файла ● Формирование отчета
  • 8. Подготовка макета в OpenOffice.org Calc Работа с готовым Файл макетом формата OTS/ODS OTS/ODS + UNO + MS VisualStudio OTS/ODS + QtXml OTS/ODS + QtXml + OpenOffice.org Basic Предпросмотр, печать QtWebKit + HTML + OpenOffice.org Basic Предпросмотр, правка, печать OpenOffice.org Calc Файл формата ODS