Для команд из двух-трех человек, фрилансеров и интеграторов 💪 👀
Totum упрощает разработку нишевых ERP, XRM, CRM и других управленческих инструментов. Подходит небольшим интеграторам и начинающим разработчикам для превращения бизнес-опыта в готовые решения. Используйте Totum для конечных продуктов или быстрого прототипирования.
Один конструктор — множество вариантов применения
Собирайте данные ⟶ Обрабатывайте ⟶ Выполняйте действия ⟶ Создавайте отчеты
Графики на основе chart.js.
Вы можете настраивать отображаемые данные и вид.
Возможны комбинированные отображения с двумя разными осями по Y.
Самое универсальное поле.
Хранит строковое значение любой длины.
При сравнениях Строки в виде чисел сравниваются с числами как числа.
Хранит целое или десятичное число до 10 знаков после запятой.
Для отображения может использовать автоматическую единицу измерения и настраиваемые разделители для тысячных и десятичных.
Имеет настраиваемое автоматическое округление вводимого значения в том числе с заданным шагом.
Выпадающие списки.
Создаются вручную или автоматически на основе другой таблицы.
Подключаются превью и секции.
Есть поиск по значениям.
Могут быть сформированы кодом по условиям.
= : selectRowListForSelect(table: 'chairs'; field: 'name'; where: 'id' != 6; order: 'id' asc; section: 'type'; preview: 'img')
Сворачивающиеся иерархические списки.
Поиск значений.
Одинарный и множественный выбор.
Настраиваемый запрет на выбор папок.
Классический чекбокс.
В кодах true
и false
.
Дата
или Дата + время
.
Можно выбрать в выпадающем окне или ввести вручную.
totum-code
имеет несколько инструментов для обработки дат.
Например, вычисление даты последнего дня текущего месяца:
= : dateAdd(date: $fd; days: $days; format: "Y-m-d")
days: dateFormat(date: $fd; format: "t") - 1
~fd: dateFormat(date: $#nd; format: "Y-m-01")
Кнопки, для выполнения запрограммированных действий.
Автоматическая защита от множественного нажатия.
Возможность нажать кнопку программными методами.
Большие тексты с форматированием.
Можно настроить подсветку синтаксиса и ограничить объем текста передаваемый в браузер.
Для редактирования открывается во всплывающем окне.
Ситуативные комментарии.
Показывают кто и когда оставил заметку.
Есть подсветка непрочитанных^ индивидуальная для каждого пользователя.
Один или несколько файлов.
Автоматическое добавление хэша к пути, для усложнения подбора имени.
Превью для .png
и .jpg
Пароль в скрытом виде.
Хранится в md5
.
Не логгируется при изменении.
Данные в формате JSON.
Редактируются во всплывающем окне через jsoneditor.
Данные могут быть быстро получены с любого уровня вложенной структуры:
= : #json_field[data][datasets][0][borderColor]
// Результат: blue
Используйте единую настройку адаптивности под настольный компьютер и мобильные устройства.
Вам не нужно знать CSS/GRID/FLEX
для того, что бы сделать понятный, адаптивный интерфейс на Totum.
Огромный набор вариантов обеспечивает одна функция и несколько параметров.
Ваша решение будет выглядеть аккуратно на всех ширинах экранов.
Открывайте таблицы с необходимой фильтрацией для показа проваливания в данные
.
Используйте шаблоны таблиц для заполнения их ситуативными данными.
Показывайте внешние ресурсы в iframe
.
Выбирайте тип показа iframe
, self
, blank
, top
.
Автоматически обновляйте родительскую таблицу при закрытии окна.
Автоматически закрывайте окно при успешном завершении выполнения действия.
Контекстное меню для всех полей.
Полное значение поля.
Автоматически генерируемая дополнительная информация для выпадающих списков.
Картинки и текст расчитываемые при показе контекстного меню.
Размещение в контекстном меню дополнительных кнопок.
Разделение полей на сворачивающиеся секции.
Распределение полей по группам.
Управление заливкой и обводкой для групп.
Динамическая подстройка ширин полей под размеры экрана и автоматическое выравнивание.
Управление точками переноса полей.
Указание относительных высот для групп.
Скрытие заголовков и обводок полей.
Встроенные нотификации.
Приоритет показа и даты активности.
Групповые действия.
Расширенные нотификации (карточки звонков, заказов, клиентов и т.д...)
Всплывающая панель ввода.
Срабатывание на enter
.
Выполнение произвольного действия.
Настраиваемое HTML-содержимое.
Автоматическая активация по триггеру.
Настройка текста кнопки подтверждения.
Множественный ввод значений.
Относительные изменения для числовых
полей.
Копирование значений в буфер.
Блокировка одновременного изменения нескольких колонок.
Сортировки по отображаемым строкам.
Сохраняемый ручной
порядок сортировки строк.
Фильтры по нескольким колонкам.
Поиск и инвертация значений в фильтрах.
Фильтрация по ручным
значениям в полях.
Разработка и эксплуатация ведутся в одной среде. Таблицы, поля и их настройки создаются и управляются мышкой. Логика пишется кодом.
Разработчик может моментально скрыть UI-элементы разработчика, что бы понять как решение выглядит у пользователя или переключится в конкретного пользователя и выполнить от него действие.
Totum написан на PHP
, но внутри программируется собственным языком — totum-кодом
. Он упрощает разработку для новичков.
Разработчику на Totum не нужно знать SQL
— вызов и запись данных тоже осуществляется на totum-коде
.
В большинстве полей коды маленькие — до 5-10 строк.
Totum обеспечивает подсветку, поиск и подстановку адресов таблиц и полей, переменных и функций, а также автозаполняет параметры функций.
Сделано это на основе Codemirror
.
Коды привязаны к полям и разделенны по типам действия:
— Одни коды вычисляют значение аналогично формуле Excel
.
— Другие, следят за триггерами изменений и если они сработали, выполняют написанные в них действия.
— Третий тип кодов отвечает за внешний вид полей в зависимости от набора данных.
= : listSum(list: $list) + #fixed_costs
list: selectList(table: 'orders'; field: 'cost'; where: 'number' = $listNumbers)
listNumbers: selectList(table: 'orders'; field: 'number'; where: 'date' >= #first_day_months; where: 'orderStatus' = #final_status)
С такими кодами вы сможете реализовать сложную логику, даже с начальными навыками программирования — расчет, действия, форматирование и запросы к данным выполняются однотипным образом. Забудте про запутанные схемы BPMS-систем.
Благодаря PHP
, ваша ошибка при разработке не приведет к обрушению всего сервера. А встроенные инструменты отладки и тестирования помогут вам вносить изменения в работающие проекты на лету.
Totum не использует фреймворки, легковесен и может успешно работать на серверах среднего и эконом класса.
В качестве базы данных Totum использует PostgreSQL
.
Все действия выстраиваются в цепочки. Если в процессе выполнения цепочки сработала отмена или произошла ошибка — вся цепочка будет отменена.
Таким же образом обеспечивается согласованность данных при одновременной работе. Если два пользователя одновременно внесли изменение в одну и ту же таблицу, то действие, сохраняемое вторым, будет автоматически перезапущено или отменено.
Настраивайте разрешения на видимость
, добавление
, изменение
, удаление
, дублирование
и доступ к логам
по ролям
.
Отслеживайте авторизации и действия пользователей.
Всегда известно, кто совершил то или иное действие.
Для большей безопасности для пользователей API настраивается собственный доступ.
Просто не тратьте на это время и все...
Открытое и настраиваемое API позволяет обмениваться данными с любыми системами как на вход, так и на выход.
Обменивайтесь данными с Totum через POST
в формате JSON
.
Инициируйте обращение к стороннему серверу непосредственно из totum-кода
.
Напишите свой микросервис на totum-code
отвечающий на GET/POST
запросы.
Вы легко сможете подключить к Totum ваш сайт или мобильное приложение.
Весь код открыт, свободно-модифицируем и соответсвует PSR-1
, PSR-2
, PSR-3
, PSR-4
, PSR-7
.
Быстро интегрируйте собственные функции или вызывайте любые скрипты через ssh
непосредственно из totum-code
:
example: execSSH(ssh: "python ./python_script"; vars: $vars)
vars: rowCreate(field: "key_1" = "value_1"; field: "key_2" = "value_2")
// В ssh будет выполнена команда $ python ./python_script key_1='value_1' key_2='value_2'
// Результат будет возвращен в example
Если вам потребуется специальный модуль с собственным интерфейсом — положите его папку в ./totum/moduls/
, он сможет использовать все возможности Totum.
Скачать PDF по разработке модулей и интерфейсов
Обслуживайте несколько схем для разных клиентов на одном сервере.
Используйте поставляемый в комплекте консольный bin/totum
для установки, дублирования, создания новых схем и обновлений:
Простая установка с git
:
git clone https://github.com/totumonline/totum-mit.git
cd totum-mit
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php composer-setup.php --quiet
rm composer-setup.php
php composer.phar install --no-dev
bin/totum list
Мы выполняем работы по разработке конечных решений для бизнеса. Сами и при помощи партнеров-интеграторов. Бюджетная вилка на разработку 150К—1М р. Для оценки стоимости проекта потребуется его описание в .xlsx, .doc или облаке.