InternalStorageGuide

Материал из RunaWFE
Перейти к навигации Перейти к поиску

Внутреннее хранилище 4.4.1+

Версия 4.4.1

© 2015-2021, ООО "Процессные технологии", материалы этого документа распространяются свободно на условиях лицензии GNU FDL. RunaWFE Free является системой с открытым кодом и распространяется в соответствии с LGPL лицензией (http://www.gnu.org/licenses/lgpl.html).


# Общее описание

"Внутреннее хранилище данных" - аналог таблиц базы данных, представленных в виде Excel файлов.

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

# Обработчик хранилища данных

Для работы с внутренним хранилищем в RunaWFE Free используется специальный элемент палитры - "Хранилище данных", связанный с задачей сценарий с помощью пунктирного перехода.

Internal storage 1.png


Возможны два варианта связи: “обработчик -> иконка” как показано на рисунке выше, и “иконка -> обработчик”

Internal storage 2.png


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


Параметры обработчика:

  • выполняемое действие

При связи “обработчик -> иконка” в конфигурации доступны 3 операции: INSERT, DELETE, UPDATE. При связи “иконка -> обработчик” доступна только операция SELECT

Internal storage 8.png


  • тип данных

Здесь доступны для выбора определенные в текущем БП пользовательские типы данных с установленной опцией "Таблица БД"

Internal storage 9.png

Internal storage 10.png


  • переменная с данными для вставки (в случае действия INSERT), переменная с данными для обновления (в случае действия UPDATE)

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

  • результирующая переменная

Выходной параметр, используется только в случае действия SELECT. Здесь доступны переменная формата Список(Пользовательский тип), необходима для хранения результата выборки из хранилища данных.

# Действия с данными

INSERT

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

Internal storage 3.png


SELECT

Предназначено для чтения данных из хранилища, может быть использована с условием. Например, для выборки заявок с определенным статусом.

В качестве результата всегда возвращает список, даже если был получен только один элемент..

Internal storage 4.png


UPDATE

Предназначено для обновления переменной в хранилище. Обязательно использование условия для определения переменной, которую требуется обновить.

Internal storage 5.png


DELETE

Предназначено для удаления переменной из внутреннего хранилища. Используется с условием.

Internal storage 6.png


По клику на ссылку "Добавить условие" можно задать условия при которых выполняется чтение, обновление или удаление данных из хранилища. Условие может быть составное, с использованием логических объединений по OR или AND. Например, на рисунке ниже представлена конфигурация с действием удаления из внутреннего хранилища тех заявок, у которых тип авто соответствует типу авто заданному в переменной "Заявка.Тип авто" ИЛИ количество мест меньше значения заданного в переменной "Переменная1"

Internal storage 7.png

# Настройка и использование внутреннего хранилища данных

Каждому типу переменной с установленной опцией "Таблица БД" соответствует отдельный Excel файл. Строки соответствуют переменным, а столбцы атрибутам пользовательского типа переменной. Название файла совпадает с именем типа.

По умолчанию файлы внутреннего хранилища данных сохраняются в директорию C:\Users\<Пользователь>\AppData\Roaming\runawfe\excelstorage,

Internal storage 18.png


Путь можно изменить. Для этого необходимо импортировать с сервера в среду разработки источник данных InternalStorage

Internal storage 11.png

Internal storage 12.png


изменить путь

Internal storage 13.png


и экспортировать обратно

Internal storage 14.png

Internal storage 15.png


В web интерфейсе RunaWFE Free есть возможность

  • посмотреть путь используемый для хранения файлов внутреннего хранилища,
  • отобразить файлы внутреннего хранилища,
  • скачать excel файлы внутреннего хранилища

Для этого необходимо перейти в меню "Внутреннее хранилище" (доступен только пользователям входящим в группу Administrators)

Internal storage 16.png

Как видно из рисунка ниже, файлы внутреннего хранилища располагаются по пути C:\Users\ROMA\AppData\Roaming\runawfe\excelstorage, в хранилище расположены файлы "Заявка", "Архивная заявка" соответствующие пользовательским типам "Заявка" и "Архивная заявка". По клику на название файла будет открыта страница с просмотром его содержимого в виде таблицы.

Internal storage 17.png

По клику на имени файла в заголовке таблицы, есть возможность его загрузить.


Подробный пример разработки БП с использованием внутреннего хранилища можно посмотреть в учебных материалах RunaWFE 4.4.1. Практикум. Внутреннее хранилище данных.

Internal storage 19.png

# Рекомендации по использованию внутреннего хранилища

  • в момент выполнения обработчика, использующего одно из действий INSERT, DELETE, UPDATE, файлы внутреннего хранилища данных не должны быть открыты в системе, иначе действие не будет выполнено
  • во избежание проблем с форматом запрещается самостоятельно добавлять данные во внутреннее хранилище. Если есть необходимость использовать заранее заполненное хранилище, создайте для этого отдельный процесс, использующий соответствующий обработчик с действием (insert)
  • во время отладки БП рекомендуется останавливать ранее запущенные экземпляры процессов работающих с внутренним хранилищем,
  • во время отладки БП рекомендуется чистить файлы хранилища в случае изменения набора атрибутов или их имен в пользовательском типе используемом во внутреннем хранилище