Directum ошибка обработки команды службой файловых хранилищ

Обновлено: 07.07.2024

Заметки по результатам обновления в Directum с версии 4.9.1 на 5.2.1 в мае 2016 года.

Directum по сути не имеет центрального сервера. Клиенты Directum самостоятельно обращаются к серверу MS SQL, получают необходимые данные и обрабатывают их как считают нужным.

На сервере (или на серверах) запускаются только службы, которые выполняют каждая свою узкую функцию:

Session Server (SBSessionServer)

Проверяет количество лицензий и открывает (или нет) пользователю полноценный доступ к SQL-серверу.

Не имеет настроек, требует наличия корректно сгенерированного ключа системы.

Workflow Processing (SBWorkflowProcessingServer)

Фоновая обработка задач и заданий.

Если эта служба выключена, задачи будут создаваться, но не дойдут до исполнителей.

Служба конфигурируется через файл C:\Program Files (x86)\DIRECTUM Company\DIRECTUM 5.2\SBWorkflowSrvSettings.xml где просто должны быть указаны все обслуживаемые ею базы данных.

Клиент Directum на сервер не ставится, его функции становятся доступны после установки данной службы.

Storage Service (SBFileStorageService)

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

В момент корректного обращения пользователя к конкретному файлу, служба меняет права доступа и документ становится доступным через стандартный механизм общих папок Windows.

Если служба не работает, Directum выглядит полностью работоспособным, но при попытке увидеть текст документа, возникает ошибка.

Служба настраивается через файл C:\Program Files (x86)\DIRECTUM Company\DIRECTUM 5.2\Storage Services\SBFileStorageSettings.xml в нём также следует указать все БД, обслуживаемые службой.

В БД Directum также требуется указывать, что она обслуживается данной службой, добавив её параметры в Утилиты администратора / Администрирование хранилищ / Хранилища текстов документов

Обычно запуск новой БД (если все службы уже запущены и работают) требует следующих шагов:

Directum 5.2 не работает на Windows Server 2003, а серверная часть к тому же на Windows XP. Поэтому обновление производилось не "на месте", а на новый сервер Windows Server 2008 R2.

До установки MS SQL нужно убедиться, что на сервере установлена русская локаль (Russia).

Можно устанавливать MS SQL в минимальной конфигурации, однако есть смысл сразу же добавить к нему компоненту Full Text Search. Это можно сделать и позже в любое время.

Установка Directum зачастую требует переименования хоста с установленным MS SQL. В этом случае после переименования требуется выполнить команду:

Directum требует настройки:

Если планируется использовать (для администрирования) команду xp_cmdshell (например xp_cmdshell 'net use z: \\host\folder' ), её требуется разрешить:

Требуется вручную открыть порты (Windows Firewall with Advanced Security) для служб Directum и для MS SQL:

  • MS SQL: 1433
  • Session: 32300
  • Workflow: 32310
  • Storage: 32320

Установку IIS следует делать по инструкции администратора Directum. Суть: требуется установка компонент

Требуется добавить в MIME Types строку

Патч для канцелярии

До начала обновления Directum (в случае тестового обновления - до backup) требуется сбить параметр Утилиты разработчика / Типы справочников / РКК / Представления / Главное / Иерархия на: По журналам регистрации

После обновления можно его вернуть на По местам регистрации .

Выполняется согласно инструкции по обновлению Directum запуском STConverter.exe и указанием пакета обновления Package\directum_to_521.dat

  • Конвертировать только разработку платформы
  • НЕ: Автоматически конвертировать, Автоматически разрешать конфликты импорта разработки системы
  • НЕ: Повторное сравнение разработки

Настройка вариантов запуска компонент: SBLauncher.exe -CT=ComponentTokenDesigner

Запуск от имени Administrator, пакет Package\DIRECTUM52_tokens.xml

Настройка домена для пользователей (при помощи консоли MS SQL):

