Skip to main content

Дизайнер отчетов на основе Stimulsoft Report Js

Project description

Краткое описание

Инструмент для создания и редактирования отчетных форм на основе Stimulsoft Report Js.

Возможности

  1. Создание и редактирование отчетных форм с последующей выгрузкой их в ряд различных форматов.

  2. Возможность создания пользовательских шаблонных переменных и источников данных, а также их динамическое подключение к шаблону отчетной формы.

  3. Возможность загрузки и выгрузки шаблонов подходящего формата, подготовленных в иных редакторах.

Список доступных для выгрузки на текущий момент форматов - txt, pdf, html, xlsx, docx

Creadoc состоит из двух базовых компонентов - Designer и Viewer. Designer используется непосредственно для формирования и редактирования отчетных форм. Viewer используется для предварительного просмотра подготовленного отчета, а также предоставляет возможности отправки отчета на печать и выгрузки в указанные выше форматы.

Необходимые библиотеки

Актуальный набор требуемых для работы библиотек находится в файле REQUIREMENTS

Установка

Прописать в файле settings.py своего проекта в список INSTALLED_APPS следующие строки:

INSTALLED_APPS = [
  ...
  'south',
  'm3_mutex',
  'm3_users',
  'creadoc',
  ...
]

В случае необходимости запуска демонстрационного приложения также следует добавить следующие строки:

INSTALLED_APPS = [
  ...
  'demo.app',
  'demo.app.designer',
  'demo.app.reports',
  'demo.app.example',
  ...
]

Затем необходимо добавить ссылку на кнопку запуска дизайнера отчетных форм в нужное место своего проекта. Для запуска используется пак CreadocDesignerActionPack. Пример добавления ссылки на верхнее меню рабочего стола через файл app_meta.py:

def register_desktop_menu():
  generic_metarole = metaroles.get_metarole(GENERIC_USER)

  designer_root = DesktopShortcut(
      name=CreadocDesignerActionPack.title,
      pack=find_pack(CreadocDesignerActionPack),
      index=10
  )

  DesktopLoader.add(
      metarole=generic_metarole,
      place=DesktopLoader.TOPTOOLBAR,
      element=designer_root,
  )

После этого нужно добавить пак, использующийся для загрузки источников данных в какой-либо контроллер:

def register_actions():
    my_controller.extend_packs([
        CreadocDataSourceActionPack(),
    ])

Далее необходимо создать требуемые для работы таблицы с БД, выполнив команды

./manage.py syncdb

./manage.py migrate

С этого момента дизайнер отчетов уже доступен по добавленной нами ссылке.

Для запуска просмотрщика используется действие CreadocViewerActionPack.action_show. Чтобы вывести наш отчет в окно просмотрщика нам нужно отправить запрос на данное действие, передав обязательный параметр report_id, который должен содержать идентификатор сохраненного шаблона. Также есть возможность передать необязательный параметр params, представляющий из себя json объект. Данный объект будет передан всем подключенным к шаблону источнику данных и может использоваться для их автоматического конфигурирования.

Настройки модуля

Существует возможность дополнительной настройки отдельных компонентов модуля путем установки специфичных параметров в файле settings.py. Доступные для изменения параметры:

# Фрагмент url, по которому доступен контроллер модуля CreaDoc. Обязательный для заполнения.
CREADOC_URL = 'creadoc'
# Наименование директории в MEDIA_ROOT, в которую сохраняются шаблоны. Обязательный для заполнения
CREADOC_REPORTS_DIR = 'reports'
# Путь до директории с шаблонами
CREADOC_REPORTS_ROOT = os.path.join(MEDIA_ROOT, CREADOC_REPORTS_DIR)
# URL, по которому доступны шаблоны
CREADOC_REPORTS_URL = MEDIA_URL + CREADOC_REPORTS_DIR + '/'
# Промежутки (в миллисекундах) между запусками процедуры автосохранения.
# Сохранение производится в локальный браузерный кэш (localStorage).
CREADOC_DESIGNER_LOCAL_AUTOSAVE_TIMEOUT = 1000

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

creadoc-0.0.4.tar.gz (2.3 MB view hashes)

Uploaded Source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page