Файловые тома в 1С:Документооборот

Как настроить файловые тома в 1С:Документооборот?

В статье "Порядок установки «1С:Документооборот» в клиент-серверном варианте" описано, почему не рекомендуется использовать 1С:Документооборот в файловом варианте. При использовании клиент-серверного варианта лучше файлы хранить в томах на диске, а не в информационной базе. Про преимущества хранения файлов в томах на диске в 1С:ДО и порядок настройки будет рассказано в данной статье.



Настройки файловых томов в 1С:Документооборот подробно рассмотрены в видео-курсе, заказать который можно по ссылке http://video.doc-lvv.ru/

В программе предусмотрено два варианта хранения файлов:

  • в информационной базе,
  • в томах на диске.

При хранении в информационной базе все файлы физически хранятся в таблицах СУБД.
При хранении в томах на диске файлы хранятся в каталогах файловой системы, а в СУБД хранятся только ссылки на эти файлы.
Хранить файлы в информационном базе целесообразно только на этапе создания прототипа и опытной эксплуатации, когда удобнее пересылать выгрузку базы вместе с файлами. Но в промышленной эксплуатации использование файловых томов является предпочтительным.
Преимущества хранения файлов в томах на диске по сравнению с хранением в СУБД следующие:
  • Объем СУБД уменьшается в несколько раз.
  • СУБД будет работать быстрее.
  • Проще делать резервную копию базы данных СУБД и отдельно файлового тома.
В каждом томе файлы хранятся в подкаталогах по дате так, что на каждый день создается свой подкаталог. Это удобно использовать для настройки инкрементального резервного копирования файлового тома, так как каждый день надо добавлять к резервной копии новую папку.
Все файлы в томах хранятся с оригинальным именем и расширением, между которыми добавляется номер версии, например "Приказ.1.txt". Также могут создаваться подкаталоги вида A B A1 B1 и пр., чтобы обеспечить уникальность имен. Т.е. если у вас в этот день уже добавлен файл "Приказ.doc", и вы еще раз добавляете файл (другой) с тем же именем "Приказ.doc" – он будет размещен в подкаталог, например "A". В связи с этим при ручном поиске нужного файла в томе нужно учитывать, что файл может находиться как в самой папке с датой, так как и в подпапке.
Для того чтобы настроить хранение файлов в томах на диске нужно:
  1. Определить требования к хранению файлов.
  2. Включить в настройках программы хранение файлов в томах на диске.
  3. Создать физические тома в виде каталогов на файловых серверах и настроить файловые тома в 1С:Документооборот.

1. Определение требований к хранению документов

При определении требований к хранению файлов нужно классифицировать все файлы на группы. Например, это могут быть следующие группы:
  • документы, подписанные электронной подписью;
  • зашифрованные файлы;
  • документы Директора;
  • офисные документы (doc, docx, xls, xlsx, и т.д.);
  • сканы документов;
  • файлы конфигураций, выгрузки, внешние отчеты и обработки 1С;
  • звуковые файлы;
  • видео-файлы;
  • файлы большого объема (>100 Mb);
  • прочие файлы.
Указанные выше документы имеет смысл классифицировать в следующей таблице:
Из полученной таблицы мы видим, сколько места нужно зарезервировать для каждого файлового тома.

2. Включение хранения файлов в томах на диске

В 1С:Документообороте под пользователем Администратор открываем раздел Настройка и администрирование, Настройка программы.

Далее нажимаем Работа с файлами.

Устанавливаем настройку Хранить файлы в томах на диске. И нажимаем ссылку Тома хранения файлов.

Группа по умолчанию уже есть. Создаем наши оставшиеся группы.

3. Создание и настройка файловых томов

Создадим на любом диске папку filestoms. В данной папке добавим наши три тома. В реальности эти три тома могут располагаться на разных дисках и даже на разных серверах.

Открываем свойства папки filestoms. Переходим на закладку Sharing и указываем имя расшаренной папки. В разрешениях удаляем доступ Всем пользователям.

И добавляем разрешения на эту шару пользователю, под которым работает сервер 1С. В нашем учебном примере это USR1CV8, также и в промышленной эксплуатации надо использовать отдельного пользователя (локального или доменного), не Администратора. Этот пользователь должен входить в группу Users локального компьютера, иметь права Run as service, Run as batch job и права на каталоги, в которых сервер «1С:Предприятия 8» хранит служебные файлы (журнал регистрации, каталог временных файлов и др.).
Проверим теперь доступность нашей шары по UNC-пути.
Добавляем том 1 для хранения файлов по умолчанию.

Аналогично добавляем тома для особо-важных документов и медиа-файлов.

Переходим в правила размещения файлов. И добавляем новое правило.

Настроим условия для размещения файлов особо-важных документов.

Далее добавим правило для медиа-файлов.

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