При помощи Проводника Directum:

  • Импорт записей справочников Роли Package\StandardData\РОЛ
  • Импорт типовых маршрутов Package\StandardData\ТМТ Внимание! Часть блоков может не заполниться (см. лог импорта), требуется донастроить их вручную
  • Импорт обложек из Package\StandardData\Обложки (Документы произвольной формы), в Установках WebFoldersAllowed = Y, уже должна быть запущена служба Storage

Дополнительно для обновления с версии 4.9.1

Эти шаги тоже делаются согласно инструкции, вот они в краткой форме:

  • Импорт записей справочников Package\StandardData\Currency
  • Утилиты разработчика / Типовые маршруты / Канцелярия / Исполнение поручений / Параметры
    • Типовой маршрут для создания подчиненных поручений = Отправка подчиненного поручения на исполнение
    • Типовой маршрут для контроля исполнения = Контроль исполнения поручения (уже)
    • Типовой маршрут для создания подчиненных поручений = Отправка подчиненного поручения на исполнение
    • Импорт записей справочника Package\StandardData\OTP
    • Утилиты администратора / Общее администрирование / Мастера действий / * / Параметры
      • Оформление заявления (отпуск/отгул/увольнение) ТМЗаявление = Утверждение заявления
      • Оформление служебной записки. ТМ = Согласование служебных записок
      • Package\AssignmentsAndTypicalAssignments
        • Справочник Настройки дополнительных реквизитов справочников: Настройки: Поручения по РКК -> Поручения
        • Спрятать ссылку на Поручения по РКК
        • Делопроизводители
        • Руководство
        • Руководители подразделения
        • Делопроизводители Обращения граждан и организаций
        • Тип карточки документа = Договорные документы (уже)
        • Исполнение поручений по РКК = Исполнение поручений (. )
        • Справочник Правила вычисления ролей / ПомощникРуководителя для типовых маршрутов
          • Ничего не делаем (переносим из Роли Секретарь руководителя)

          Сервер ссылок Hyperlink

          Устанавливается простым копированием в папку C:\inetpub\wwwroot .

          Настройка клиентов: Установки системы

          Пока гиперссылки не работают, обложки папок тоже работать не будут!

          Устанавливается по инструкции, для него создаётся отдельный Virtual site, рекомендуется привязать его к хосту Directum.

          Подключение клиентов выполняется через Установки системы

          Установка клиента Directum на пользовательские машины

          Разработчик предлагает делать установку клиента при помощи msi пакета (см. инструкцию администратора).

          Однако в версии 5.2 в msi пакет не попал установщик SQL Native Client, в результате чего свежеустановленный клиент Directum оказывается неработоспособным на машинах с Windows XP.

          Был разработан альтернативный вариант установки при помощи самописного скрипта (конфигурируемого при помощи файла YAML), запускающего стандартный установщик клиента Directum (Client.exe).

          Для массового обновления клиентов в ночь обновления был дописан ещё один самописный скрипт, который проверяет наличие на машине стандартной папки Directum v4.9.1, запускает его удаление при помощи msiexec и передаёт управление скрипту установки. Факт попытки обновления журналируется. Скрипт может быть запущен на все клиентские машины при помощи SCCM.

          Дополнительные клиентские компоненты

          Дистрибутивы расположены в DIRECTUM Enterprise 5 2 1 с инструментом разработчика.zip (в папке \DIRECTUM\F$\Directum\Distrib\5.2.1):

          • Конструктор документов - DocumentGenerator\DocumentGenerator-??bit.exe
          • Интеграция с MS Office - OfficeInt\OfficeIntegration-??bit.exe

          Настройка после обновления

          Directum самостоятельно настраивает резервное копирование БД в процессе установки.
          Рекомендуется его отключить (SQL Server Agent / Jobs) и настроить своё.

          Почтовые настройки Directum

          В ходе обновления был отключён механизм рассылки через Microsoft Outlook и настроена рассылка по протоколу SMTP как кардинально более простая.

          Настройки заданы в константе MailOutgoingSettings (или через пункт Почта на обложке Настройки системы), используется пользователь OMZGLOBAL\directummail, созданный специально для этой цели.

          Directum предлагает два вида полнотекстового поиска:

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

          Второй тип поиска требует настройки (согласно инструкции):

          1. Однократного запуска сценария Индексирование текстов и слепков объектов
          2. Периодического регулярного запуска того же сценария

          Directum требует массы периодических заданий. Для их настройки используется стандартный Task Scheduler, в котором заведена отдельная папочка Directum.

          На данный момент настроены задания:

          • block - блокирование пользователей Directum, заблокированных в AD
          • ca - импорт сертификатов ЭЦП
          • fulltext - обновление полнотекстовых индексов
          • mail - рассылка уведомлений о заданиях (используется сценарий MailJobs, полученный правкой стандартного сценария Агент рассылки входящих заданий)
          • Выгрузка в 1С
          • Совещания

          Тексты простых скриптов расположены в папке tasks.

          Остальные скрипты - в папке dist.

          Все скрипты можно запускать от имени любого пользователя Directum, имеющего соответствующие права. Однако, со всех сторон удобнее пользователь NT AUTHORITY\SYSTEM , которого необходимо корректно добавить в пользователи Directum по обычной процедуре.

          Скрипты для администрирования Directum

          В ходе обновления был создан механизм написания сложных скриптов для администрирования Directum.

          Скрипты пишутся на языке CoffeeScript, может быть также использован обычный JavaScript. Исходные коды транслируются в JavaScript, собираются и дополнительно сжимаются.

          Написан и отлажен целый ряд утилит (как командной строки, так и с графическим интерфейсом). Возможно (и в большинстве случаев несложно) написание других под возникающие задачи.

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

          Служба File Storage Service бывает самопроизвольно останавливается и не запускается. Лечится удалением файлов C:\Program Files (x86)\DIRECTUM Company\DIRECTUM 5.2\Storage Services\OpenedDocumentVersionInfoList*.cfg

          Некоторые странные ошибки на клиенте (включая вызванные совпадение кодов системы, но не только) лечатся очисткой метаданных.

          На клиентском компьютере выполняется (универсальный) скрипт:

          Очистка метададанных на стороне сервера (лучше выполнять в нерабочее время):


          Инструкции администратора

          Инструкция по установке и удалению системы DIRECTUM

          Установка службы файловых хранилищ системы DIRECTUM

          Для того чтобы установить службу файловых хранилищ системы DIRECTUM , сделайте следующее:

          · Шаг 1. Начните установку Службы файловых хранилищ системы DIRECTUM. Для этого запустите файл H:\STORAGE\setup.exe;

          Примечание . При установке системы DIRECTUM на операционные системы семейства Windows Vista необходимо запускать программу установки с явными правами администратора. Для этого нужно из контекстного меню файла setup.exe выбрать пункт меню Run as administrator…

          · Шаг 2. Окно приветствия:


          · Нажать на кнопку Далее >;

          · Шаг 3. Окно «Лицензионное соглашение»:


          · ознакомиться с текстом лицензионного соглашения DIRECTUM;

          · выбрать Я принимаю условия лицензионного соглашения, если Вы принимаете условия этого соглашения;

          · нажать на кнопку Далее >;

          · Шаг 4. Окно «Информация о системе»:


          · в поле *Имя SQL-сервера указать имя SQL-сервера, на котором установлена серверная часть системы DIRECTUM, по умолчанию имя компьютера;

          · в поле *Имя базы данных указать имя базы данных серверной части системы DIRECTUM, по умолчанию DIRECTUM;

          · в полях *Пользователь и Пароль указать соответственно логин и пароль пользователя SQL-сервера, обладающего правами администратора, по умолчанию sa;

          · нажать на кнопку Далее >.

          · Шаг 5. Окно «Настройка портов»:


          · в поле *Порт службы файловых хранилищ указать номер порта, через который будет работать Служба файловых хранилищ системы DIRECTUM;

          · нажать на кнопку Далее >;

          Примечание . При установке Службы файловых хранилищ системы DIRECTUM на несколько компьютеров необходимо указывать один и тот же порт.

          · Шаг 6. Окно «Папка установки»:


          · нажать на кнопку Изменить и выбрать произвольную папку для установки, если необходимо произвести установку Службы файловых хранилищ системы DIRECTUM в папку, отличную от предлагаемой по умолчанию;

          Примечание . Не следует производить установку в папку, где уже установлено какое-либо приложение, это может привести к неработоспособности продукта.

          · нажать на кнопку Далее >;

          · Шаг 7. Окно «Все готово к установке программы»:


          · ознакомиться с настройками программы установки в поле Текущие установки;

          · нажать на кнопку Установить, чтобы начать установку;

          · Шаг 8. Окно «Программа установки Службы файловых хранилищ системы DIRECTUM 4.6 завершена»:

          При работе с хранилищем конфигурации время от времени могут возникать ошибки, предупреждения, которые не всегда являются критичными, и легко устраняются. Но зачастую разработчики, особенно новые, с ошибками не знакомы, или путаются в них, поэтому решено было собрать все ошибки и способы их решения в одном месте.

          Речь пойдет о файловом варианте работы с хранилищем.

          1. Ошибка аутентификации в хранилище конфигурации


          Самая понятная из возможных ошибок. Данная ошибка возникает при вводе неверного логина и пароля.

          Изменить логин и пароль может пользователь с административными правами на вкладке "Пользователи" окна "Администрирование хранилища конфигурации"

          2. Пользователь существующей связи отличается от текущего


          Тут важно понимать принцип работы хранилища конфигурации. Хранилище используются для коллективной разработки, т.е. у каждого разработчика есть своя база для разработки, есть свой пользователь хранилища, и все под своими логинами подключаются в свои базы. На практике бывает, что существуют общие базы, например на сервере для тестирования, и если она подключается к хранилищу, для нее необходимо заводить также отдельный логин и заходить в нее под ним (для удобства, в качество логина общей серверной базы можно использовать имя самой базы). Девиз хранилища: на каждую базу свой логин в хранилище.

          Данная ошибка возникает, когда текущая база уже подключена к хранилищу под каким-то логином, а вы пытаетесь ввести другой логин. Это может быть по разным причинам:

          • вы зашли в общую базу и пытаетесь войти под своим логином хранилища. Необходимо выяснить логин этой конкретной базы, и заходить под ним, но не переподключать под своим. Посмотреть, под каким логином подключена каждая база может пользователь с административными правами в хранилище, на вкладке "Подключения" окна "Администрирование хранилища конфигурации"
          • вы развернули базу, которая уже была подключена к хранилищу. Необходимо отключить конфигурацию от хранилища и подключить заново.

          3. Пользователь уже аутентифицирован в хранилище


          Данная ошибка возникает, когда любая другая база уже подключена к хранилищу под логином, который вы вводите в текущей базе. И с ней работают под этим логином в данный момент.

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

          4. Для данного пользователя уже имеется конфигурация связанная с данным хранилищем конфигурации


          Предупреждение похоже на ошибку из предыдущего пункта, но есть небольшое отличие.

          Данная ошибка возникает, когда любая другая база уже подключена к хранилищу под логином, который вы вводите в текущей базе. Но с ней не работают под этим логином в данный момент.

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

          5. При получении данных из хранилища или захвате объекта: Не удалось зафиксировать таблицу для чтения "Versions"


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

          Чтобы избавиться от ошибки, необходимо закрыть конфигуратор и зайти заново.

          6. При подключении к хранилищу: Не удалось зафиксировать таблицу для чтения "Users"

          Данная ошибка может возникать:

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

          Чтобы избавиться от ошибки, необходимо закрыть конфигуратор и зайти заново.

          • когда в этот самый момент другой пользователь помещает большой объем данных в хранилище

          Необходимо подождать, пока другой пользователь закончит помещение объектов в хранилище.

          7. Файл не является файлом базы данных

          Ошибка соединения с хранилищем конфигурации по адресу:
          \\Server\Repository\project1
          по причине:
          Файл не является файлом базы данных '//Server/Repository/project1/1cv8ddb.1CD'

          Данная ошибка может возникать при подключении к хранилищу:

          • если есть зависший фоновый процесс к этой базе.

          Необходимо зайти в диспетчер задач и принудительно снять зависший фоновый процесс, после этого повторно попробовать подключиться к хранилищу. Если база серверная, то этот процесс может быть зависшим у кого-то, кто работал с базой ранее. Необходимо найти, кто последний работал и попросить почистить у себя в диспетчере зависший процесс.


          • если есть зависший сеанс другой базы, подключенной к этому хранилищу на этом компьютере

          Так бывает, что одновременно приходится работать с разными базами в одном хранилище. Если про одну базу надолго забыть, и в ней будет появляться ошибка №5, то другую базу с этим хранилищем вы открыть не сможете. Необходимо завершить "забытые" сеансы.

          8. Файл базы данных поврежден.

          Ошибка соединения с хранилищем конфигурации по адресу:
          \\Server\Repository\project1
          по причине:
          Файл базы данных поврежден '\\Server\Repository\project1\//1cv8ddb.1CD'

          Данная ошибка может возникать:

          • когда разработчики, подключенные к одному хранилищу, работают на разных версиях платформы и один из них поместил что-то из новой версии платформы.
          • когда файл базы данных был действительно поврежден (отключение электричества, скачки напряжения и т.п.)

          1. Всем разработчикам закрыть все конфигураторы, подключенные к хранилищу

          2. Почистить кэш хранилища

          3. Одному запустить конфигуратор от имени администратора

          4. Подключиться к хранилищу

          Если указанные действия не помогли, можно воспользоваться утилитой chdbfl.exe, но в моей памяти мне она ни разу не помогла и единственным выходом было создание хранилища с нуля.

          9. Неклассифицированная ошибка работы с хранилищем конфигурации


          Данная ошибка может возникать, когда к хранилищу подключаются разными версиями платформы. Например: 8.3.10.2667 и 8.3.12.1529

          1. Всем разработчикам закрыть все конфигураторы, подключенные к хранилищу

          2. Очистить глобальный кэш хранилища

          3. Синхронизировать версии платформ.

          10. Ошибка "База данных не открыта"


          Данная ошибка может возникать при подключении к хранилищу:

          • если есть зависший фоновый процесс к этой базе;
          • если есть зависшие блокировочные файлы в каталоге хранилища.

          1. Если причина в зависших фоновых процессах на локальном компьютере, то лечение как в п.7.

          2. Если п.7 не помог, то необходимо всем закрыть конфигураторы, зайти в каталог хранилища, и удалить блокировочные файлы размером 0 байт.

          11. Ошибка "Ошибка совместного доступа к хранилищу конфигурации"

          При получении данных из хранилища возникает ошибка:

          ---- Начало операции с хранилищем конфигурации ----
          Повтор попытки получения объектов из хранилища конфигурации
          Повтор попытки получения объектов из хранилища конфигурации
          Повтор попытки получения объектов из хранилища конфигурации
          Повтор попытки получения объектов из хранилища конфигурации
          Повтор попытки получения объектов из хранилища конфигурации
          Повтор попытки получения объектов из хранилища конфигурации
          Ошибка совместного доступа к хранилищу конфигурации:

          \\Server\Repository\project1
          Не удалось заблокировать таблицу 'OBJECTS'
          ---- Операция с хранилищем конфигурации отменена ----

          Данная ошибка может возникать при получении данных из хранилища:

          • если в этот момент с другого компьютера запущен процесс оптимизации хранилища;

          1. Дождаться окончания оптимизации хранилища

          2. Повторно запросить получение данных из хранилища.

          Это, конечно, не весь список ошибок, который может возникать при работе с хранилищем. Я привёл те ошибки, с которыми я лично не раз сталкивался и решал указанными мной способами. Если у вас есть ошибка, которая не описана, и вы знаете способ ее решения, пишите в комментарий, я с удовольствием добавлю информацию в общую статью.

          Для вашего удобства мы подготовили ответы на вопросы, которые часто поступают от пользователей сервиса Synerdocs.

          Для обращения в техническую поддержку через приложение Telegram, отсканируйте QR-код

          Если у вас установлено десктоп-приложение на компьютере, перейдите по ссылке: @SupportSynerdocs

          Для обращения в техническую поддержку через приложение Viber, отсканируйте QR-код

          Если у вас установлено десктоп-приложение на компьютере, перейдите по ссылке: Написать в Viber

          Общие вопросы

          Подробнее о том, как пользоваться сервисом и его функциями.

          Вопрос:

          Как начать работать с маркировкой в Synerdocs?

          Ответ:

          3. Приобрести опцию Маркировка для автоматической передачи данных из Synerdocs в ГИС МТ, свидетельствующих о том, что право собственности перешло от продавца к покупателю.

          5. Убедиться в корректности переданной информации при помощи системы статусов.


          Вопрос:

          Часто задаваемые вопросы по проектам подключения

          Ответ:

          1. Какие выгоды для моей компании дает переход с бумажного на электронный документооборот (ЭДО)?

          Этот переход снизит расходы на документооборот более чем в 5 раз, и будет обеспечивать гарантированную и быструю доставку.


          1. Зачем нам совместный проект подключения, если мы все можем сделать самостоятельно?

          Специалисты Synerdocs – эксперты в области электронного документооборота и проведения мероприятий по подключению контрагентов к ЭДО. Совместная работа сокращает сроки проекта и увеличивает его эффективность.

          1. Каковы показатели реализованных совместных проектов подключений?

          Согласно статистике за последние три года количество контрагентов, с которыми заказчик перешел на электронный обмен, составляет более 56% от первоначального списка по проекту.

          1. Насколько безопасно передавать информацию специалистам Synerdocs о подключаемых контрагентах и о текущих бизнес- процессах?

          По желанию заказчика мы заключаем с ним соглашение о неразглашении (NDA). Передача информации может осуществляться по защищенным каналам связи (например, через SFTP сервер, где передаются архивные файлы с паролем).

          1. Чем проекты подключения Synerdocs отличаются от услуг конкурентов?

          По данным маркетингового исследования компании ООО «Директум», проведенного в мае 2019 года, проекты подключений Synerdocs имеют следующие преимущества:

          • индивидуальный подход к каждому заказчику;
          • подключение и поставщиков, и клиентов компании-заказчика;
          • реализация более широкого, по сравнению с конкурентами, списка мероприятий;
          • отсутствие оплаты за проект подключения;
          • наличие у Synerdocs менее жестких требований к количеству и размеру подключаемых контрагентов (критерии запуска совместных проектов уточняйте у менеджера Synerdocs).
          1. Как наша компания может контролировать деятельность по проекту и получать по нему актуальную информацию?

          При проведении мероприятий по согласованному плану, руководитель проектов подключений Synerdocs еженедельно предоставляет заказчику информацию о проведенных мероприятиях, их результатах, числу подключенных к ЭДО контрагентов.

          1. С кем из сотрудников моего предприятия вы будете взаимодействовать?

          Для совместного проекта подключения со стороны заказчика выделяется руководитель проекта. Он должен обладать необходимыми полномочиями по реализации общих мероприятий по подключению.

          Помимо этого, на проекте может быть запланировано обучение основам электронного обмена части сотрудников вашего предприятия. Наша консультационная поддержка таких работников поможет им проще и быстрее привлекать в ЭДО ваших контрагентов.

          1. Нужен ли мне проект подключения, если мне сложно предугадать реакцию моих партнеров на реализуемые мероприятия?

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

          1. Почему проекты подключения бесплатные? Не потребуется ли оплата позже?

          Проекты подключения с нашей стороны бесплатны, потому что мы заинтересованы в привлечении новых абонентов в сервис, не менее чем вы – в обмене с ними электронными документами. Никаких отложенных или скрытых платежей по проекту нет. Совместный проект подключения абсолютно бесплатен.

          Читайте также: