Различия
Здесь показаны различия между двумя версиями данной страницы.
— |
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> |