Назначение. Блок «Импорт файла в электронный документ» предназначен для импорта содержимого файлов на диске в существующие или новые версии электронных документов системы DIRECTUM. При выполнении блок может импортировать содержимое только одного файла в одну версию существующего документа. Чтобы импортировать содержимое нескольких файлов, блок необходимо использовать несколько раз. Чтобы создать новый документ из файла на диске, следует использовать другие блоки типового маршрута.
Базовый блок - «Сценарий».
Свойства, унаследованные от базового блока:
Имя |
Заголовок |
Тип |
Отличия от свойств базового блока |
Name |
Наименование |
Строка (Константа) |
По умолчанию имеет значение «Импорт файла в существующий электронный документ» |
Link |
Ссылка |
Строка (Константа) |
Доступное |
Comment |
Примечание |
Строка (Константа) |
Доступное |
Script |
Вычисление |
Строка (Вычисление) |
Скрытое |
Дополнительные свойства:
Имя |
Заголовок |
Тип |
Описание |
FileName |
Имя файла |
Строка (Константа или параметр) |
Полное имя импортируемого файла. Обязательное |
EDocument |
Электронный документ |
Электронный документ (Константа или параметр) |
Документ, в который будет импортироваться файл FileName. Обязательное |
VersionNumber |
Номер версии |
Целое число (Константа или параметр) |
Номер версии документа EDocument, в которую будет импортироваться файл FileName. Если не указано или указано значение «0», то файл импортируется в новую версию документа |
Note |
Примечание |
Строка (Константа или параметр) |
Примечание к изменяемой или создаваемой версии документа EDocument. Если не указано, то примечание останется без изменений для существующей версии или будет подобрано автоматически для новой версии документа. |
Результаты выполнения. В результате выполнения блока возвращается одно из следующих значений:
Код |
Наименование |
Примечание |
I |
Успешно импортировано |
Файл FileName успешно импортирован в электронный документ EDocument |
F |
Файл не найден |
Файл, указанный в свойстве FileName, не найден |
D |
Электронный документ не определен |
Документ, указанный в свойстве EDocument, не найден (не задано свойство или документ был удален) |
B |
Электронный документ экспортирован с блокировкой |
Документ EDocument был экспортирован с блокировкой и импорт невозможен |
V |
Некорректный номер версии |
Версия документа, указанная в свойстве VersionNumber, не найдена |
A |
Электронный документ зашифрован |
Документ зашифрован, и служба Workflow не может изменять документ |
S |
Версия подписана |
Версия электронного документа, в которую была попытка импортировать содержимое файла, уже подписана и её нельзя изменить. |
Описание. При выполнении блока «Импорт файла в электронный документ» последовательно проверяются следующие условия:
· | наличие импортируемого файла FileName и документа EDocument; |
· | отсутствие шифрования электронного документа; |
· | отсутствие экспорта электронного документа с блокировкой; |
· | существование версии VersionNumber, в которую будет производиться импорт файла, если импорт производится в существующую версию; |
· | отсутствие ЭЦП на версии, в которую будет производиться импорт файла. |
В качестве имени импортируемого файла может передаваться как сетевое имя (в этом случае пользователь, от имени которого запущена служба Workflow, должен обладать правами на чтение из сетевого ресурса), так и локальное (при указании локального имени будет происходить обращение к локальным ресурсам сервера, на котором запущена служба Workflow).
Если документ нельзя изменять, так как он сейчас редактируется, то содержимое файла импортируется в документ после его освобождения. Служба Workflow будет пытаться выполнить импорт при каждой итерации обработки блока до тех пор, пока электронный документ не освободится.
Блок не проверяет формат импортируемых файлов (отсутствуют проверки на допустимые расширения файлов). Это расширяет возможности использования блока, но требует дополнительного контроля над соответствием форматов файла и документа при его использовании.
Блок не контролирует размер импортируемых файлов. Поэтому его можно использовать для импорта больших документов в файловые хранилища, но необходимо следить за размером импортируемых документов на SQL-сервер.
Если все условия выполнены, то содержимое файла импортируется в указанный документ. В случае возникновения исключительных ситуаций (ошибок) во время выполнения блока, он завершится с соответствующим результатом (см. Результаты выполнения) и содержимое файла не импортируется.
Если примечание для версии не указано и файл импортируется в существующую версию электронного документа, то примечание остается неизменным. Если примечание не указано и файл импортируется в новую версию, то автоматически формируется примечание вида «Версия N», где N – номер созданной версии.
В случае успешного импорта документа в систему DIRECTUM, автором новой версии и автором изменений при просмотре истории будет указан пользователь IS-Builder System User (System) – пользователь, от имени которого производятся изменения в системе при работе службы Workflow.