Jetcalc Save

JetCalc - облачная платформа экономического моделирования с системой обратной связи

Project README

JetCalc - облачная платформа экономического моделирования с системой обратной связи

Назначение JetCalc

JetCalc - облачная платформа экономического моделирования с системой обратной связи, предназначенная для сбора и консолидации управленческой отчетности, бюджетирования и финансово-экономического анализа. Номер регистрации в Федеральном институте промышленной собственности (ФИПС) - 2020611655 от 06.02.2020 г.

Веб-интерфейс JetCalc

Характеристики JetCalc

  • высокопроизводительная масштабируемая облачная технология с гибкой настройкой прав доступа к пользовательским данным
  • экономическое моделирование с помощью встроенного языка контекстно-зависимых формул без участия программистов
  • обновление экономических моделей, консолидация данных и формирование отчетности в режиме реального времени
  • гибкие механизмов верификации вводимых данных
  • развитые инструменты визуализации данных
  • настраиваемые инструменты обратной связи и контроля исполнительской дисциплины
  • распространение программного кода JetCalc под лицензий MIT

Реализация в JetCalc обратной связи

  • запись действий каждого пользователя по заполнению документов и изменению их статуса
  • увязка изменения статуса документа с верификацией вводимых данных
  • пользовательские инструкции по заполнению форм ввода и анализу данных
  • контекстно-зависимый чат для обсуждения рабочих вопросов
  • широковещательные объявления с подтверждением прочтения

Способы установки JetCalc

В зависимости от целей и технических возможностей серверную часть JetCalc можно установить:

  • на облачном хостинге VDS
  • на выделенном сервере в локальной сети
  • на локальном компьютере в виртуальной машине VirtualBox

Серверная часть JetCalc работает под управлением операционной системы Linux Ubuntu Server версии 16.04 или более высокой.

Клиентская часть JetCalc может выполняться на любой платформе в любом современном веб-браузере, хотя предпочтительным является браузер на движке V8, например Google Chrome или Яндекс.Браузер.

Порядок установки и первоначальной настройки описан в главе 11. Установка JetCalc Руководства пользователя JetCalc.

Требования к оборудованию

Для развертывания и промышленной эксплуатации JetCalc в облаке достаточно 4-х ядерного процессора, 8 Гб оперативной памяти и 25 Гб диска SSD (стоимость VDS-хостинга с такими параметрами на NetAngels составляет около 1600 рублей в месяц).

Для тестирования возможностей JetCalc в облаке достаточно 2-х ядерного процессора, 2 Гб оперативной памяти и 10 Гб диска SSD (стоимость VDS-хостинга с такими параметрами на NetAngels составляет около 600 рублей в месяц).

Для комфортной работы в браузере одновременно с другими открытыми приложениями рекомендуется не менее 8 Гб оперативной памяти.

Серверная часть кода

NGINX

Статические файлы системы отдаются через веб-сервер NGINX . Файлы, расположенные в папке static и папках модулей, доступны из браузера, а все вызовы, начинающиеся с префикса /api/, передаются на обработку в Node.js.

Node.js

Весь серверный код выполняется на сервере Node.js посредством библиотеки Express. Для работы с датами испльзуется библиотека Moment.js. Для оптимизации и сокращения количества кода используются функциональные возможности библиотеки Lodash. Для того, чтобы избежать больших количеств вложенных функций (callback hell), применяется библиотека Async. В системе принципиально не используются Promise (но это может не остановить сторонних разработчиков).

PostgreSQL

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

MongoDB

В MongoDB хранится вся информация приложения о всех настройках предметной области. Взаимодействие приложения c MongoDB осущесвляется посредством расширения Mongoose.

Redis

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

Клиентская часть кода

Клиентская часть реализована в виде модульного одностраничного приложения на JavaScript, в которой применяются те же Lodash, Moment.js и Async.

При проектировании работы подключаемого модуля следует учитывать, что если модуль требует тяжеловесных сторонних библиотек, то их можно подгружать при необходимости с помощью RequireJS. Хороший пример - модуль построения графиков (chart), который подгружает большие библиотеки C3 и D3 только когда пользователь находится на странице в графиками.

В клиентском коде для привязки данных применяется библиотека Knockout.

В системе подключается библиотека jQuery, хотя в большинстве случаев она не не используется напрямую, особенно с завязыванием на атрибут id элемента. Эти задачи решаются через custom binding.

Для верстки системы используется Bootstrap.

Дополнительные ресурсы

Более подробно о назначении системы JetCalc можно узнать на сайте www.jetcalc.ru, на котором размещены различные методические материалы по настройке и эффективному использованию JetCalc в практической деятельности финансово-экономических подразделений.

На GitBook разрабатывается документация по JetCalc. Приветствуются любые замечания и предложения по документации, которые можно высылать на почту [email protected].

По адресу demo.jetcalc.ru доступна демо-версия финансового анализа на JetCalc, а по адресу metal.jetcalc.ru размещена демонстрационная модель калькулирования себестоимости в черной металлургии. С логином demo и паролем demo доступен вход только по чтению для предварительного знакомства с пользовательским интерфейсом. Чтобы получить расширенный доступ, необходимо зарегистрироваться в демо-версии JetCalc, выбрав пункт Регистрация на странице ввода логина и пароля.

Координация деятельности экономистов и программистов, участвующих в развитии проекта, осуществляется на хостинге компании JetBrains в трекере YouTrack на странице leossnet.myjetbrains.com/youtrack

Open Source Agenda is not affiliated with "Jetcalc" Project. README Source: leossnet/jetcalc
Stars
27
Open Issues
1
Last Commit
3 years ago
Repository
License
MIT

Open Source Agenda Badge

Open Source Agenda Rating