Перейти к содержанию

Сервис интеграций: различия между версиями

Материал из Химсофт Вики
м Sidminik переименовал страницу Интеграции в Сервис интеграций
 
(не показано 28 промежуточных версий 2 участников)
Строка 1: Строка 1:
Описание интеграционных скриптов  WEB ЛИМС
==Общие положения==
Микросервис «Интеграция» полноценный функциональный блок в составе ВЕБ ЛИМС для исполнения произвольного кода (последовательности действий) на языке JavaScript.
 
Сервис предназначен для передачи данных от приборов аналитического контроля, программно-технических комплексов или баз данных АСУ ТП непосредственно в электронный лабораторный журнал ЛИМС или в любые другие подблоки информационной системы.
 
Модуль является неотъемлемой частью ВЕБ ЛИМС, загружается автоматически при старте, вместе с другими микросервисами и участвует в работе других справочников или журналов. Например, при работе маршрутов пробы через данный блок описываются условия перехода пробы между этапами.
 
Микросервис обеспечивает интеграцию на основе контейнера приложения Node.js, позволяющего реализовывать все возможности открытого кода, используя множество NPM-пакетов в качестве расширения функций. Также, микросервис интеграций может взаимодействовать с внешними информационными системами, другого уровня управления, в том числе через HTTP REST API.
 
Запуск js-скриптов производится в подготовленной и изолированной среде с минимальными правами доступа, что гарантирует безопасное исполнение кода и предоставляет возможность администраторам мониторить процессы исполнения отдельными подзадачами.
 
===Основные применения блока:===
* Оповещение о событиях в системе;
* Автоматизированный контроль за состоянием оборудования, стабильностью градуировочных характеристик, сообщения о приближении событий, связанных с обслуживанием оборудования;
* События об окончании срока годности реактивов, поверке, утилизации;
* Управляющие события (утверждение анализов, формирование итоговых сводок, вспомогательные работы);
* Автоматическое формирование отчетов, создание новых записей в блоках ЛИМС по расписанию;
* Списание арбитражных проб, движение пробы по этапам маршрута и т.п.
* Интеллектуальная обработки данных из текстовых файлов, .xml, .xlsx, OPC, SQL (БД сторонних разработчиков);
* Формирование итоговых XML-файлов, на основе данных из БД;
* Экспорт готовых отчетов в файлы .xlsx (CSV, DOCX и тп);
* Импорт данных из XLSX, XML, JSON и прочих файлов с известным форматом;
* Экспорт готовых отчетов в .pdf (в том числе от имени другого пользователя ОС с подписью);
* Запись данных в любые периферийные  устройства (USB, COM-порты);
* Подключение внешних БД и выполнение SQL-запросов или управляющих команд;
* Выгрузка специализированных файлов (с закрытым форматом хранения данных);
* Работа с каталогами и файлами, в том числе, с поддержкой авторизацией Active Directory, Samba, DFS;
* Публикация данных через брокер сообщений RabbitMQ;
* Вспомогательные функции, например, отправка электронных писем через протокол SMTP, логирование;
* работа с зашифрованным хранилищем данных, в том числе, взаимодействие с серверами секретов (Hashicorp Vault).
 
Комплект скриптов в составе веб-ЛИМС «Тритея» составляется по требованию Заказчика. Условия интеграции и работы описаны в договоре на адаптацию ЛИМС.
 
Важно: Для разработки скриптов микросервиса интеграции, необходимы утвержденные процедуры обмена данными (протокол взаимодействия) и адаптированная БД ЛИМС.
 
===Дополнительные возможности сервиса===  
 
Разработчики включили в основную сборку несколько базовых модулей для удобной работы с ВЕБ ЛИМС:
 
*GUI. Модуль использования графического интерфейса ЛИМС (возможно привязать к практически к любым действиям в ЛИМС); 
*MESSAGE. Модуль для оповещения или опроса через простой диалог Пользователя;
*API. Взаимодействие шаблонами через <code>API</code> со внешними системами (например, <code>ФГИС Росаккредитации</code>);
*БД. Модуль для удобной работы с базами данных, позволяющий гибко использовать все функциональности SQL.
 
==Аддоны==
 
'''Аддон''' - дополнительная самостоятельная программа, настраиваемая под различные задачи Пользователя.
 
===Виды аддонов===
*''синхронные'' - результат выполнения требуется сразу после выполнения основного действия (например, загрузка данных в справочник);
*''асинхронные'' - результат выполнения может быть отложенным (долгие операции; например, формирование большого документа).
 
===Условие применения=== 
*''синхронные'' запросы - должны отправлять HTTP запрос и ожидают ответа(например, аддон возможно выполнить при переходе пробы на следующий этап, расчёте результата измерения и т.д.).
 
