Модуль ввода из файловой системы предназначен для захвата документов, поступающих из файловой системы.
Ввод документов из файловой системы представлен на схеме:

Алгоритм работы модуля ввода из файловой системы:
1. | В папку на диске или в ее вложенные папки поступает файл. Если папку с файлом не удается найти, то модуль ввода из файловой системы периодически проверяет ее наличие. |
2. | Модуль ввода из файловой системы периодически проверяет состав файлов в папке. При поступлении новых файлов или обновлении существующих модуль ввода запрашивает у файловой системы файл и дополнительную информацию. |
3. | Модуль ввода из файловой системы в течение тайм-аута ждет освобождения файла. Тайм-аут задается в файле CaptureService.exe.config, по умолчанию – 10 секунд. Если за это время файл не разблокируется, то он не будет захвачен. Событие будет записано в лог-файл службы ввода. |
4. | Модуль ввода из файловой системы проверяет, соответствует ли файл заданным настройкам службы ввода. |
5. | Если файл удовлетворяет заданным параметрам, то модуль ввода из файловой системы передает его в линию для дальнейшей упаковки. |
6. | Линия упаковывает файл и передает его модулю отправки. После успешной упаковки и отправки линия сообщает модулю ввода из файловой системы, что файлы могут быть удалены. После этого захваченные файлы удаляются из папки ввода. |
Модуль ввода из файловой системы вместе с файлом передает в линию метаданные об устройстве ввода и метаданные об экземплярах захвата в виде XML-файлов. Подробнее см. разделы «DeviceInfo.xml», «InstanceInfos.xml».
Секция FileSystem
Секция FileSystem конфигурационного файла CaptureService.exe.config предназначена для настройки модуля ввода из файловой системы.
Структура секции:
<FileSystem SenderLine="FileCaptureLine" CaptureLegacyFiles="True" >
<clear />
<add
FullPath="C:\DCS\FileCapture\Incoming"
SenderLine="FileCaptureLine"
IncludeSubdirectories="False"
CreateLineForSubdirectories="False"
DeleteOnCapture="True"
ExcludeAttributes=""
IncludeFiles=""
ExcludeFiles=""
WaitForFileUnlockTimeoutInSeconds="10"
DeleteEmptySubdirectoriesAfterCapture="False"
UpdateIntervalInSeconds="5" />
</FileSystem>
SenderLine. Имя линии по умолчанию для обработки файлов из папки ввода. Указывается имя экземпляра линии из секции Lines.
CaptureLegacyFiles. Укажите, какие файлы захватывать:
• | True – все существующие файлы из папки ввода; |
• | False – только файлы, поступившие в папку ввода после запуска службы. |
Значение по умолчанию True.
add – настройка:
• | FullPath. Путь к папке, из которой необходимо заносить файлы в систему. Папка создается вручную. У пользователя, от имени которого работает служба ввода, должны быть права на удаление файлов из указанной папки. |
• | SenderLine. Имя линии для обработки файлов из папки ввода. Указывается имя экземпляра линии из секции Lines. Если значение не указано, то используется линия по умолчанию. |
• | IncludeSubdirectories. Признак занесения файлов из вложенных папок. Возможные значения: True, False. Значение по умолчанию False. |
• | CreateLineForSubdirectories. Признак создания линий для каждой вложенной папки. Укажите, как создавать линии для каждой вложенной папки. |
• | True – файлы из каждой вложенной папки обрабатывать отдельной линией; |
• | False – файлы из всех вложенных папок обрабатывать одной линией. |
Значение по умолчанию False.
• | DeleteOnCapture. Признак удаления захваченных файлов из папки ввода. Возможные значения: True, False. Значение по умолчанию True. |
• | ExcludeAttributes. Файлы с любым из указанных атрибутов не будут заноситься в систему Directum. Возможные значения: |
Например, если указано значение rs, то не захватываются системные файлы, файлы только для чтения и системные файлы для чтения. Если значение не указано, то захватываются все файлы.
• | IncludeFiles. Маски файлов, которые будут заноситься в систему. Указываются через «;». Например, «*.txt;*.png». Если значение параметра не задано, то в систему будут заноситься все файлы. |
• | ExcludeFiles. Маски файлов, которые не будут заноситься в систему. Указываются через «;». Например, «*.doc;*.txt». Если значение параметра не задано, то в систему будут заноситься все файлы. |
• | WaitForFileUnlockTimeoutInSeconds. Максимальное время ожидания разблокировки файла перед захватом. Если файл из папки ввода разблокируется за указанное время, то файл заносится в систему. Указывается в секундах. Значение по умолчанию 10. |
• | DeleteEmptySubdirectoriesAfterCapture. Признак удаления пустых вложенных папок. Возможные значения: True, False. Значение по умолчанию False. |
Примечания
1. Вложенные папки, которые существовали до запуска службы, не удаляются.
2. Если настройка DeleteOnCapture имеет значение False, пустые вложенные папки не удаляются.
• | UpdateIntervalInSeconds. Интервал проверки папки ввода в секундах. По умолчанию 5. |