Группа проектов платформы приложений DCL5.
Описание
Общее
DCL5 представляет собой, простую платформу приложений, однако не настолько как у конкурентов, платформа позволяет создавать приложения работающие с базой данной. Платформа строит визуальный интерфейс по определëнной схеме, наиболее подходящей для приложений работающих с базами данных. Для построения визуальных форм используется свой язык разметки. Так же есть скрипты для исполнения бизнес-логики, в них поддерживаются условные конструкции, циклы, оперирование данными и частично, визуальным интерфейсом. Визуальный интерфейс не требует специальной расстановки компонентов, как это принято в классических средах визуального программирования, за Вас это сделает сама платформа. Конечно же, для вызова хотя бы заглавных диалогов, требуется главное меню приложения, и оно тоже есть, можно построить пятиуровневое меню, из которого вызываются диалоги. В платформе используется разветвлëнная система прав, с помощью которой можно разграничить меню приложения. Так же можно вплести разграничения по правам в логику конфигурации. Для построения отчëтов, в платформе предусмотрена интеграция с двумя офисными пакетами, можно строить как табличные, так и тестовые ответы. Так же есть просто текстовые ответы, в виде простых текстовых файлов. С помощью них всех, можно построить довольно сложные ответы, использую шаблоны документов. Запуск платформы возможен на практически всех десктопных ОС.
Для написания собственно конфигурации имеется специальная утилита. С помощью неë производится запись конфигурации в базу. Сама конфигурация пишется программистом и сохраняется в файловую структуру определенной структуры. Так можно создать все объекты конфигурации.
С помощью этой утилиты, она называется Четверг, конфигурация так же может быть выгружена в дерево файловой структуры. Конфигурация состоит из дерева папок и человеко-читаемых файлов, они затем могут быть загружены в систему контроля версий. Так же есть консольный вариант этой утилиты, он имеет не весь функционал графического приложения.
Для разработки и управления конфигурацией есть среда разработки, Пятница, она позволяет вести разработку конфигурации как единого целого. Она имеет подсветку синтаксиса скриптов. Поиск объектов конфигурации и их зависимостей, автономный запуск, без записи в конфигурацию и многое другое. Для её работы не нужно подключение к БД с конфигурацией. Так же для её работы нужна утилита коммандной строки работы с конфигурацией, Чёрный вторник.
Для выбора запуска из различных конфигураций, может быть использована утилита запуска.
Для развёртывания приложения требуется создать структуру таблиц конфигурации и записать саму конфигурацию (данные). Теоретически платформа может работать с любой СУБД, но пока уверенная работа гарантирована с СУБД Firebird 3.0 и выше.
Посмотреть пример того как построить минимальную конфигурацию можно так же в этой группе. За более подробным руководством по языку, следует обратиться к документации. За примерами в формате “Как это сделать?” и видео работы, к этому репозиторию.
Для написания скриптов конфигурации используется не обычный язык программирования как вы все привыкли. Структура языка DCL5 по структуре похожа скорее на какое то декларативное описание КлючевоеСлово=Щначение;Директива=значение;ЕщёДиректива;
Отличительной особенностью платформы является наличие пакетов. Пакеты это набор скриптов конфигурации, элементов меню и SQL скриптов. С помощью пакета можно расширить функционал конфигурации, загрузив его локально на время работы программы. Ещё, если разрешено, из пакета можно произвести обновление конфигурации. Для создания пакетов и обновления из пакетов, существуют соответствующие права пользователей. Пакеты, физически, представляет из себя текстовый файл определённой структуры, сжатый и кодированный по алгоритму Base41.
Платформа делалась как средство для создания “ИС на переферии”. Теперь ещё тут есть обновление из пакета, на которое не повлиять и которое контролирует, если требуется, установлены ли необходимые зависимые обновления.
Платформу можно снабдить защитой с ключами ограниченного срока действия. Достаточно собрать её с соответствующим флагом и для генерации ключей использовать утилиту регистрации или её web-версию.
Вспомогательные элементы управления просматриваемым набором данных
В Платформе есть много различных вариантов фильтрации и поиска данных и упорядочивания по отдельным колонкам. Все эти компоненты работают либо без какой либо настройки, либо с минимальным описанием. Платформа сама разбирает запросы и добавляет (а потом отнимает) условия из основного SQL запроса.
Компоненты для отображения полей НД
Кроме базовых компонентов для отображения и редактирования полей, есть ещё т.н. расширенные компоненты, они могут быть связаны с переменными двухсторонней связью, быть совсем не подключены к НД, иметь фильтр ввода и формат отображения. Каждый компонент прописывается в разметке диалога отдельно.
Другим способом отображения данных из построенного набора данных (НД) является таблица. Здесь меньше способов как то изменить отображаемые поля, можно только принудительно установить тип отображения Переключатель.
Подсистема хранения настроек
В платформе есть подсистема позволяющая сохранять различные значения в виде: Название значение; СимвольныйКлюч; Значение (строка). В языке системы так же есть функции для записи и получения значений из хранилища.