Настройка правил завершена. Загрузим теперь в шаблоны файл формата doc.

Перейдем теперь в файловый том по умолчанию и увидим, что файл появился здесь.

Загрузим в папку Видео файл.

Перейдем в файловый том для медиа-файлов и увидим, что данный файл располагается здесь.
Далее нужно не забыть настроить бэкап файловых томов с тем же расписанием, что и бэкап СУБД.

36 комментариев:

  1. Можно ли применить правила к уже размещенным документам?

    ОтветитьУдалить
  2. Добрый день. Я правильно понимаю, что указание папки, в которой должен хранится договор в карточке документа, вовсе не означает, что на сервере будет хранится договор в этой же папке? Можно ли настроить так, чтобы при указании папки в карточке внутреннего документа, договор помещался на сервер в аналогичную папку?

    ОтветитьУдалить
    Ответы
    1. На каждую дату будет создаваться отдельная папка. 1С:Документооборот сам создает эти папки и пользователь никак не может повлиять на структуру подпапок в папке файлового тома. Папки внутренних документов никак не оказывают влияние на папки внутри файлового тома.

      Удалить
  3. Владимир, а как сделать так, чтобы, например, договоры на закупку товара хранились в одной папке на сервере, на закупку ПО - в другой папке. Где ставится такое разделение?

    ОтветитьУдалить
    Ответы
    1. Так сделать нельзя. Можно сделать разные тома и поставить условия размещения файлов в томах по реквизитам файлов.

      Удалить
    2. Владимир, в таком случае я запутался :) у меня по закупке товара и закупке ПО происходит разделение, т.к. существует два разных процесса 1С ДО. То есть пользователь создает внутренний документ по одному шаблону и отправляет его на согласование по уникальному шаблоне, то же самое происходит и с другим процессом. Файлы по двум процессам попадают в разные папки, при этом никакие правила в томах не используются. Как сделать это разделение дальше - ума не приложу...

      Удалить
    3. Если правила размещения файлов в томах не заданы, то все файлы будут складываться в один файловый том в подпапки с разными датами.

      Удалить
    4. У меня в двух случаях раскладываются по разным папкам, а там уже по подпапкам по числам, как вы и пишите. Но почему так получилось и почему не могу настроить дальше - не знаю...

      Удалить
  4. Добрый день, Владимир! Проблема такая: Все создала, все настроила, но есть один не очень хороший момент - На документ, например, приказ есть шаблон. При формировании первого документа файл с названием "Приказ шаблон.1" записывается в папку группы по умолчанию в текущем числе. Если мы что-то меняем, то записывается файл с названием "Приказ шаблон.2". При формировании нового документа приказ формируется буквенная подпапка в числе текущем и там записывается файл с названием "Приказ шаблон.1". Подскажите, пожалуйста, а нельзя ли как-нибудь к имени файла добавить, например, номер, чтобы не формировались подпапкам. Документов за день очень много, букв не хватит, да и не очень наглядно получается. Спасибо

    ОтветитьУдалить
    Ответы
    1. А зачем Вам наглядность в папке файлового тома? 1С:Документооборот сам туда складывает файлы и знает какие версии файлов где находятся. Вам в этой папке ничего искать не надо. Нужно все файлы открывать через 1С:Документооборот.

      Удалить
    2. Какой алгоритм восстановления, в случае повреждения дисков на котором хранятся файлы.
      База ДО не сможет ссылаться на резервные копии файлов или она сама восстановит связь по дате и названию файла?

      Удалить
  5. Добрый день, Владимир!
    Начала настройку хранения файлов на диске. Все настроила, как Вы советуете, все нормально, но есть один момент..
    НА документ внутренний, например, приказ есть файл шаблона с именем «Приказ шаблон.doc» .
    При формировании документа приказ на диске в нужном месте по дате формируется файл с названием «Приказ шаблон.1.doc». При внесении каких-либо изменений там же формируется файл с названием «Приказ шаблон.2.doc».
    При формировании следующего документа формируется подпапка в числе и туда записывается файл с названием «Приказ шаблон.1.doc».
    Подскажите, пожалуйста, как можно изменять имена файлов, например, добавить внутренний номер документа, чтобы не формировались подпапки в числах, а все файлы писались просто по дате?

    ОтветитьУдалить
    Ответы
    1. Порядок формирования названий файлов в папке файлового тома изменить нельзя.

      Удалить
  6. Добрый день,

    Подскажите , пожалуйста, если файл был удален из Документооборта ( не помечен на удаление, а именно удален) , он удаляется из тома на диске? Можно ли его найти и восстановить средствами файловой системы ? В корзине или поиском удаленных файлов?

    ОтветитьУдалить
    Ответы
    1. Если Вы сначала пометили на удаление файл, а затем сделали удаление помеченных объектов в 1С Документообороте, то удалятся физически все версии файла из файлового тома. Удаление происходит непосредственно. Восстановить можно всегда из бэкапа. Возьмите бэкап файлового тома за вчерашний день и оттуда восстановите файл.

      Удалить
  7. Подскажите, пожалуйста, если настроено хранение файлов в томах на диске и я создам копию базы, она физически будет ссылаться на то же место хранения файлов, что и основная база? Т.е. удаление файла в копии базы приведет к физическому удалению файла на диске? В основной базе возникнет неправильная ссылка?

    ОтветитьУдалить
    Ответы
    1. Да. В копии не надо удалять файлы. Если Вы сделаете удаление помеченных объектов и будут удалены файлы, то физически файл будет удален в файловом томе.

      Удалить
    2. Спасибо. А можно как-то в копии изменить место расположения тома (создав физическую копию тома на диске)

      Удалить
    3. Да. Делаете копия файлового тома по новому адресу. И в копии меняете сетевой путь.

      Удалить
    4. Открывайте файловый том в 1С:Документообороте и в поле Полный путь указывайте путь к копии файлового тома.

      Удалить
    5. Все получилось! Спасибо Вам большое!

      Удалить
  8. Здравствуйте! Подскажите, сильно ли повлияет на скорость работы хранение файлов на том же диске, где расположена SQL-база ДО? Или рекомендуется разносить базу и файлы по разным физическим дискам?

    ОтветитьУдалить
    Ответы
    1. Лучше разнести на разные диски файловые тома и базу SQL. Для базы SQL нужны быстрые диски, а вот для файлового тома можно использовать любые диски.

      Удалить
  9. Здравствуйте!
    Журнал регистрации заполонён следующим предупреждением
    {ОбщийМодуль.РаботаСФайламиВызовСервера.Модуль(6304)}: Ошибка при вызове метода контекста (УстановитьТолькоЧтение)
    по причине:
    Ошибка доступа к файлу: 20170412\ANSI Class 52-11_65cf0116-c9ef-4a35-b864-94636e1dffb4.1.doc
    Это как-то можно исправить?

    ОтветитьУдалить
    Ответы
    1. А физически файл напрямую из файлового тома дает скопировать или открыть?

      Удалить
  10. Сделал как написано. Но при попытке записать, отображается ошибка. Можете помочь, что делаю не так?
    "Поле объекта не обнаружено (ApplicationPermissions_1_0_0_2)

    Ссылка на скрин: https://yadi.sk/i/8H8g6EZm3LnG2N

    ОтветитьУдалить
    Ответы
    1. Права полные на сетевую папку есть у пользователя под которым работает сервер 1С?

      Удалить
    2. да есть, вообще всем открыл доступ к этой папке. Вот скрин. Посмотрите пож-та.
      https://yadi.sk/i/wSj50VGz3LobFJ

      Удалить
    3. Всем не надо открывать полный доступ. Иначе все смогут видеть все файлы и даже удалить их. Это плохо.
      Посмотрите под кем у Вас работает служба "Агент сервера 1С:Предприятие" и тольо этому пользователю дайте полные права на эту папку.

      Удалить
    4. Посмотрел. под юсером. Доступ ему открыт. А можете выслать скрин как у вас настроен доступ к папке. Какие рахзрешения в папке у вас указаны?

      Удалить
    5. Сделал. Но сейчас выходит следующее сообщение: Ошибка в модуле "РаботаВБезопасномРежимеСлужебный.Модуль(88). Поле объекта не обнаружено Applicationpermission 1 0 0 2

      Посмотрел в конфигураторе этот модуль... какие поля...непонятно. Вы не сталкивались с подобным? Как решили?

      Удалить
    6. Вот скрин с правами на шару: https://1.bp.blogspot.com/-5yMZP1_Lj3U/VtPeQ0hTEFI/AAAAAAAABBM/6Uv8Z__YojM/s1600/sozdanie-i-nastroyka-faylovyh-tomov-v-1sdokumentooborot2.png

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

    {ОбщийМодуль.РаботаВБезопасномРежимеСлужебный.Модуль(88)}: Поле объекта не обнаружено (ApplicationPermissions_1_0_0_2)

    ОтветитьУдалить
  12. Добрый день! Не знаю, угадал ли с разделом.. Не подскажите, по какой причине, пользователь не может открыть вложенный файл в середине процесса, т.к он пользователю недоступен. К основному предмету доступ имеет, процессы и задачи доступ имеет, а вспомогательный файл открыть не может.

    ОтветитьУдалить
  13. Добрый день!
    Жаль что нет возможности типовым способом настроить хранение файлов по организациям. Т.е в правилах хранения файлов в пользовательском режиме задать условие с отбором по организации.

    ОтветитьУдалить