*''асинхронные'' - запросы выполняются параллельно, не останавливая основной цикл программы.
 
 
===[[Примеры аддонов]]===
 
 
==WEB-chemic API==
'''WEB-chemic API''' - является частью сервиса интеграций представляет собой классы и функции для удобного взаимодействия с ЛИМС
===Функционал===
*[[Контроллеры]];
*[[JournalRecordManager]] - управление записью ЛЖ;
*[[JournalResultManager]] - управление результатами анализа.
 
 
==Советы по написанию скриптов==
*[[Общие рекомендации по написанию качественного JS-кода]]

Текущая версия от 04:44, 20 июля 2026

Общие положения

Микросервис «Интеграция» полноценный функциональный блок в составе ВЕБ ЛИМС для исполнения произвольного кода (последовательности действий) на языке JavaScript.

Сервис предназначен для передачи данных от приборов аналитического контроля, программно-технических комплексов или баз данных АСУ ТП непосредственно в электронный лабораторный журнал ЛИМС или в любые другие подблоки информационной системы.

Модуль является неотъемлемой частью ВЕБ ЛИМС, загружается автоматически при старте, вместе с другими микросервисами и участвует в работе других справочников или журналов. Например, при работе маршрутов пробы через данный блок описываются условия перехода пробы между этапами.

Микросервис обеспечивает интеграцию на основе контейнера приложения Node.js, позволяющего реализовывать все возможности открытого кода, используя множество NPM-пакетов в качестве расширения функций. Также, микросервис интеграций может взаимодействовать с внешними информационными системами, другого уровня управления, в том числе через HTTP REST API.

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

Основные применения блока:

  • Оповещение о событиях в системе;
  • Автоматизированный контроль за состоянием оборудования, стабильностью градуировочных характеристик, сообщения о приближении событий, связанных с обслуживанием оборудования;
  • События об окончании срока годности реактивов, поверке, утилизации;
  • Управляющие события (утверждение анализов, формирование итоговых сводок, вспомогательные работы);
  • Автоматическое формирование отчетов, создание новых записей в блоках ЛИМС по расписанию;
  • Списание арбитражных проб, движение пробы по этапам маршрута и т.п.
  • Интеллектуальная обработки данных из текстовых файлов, .xml, .xlsx, OPC, SQL (БД сторонних разработчиков);
  • Формирование итоговых XML-файлов, на основе данных из БД;
  • Экспорт готовых отчетов в файлы .xlsx (CSV, DOCX и тп);
  • Импорт данных из XLSX, XML, JSON и прочих файлов с известным форматом;
  • Экспорт готовых отчетов в .pdf (в том числе от имени другого пользователя ОС с подписью);
  • Запись данных в любые периферийные устройства (USB, COM-порты);
  • Подключение внешних БД и выполнение SQL-запросов или управляющих команд;
  • Выгрузка специализированных файлов (с закрытым форматом хранения данных);
  • Работа с каталогами и файлами, в том числе, с поддержкой авторизацией Active Directory, Samba, DFS;
  • Публикация данных через брокер сообщений RabbitMQ;
  • Вспомогательные функции, например, отправка электронных писем через протокол SMTP, логирование;
  • работа с зашифрованным хранилищем данных, в том числе, взаимодействие с серверами секретов (Hashicorp Vault).

Комплект скриптов в составе веб-ЛИМС «Тритея» составляется по требованию Заказчика. Условия интеграции и работы описаны в договоре на адаптацию ЛИМС.

Важно: Для разработки скриптов микросервиса интеграции, необходимы утвержденные процедуры обмена данными (протокол взаимодействия) и адаптированная БД ЛИМС.


Дополнительные возможности сервиса

Разработчики включили в основную сборку несколько базовых модулей для удобной работы с ВЕБ ЛИМС:

  • GUI. Модуль использования графического интерфейса ЛИМС (возможно привязать к практически к любым действиям в ЛИМС);
  • MESSAGE. Модуль для оповещения или опроса через простой диалог Пользователя;
  • API. Взаимодействие шаблонами через API со внешними системами (например, ФГИС Росаккредитации);
  • БД. Модуль для удобной работы с базами данных, позволяющий гибко использовать все функциональности SQL.

Аддоны

Аддон - дополнительная самостоятельная программа, настраиваемая под различные задачи Пользователя.

Виды аддонов

  • синхронные - результат выполнения требуется сразу после выполнения основного действия (например, загрузка данных в справочник);
  • асинхронные - результат выполнения может быть отложенным (долгие операции; например, формирование большого документа).

Условие применения

  • синхронные запросы - должны отправлять HTTP запрос и ожидают ответа(например, аддон возможно выполнить при переходе пробы на следующий этап, расчёте результата измерения и т.д.).
  • асинхронные - запросы выполняются параллельно, не останавливая основной цикл программы.


WEB-chemic API

WEB-chemic API - является частью сервиса интеграций представляет собой классы и функции для удобного взаимодействия с ЛИМС.

Функционал


Советы по написанию скриптов