- Общее описание
- Система типов данных
- Объявление и использование переменных
- Преобразование типов данных, функция
CAST
- Определение и импорт типов
object
- Модификация объектов (трансформация)
- Алгоритмические возможности
- Функция JSON
- Вызов скриптов по http
- Вызов внешних скриптов
- EXECUTE
script.djs
- EXECUTE
- Базы данных (mssql + pgsql + sqlite)
- REQUEST (http, web api)
- RabbitMQ
- Apache Kafka
- Программное расширение DaJet Script
Общее описание
DaJet Script - это расширяемый SQL-подобный язык программирования для организации обмена данными между узлами интеграции. Скрипты DaJet это обыкновенные текстовые файлы с расширением djs
в кодировке UTF-8
.
Узлы интеграции - это реляционные базы данных, в том числе 1С:Предприятие 8, брокеры сообщений Apache Kafka или RabbitMQ, сервисы web api и прочие источники данных.
Скрипт DaJet - это, по сути, отдельная процедура или функция. Код скрипта формируется из произвольного количества команд, которые используются средой выполнения как блоки для построения конвейера обработки и обмена данными. Имеются команды условного ветвления, циклического и параллельного выполнения кода, а также вызова внешних скриптов, что делает DaJet Script полноценным процедурным языком программирования для решения широкого круга задач.
DaJet Script является расширяемым языком программирования. Точками расширения являются пользовательские функции и процессоры данных (команда PROCESS), которые могут быть разработаны на языке C# путём реализации соответствующих классов или функций.
Средой выполнения DaJet Script является платформа Microsoft .NET 8. Выполнение скриптов DaJet может осуществляться при помощи консольной утилиты dajet, специализированного http-сервера или программно. Любой скрипт можно вызвать как web api метод http-сервера DaJet. Утилита dajet может использоваться как сервис Windows или демон Linux (поддерживается systemd) для регулярного выполнения скриптов (хостинга). Ну и, наконец, процессор скриптов DaJet предоставляет удобный API на C#, что позволяет интегрировать его практически в любую программную оболочку.