⟵ сюдатуда ⟶
  • Выгрузка-загрузка
  • Таблица Обновления
  • Создание выгрузки
  • Таблицы циклов и таблицы внутри циклов
  • Загрузка
  • Установка на сервер
  • Системные требования
  • Процесс установки
  • Установка обновления схемы
  • Лицензии
  • Обновления, установка, выгрузки

    Для разработчиков

    Выгрузка-загрузка

    Таблица Обновления

    • Создать выгрузку — открывает окно создания выгрузки.

    • Файл загрузки — файл загрузки, который будет открыт в окне загрузки.

    • Загрузить — открывает файл загрузки в окне загрузки.

    • Дата — дата загрузки или выгрузки.

    • Типзагрузка или выгрузка.

    • Файл — файл созданный при выгрузке или обработанный при загрузке.

    • Название — название заданное при выгрузке или содержащееся в загружаемом файле.

    • Описание — описание заданное при выгрузке или содержащееся в загружаемом файле.

    • Техническое описание — автоматическое техническое описание содержащее:

      • Name таблицы.
      • Тип.
      • Версия.
      • С данными.
      • Строковые интервалы.
    • Создать по текущим настройкам — открыть окно создания выгрузки по ранее созданной выгрузке. Недоступно для загрузок.

    Обновления

    Создание выгрузки

    • Название выгрузки — название, которое будет использовано при загрузке и в таблице Обновления.

    • Описание выгрузки — свободное описание.

    • CORE: настройки полей Списка таблиц — поля Списка таблиц. Необходимы если выгрузка должна содержать обновление ядра Totum.

    • CORE: настройки полей Состава таблиц — поля Состава таблиц. Необходимы если выгрузка должна содержать обновление ядра Totum.

    • CORE: Данные Списка и Состава из Списка таблиц — данные из полей Списка таблиц по двум строкам — Список таблиц и Состав таблиц. Необходимы для загрузки обновления ядра в одном цикле загрузки с сохранением работоспособности схемы.

    • Добавить таблицы по title — добавляет в выгрузку выбранные таблицы. После этого поле обнуляется до следующего выбора.

    • Добавить таблицы по name — добавляет в выгрузку выбранные таблицы (поиск по name). После этого поле обнуляется до следующего выбора.

      Можно добавить несколько одинаковых таблиц, например для загрузки разных версий. Загружаться они будут в том порядке, в котором они указаны в этой выгрузке.

    • Таблица — name выгружаемой таблицы.

    • Тип — тип таблицы (указан в информационных целях).

    • Версия — выбор версии таблицы для Расчетных в цикле. Заблокировано для всех остальных типов таблиц.

    • Версия по умолчанию — передает в выгрузку информацию о том, что версия передаваемая в строке будет назначена версией по умолчанию. Доступно только для Расчетных в цикле.

    • Лицензия — информация о лицензии на таблицу.

    • Поля таблицы — содержимое полей в строке из Списка таблиц для выгружаемой таблицы. Можно указать информация каких полей должна содержаться в выгрузке.

    • Поля — поля таблицы (строки из Состава таблиц) добавляемые в выгрузку.

    • С данными — определяет, будет ли таблица выгружаться с содержащимися в ней данными.

      • Недоступно для временных таблиц тк они не содержат постоянно хранимых данных.

      • Недоступно для Расчетных в циклах тк их данные содержатся в выгружаемых строках таблицы циклов к которой они привязаны.

    • Данные полей — информация о том, данные каких полей будут выгружаться вместе с таблицей. Недоступно для таблиц с табличной единицей пересчета тк их данные выгружаются целиком.

    • Строчные интервалы данных — указываются как интервалы id через запятую 1-100,140-160. Недоступно для таблиц с табличной единицей пересчета тк их данные выгружаются целиком.

    • Список выгружаемых id — информационное поле, показывающее список из всех id попавших в выгрузку. Недоступно для таблиц с табличной единицей пересчета тк их данные выгружаются целиком.

    • Ключевые поля — позволяет задать поля, по которым при загрузке будет определяться совпадение строк в строчной части с уже имеющимися в ней данными. Недоступно для таблиц с табличной единицей пересчета тк их данные перезаписываются целиком.

    • Добавлять/изменять — действие, которое будет производиться с загружаемыми данными строчной части при определении их совпадения с уже имеющимися в таблице. Недоступно для таблиц с табличной единицей пересчета тк их данные перезаписываются целиком.

      • Изменять и добавлять — строки, которые определены как совпадающие на основе Ключевые поля будут обновлены, строки которые определены как несовпадающие — добавлены.

      • Только изменять — будут произведены изменения в загружаемых полях в строках, которые определены как совпадающие с уже загруженными на основе Ключевые поля. Строки, которые определены как несовпадающие добавлены не будут.

      • Только добавлять — будут произведено добавление строк, которые определены как несовпадающие с уже загруженными на основе Ключевые поля. Строки, которые определены как совпадающие редактироваться не будут.

    • Код — код в формате totum, который будет выполнен после добавления данных конкретной таблицы.

    • Дерево — информационное поле, показывающее, какая информация из дерева попадет в выгрузку и потребует соотнесения с имеющимися данными при загрузке.

    • Ссылки деревадерево может содержать ссылки на внутренние и внешние ресурсы, эта часть выгрузки позволяет отметить выгружать их или нет.

    • Роли — информационное поле, показывающее, какие роли попадают в выгрузку.

    • Категории — информационное поле, показывающее, какие категории таблиц попадают в выгрузку.

    Таблицы циклов и таблицы внутри циклов

    Если в принимающей схеме не содержится расчетных таблиц в цикле относящихся к выгружаемой таблице циклов их обязательно нужно добавить в выгрузку. Порядок в выгрузке неважен — при загрузке они автоматически будут загружены перед родительской таблицей циклов.

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

    Создание выгрузки

    Загрузка

    • Название загрузки — название, которое будет использовано при загрузке и в таблице Обновления.

    • Описание загрузки — свободное описание.

    • CORE: настройки полей Списка таблиц — поля Списка таблиц. Если есть, то подсвечиваются красным тк относятся к обновлению ядра Totum.

    • CORE: настройки полей Состава таблиц — поля Состава таблиц. Если есть, то подсвечиваются красным тк относятся к обновлению ядра Totum.

    • CORE: Данные Списка и Состава из Списка таблиц — данные из полей Списка таблиц по двум строкам — Список таблиц и Состав таблиц. Если есть, то подсвечиваются красным тк относятся к обновлению ядра Totum.

    • Роли — механизм соотнесения ролей содержащихся в загрузке и в текущей схеме.

    • Дерево — механизм соотнесения дерева содержащегося в загрузке и в текущей схеме.

    • Категории — механизм соотнесения категорий содержащихся в загрузке и в текущей схеме.

    • Обрабатывать — определяет, будет ли загружаться таблица и ее данные.

    • Таблица — name загружаемой таблицы.

    • Тип — тип таблицы (указан в информационных целях).

    • Версия — версия таблицы для Расчетных в цикле.

      Если в схеме уже есть версия загружаемой таблицы с таким названием, она будет обновлена. Если нет, то будет создана новая. Будте осторожны при переименовании версий загруженных таблиц — это может вызвать сложности при их обновлении.

    • Версия по умолчанию — передает в загрузку информацию о том, что версия передаваемая в строке будет назначена версией по умолчанию. Доступно только для Расчетных в цикле.

    • Лицензия — информация о лицензии на таблицу.

    • Возможные операции — информация о действиях которые будут произведены в схеме по загружаемой таблице:

      • Добавление — если в базе нет таблицы с загружаемым name и в загружаемом файле есть настройки загружаемой таблицы.

      • Невозможно добавить — если в базе нет таблицы с загружаемым name и в загружаемом файле нет настроек загружаемой таблицы.

      • Обновление свойств таблицы — если name совпадает и в загрузке содержаться отличные от имеющихся в схеме настройки таблицы.

      • Обновление/добавление полей — совпадает name таблицы и в загрузке есть настройки полей.

      • Добавление/обновление данных — если загружаемая таблица содержит данные.

      • Несовпадает лицензиця — ошибка лицензии.

    • Настройки таблицы — содержимое полей в строке из Списка таблиц для загружаемой таблицы. Можно указать информация каких полей должна быть загружена.

    • Поля — поля таблицы (строки из Состава таблиц) добавляемые при загрузке. Показываются по name.

    • С данными — определяет, будет ли таблица загружаться с содержащимися в ней данными. Доступно, только если данные по загружаемой таблице были добавлены при выгрузке.

    • Данные полей — информация о том, данные каких полей будут загружаться вместе с таблицей. Недоступно для таблиц с табличной единицей пересчета тк их данные загружаются целиком.

      При загрузке данных таблиц с табличной единицей пересчета они автоматически не пересчитываются.

    • Ключевые поля — позволяет задать поля, по которым при загрузке будет определяться совпадение строк в строчной части с уже имеющимися в ней данными. Недоступно для таблиц с табличной единицей пересчета тк их данные перезаписываются целиком.

    • Добавлять/изменять — действие, которое будет производиться с загружаемыми данными строчной части при определении их совпадения с уже имеющимися в таблице. Недоступно для таблиц с табличной единицей пересчета тк их данные перезаписываются целиком.

      • Изменять и добавлять — строки, которые определены как совпадающие на основе Ключевые поля будут обновлены, строки которые определены как несовпадающие — добавлены.

      • Только изменять — будут произведены изменения в загружаемых полях в строках, которые определены как совпадающие с уже загруженными на основе Ключевые поля. Строки, которые определены как несовпадающие добавлены не будут.

      • Только добавлять — будут произведено добавление строк, которые определены как несовпадающие с уже загруженными на основе Ключевые поля. Строки, которые определены как совпадающие редактироваться не будут.

    • Код — код в формате totum, который будет выполнен после добавления данных конкретной таблицы.

    Загрузка

    Установка на сервер

    Системные требования

    PHP 7.3 как модуль Apache (CGI) или PHP-FPM. Так же 7.3 должен быть подключен для консоли.

    Инструкция по настройке правил NGINX будет чуть позже.

    Модули PHP:

    • pgsql

    • pdo_pgsql

    • pdo

    • bcmath

    • json

    • ioncube

    • curl

    • zip

    • opcache (по желанию, ускоряет работу)

    • soap

    PostgreSQL не ниже 9.5

    Требования по производительности зависят от конструкции конкретного решения, но общий принцип следующий:

    Totum потребляет мало оперативной памяти, но чувствителен к тактовой частоте процессора.

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

    Для большинства решений достаточно CPU с частотой 2.4 - 2.6 Ггц.

    Для решений с большими группами (10-20) расчетных таблиц — CPU с 5.0 ГГц будет являться преимуществом.

    Процесс установки

    Для установки Totum вам необходимо скопировать установочные файлы на сервер и направить домен в папку http.

    Файлы

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

    • Пользователь базы данных PostgreSQL — логин/пароль пользователя базы данных, в которой будет сконфигурирован Totum.

    • База данных PostgreSQL — данные базы данных:

      • Host базы — localhost, либо хост подключения. Можно посмотреть в настройках БД на сервере или узнать у техподдержки хостинга.

      • Имя базы — имя базы, созданной на сервере под установку Totum.

      • Схема — произвольное название схемы, которого еще нет в базе.

    • Путь к утилитам Postgres на сервере — если на сервере установлена только одна версия postgres, то скорее всего они могут быть указаны как команды консоли pg_dump и psql. Если установлено несколько баз — уточните у техподдержки хостинга путь к сервисам для конкретной версии базы.

    • Создать пользователя с полным доступом — логин/пароль пользователя, который будет создан в разворачиваемой базе с назначенной ролью Создатель.

    Установщик

    После установки необходимо подключить кроны:

    0 * * * *       cd $HOME/адрес папки относительно домашней директории/Crons && php -f cleanTmp.php >/dev/null 2>&1
    
    */10 * * * *    cd $HOME/адрес папки относительно домашней директории/Crons && php -f every10minutes.php
    

    Установка обновления схемы

    Лицензии

    ⟵ сюда туда ⟶