Различия

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

Ссылка на это сравнение

ru:start:filestore [2016/07/01 18:26] (текущий)
admin создано
Строка 1: Строка 1:
 +===== Хранилище файлов =====
  
 +Начиная с версии 600.0801 реализована функция временного хранилища файлов. Вам больше не нужно сохранять файл в модуле Документы,​ если он нужен только для одной задачи.
 +
 +Файлы хранятся в Локальных переменных выполняемого экземпляра Бизнес-Процесса. Это значит,​ что все временные файлы будут удалены после завершения Бизнес-Процесса.
 +
 +Хранилище файлов работает по принципу ассоциативного массива. Каждый файл имеет свой ID в хранилище файлов. Например,​ можно создать файл и сохранить его в хранилище с ID “file_xyz”.
 +
 +Любая Задача во время текущего выполнения,​ если она поддерживает чтение файлов из хранилища,​ может открыть файл с ID “file_xyz”.
 +==== Разработчикам ====
 +
 +Если вы хотите использовать хранилище файлов в собственных Задачах,​ используйте следующий интерфейс класса \Workflow\VTEntity,​ доступный ​
 +через переменную $context. \\
 +
 +Чтобы сохранить файл в хранилище файлов:​
 +
 +<​Code>​$context->​addTempFile($filepath,​ $filestoreid,​ $filename);</​Code>​
 +
 +Параметр
 +
 +<​html>​
 +<table border="​1"​ width="​100%">​
 +<tr>
 +<td style="​padding:​5px;​background-color:#​D8D8D8;">​$filepath</​td>​
 +<td style="​padding:​5px;">​Строка</​td>​
 +<td style="​padding:​5px;">​Временный путь к файлу, который вы хотите поместить в хранилище. Этот файл будет перемещен в главную директорию временных файлов Дизайнера Бизнес-Процессов</​td>​
 +  </tr>
 +<tr>
 +<td style="​padding:​5px;​background-color:#​D8D8D8;">​$filestoreid</​td>​
 +<td style="​padding:​5px;">​Строка</​td>​
 +<td style="​padding:​5px;">​ID,​ который вы хотите использовать для идентификации файла</​td>​
 +</tr>
 +<tr>
 +<td style="​padding:​5px;​background-color:#​D8D8D8;">​$filename</​td>​
 +<td style="​padding:​5px;">​Строка</​td>​
 +<td style="​padding:​5px;">​Имя файла</​td>​
 +</tr>
 +</​table>​
 +</​html>​
 +
 +Для того, чтобы загрузить файл из хранилища файлов:​
 +<​Code>​$file = $context->​getTempFiles($filestoreid);</​Code>​
 +
 +Параметр
 +
 +<​html>​
 +<table border="​1"​ width="​100%">​
 +<tr>
 +<td style="​padding:​5px;​background-color:#​D8D8D8;">​$filestoreid</​td>​
 +<td style="​padding:​5px;">​Строка</​td>​
 +<td style="​padding:​5px;">​ID файла, который вы хотите загрузить</​td>​
 +  </tr>
 +</​table>​
 +</​html>​
 +
 +Возвращает
 +
 +<​Code>​
 +array(
 +   "​path"​ => <​абсолютный путь к файлу>,​
 +   "​name"​ => <​название файла, которое вы задали в функции addTempFile()>​
 +)
 +</​Code>​