Тема: Ошибка при настройке файловых серверов

В TechnologiCS Администратор при открытии Настройка файловых серверов появляется следующая ошибка:
Ошибка при настройке файловых серверов

Ошибка появилась после переустановки файлового сервера и базы данных.
С помощью SQL Server Profiler посмотрел, что ошибка возникает при выполнении следующего запроса (как я понял, выгружаются все документы, их размер, путь и наименование):

SELECT Projects.PRJ_NAME, Projects.PRJ_NOTE,
  Prjtypes.PRJTYPE_NOTE, Prjtypes.PRJTYPE_ICO,
  Routing.ROUTING_NOTE,
  PRJTREE.prjtree_name,
  PRJVERSION.PRJVER_ID, PRJVERSION.prjver_name, PRJVERSION.prjver_number, PRJVERSION.PRJVER_ACT,
  PRJVERSION.CREATE_DATE, PRJVERSION.CHANGE_DATE,
  LOCKUSR.user_name as lockusr_name,
  CR_USER.USER_NAME as cr_username,
  fd1.filedevice_id, fd1.filedevice_name,
  fileservers.fileserver_id, fileservers.fileserver_hostname,
  fd2.filedevice_id as PRJ_FILEDEVICE_ID, fd2.filedevice_name as PRJ_FILEDEVICE_NAME,
  prjtreetype.prjtreetype_name,
  cast(SUM(pf.prjfile_size) as float) as SUM_FILE_SIZE, COUNT(pf.prjfile_id) as COUNT_FILES
from PROJECTS Projects
  inner JOIN PRJVERSION ON PRJVERSION.prj_id=Projects.prj_id
  inner JOIN PRJTREE ON PRJTREE.prjtree_id = Projects.prjtree_id
  inner join prjtreetype on prjtreetype.prjtreetype_id=PRJTREE.prjtreetype_id
  inner join filedevice fd1 on fd1.filedevice_id=prjversion.device_id
  inner join filedevice fd2 on fd2.filedevice_id=prjtreetype.default_device_id
  inner join fileservers on fileservers.fileserver_id=fd1.fileserver_id
  LEFT JOIN PRJTYPES Prjtypes ON  (Projects.PRJTYPE_ID = Prjtypes.PRJTYPE_ID)
  LEFT JOIN ROUTING Routing ON  (Projects.ROUTING_ID = Routing.ROUTING_ID)
  LEFT JOIN PRJVERSTATES ON PRJVERSTATES.prjverstate_id=PRJVERSION.prjverstate_id
  LEFT JOIN PRJVERACTFILE ON PRJVERACTFILE.prjver_id=PRJVERSION.prjver_id
  LEFT JOIN USERS LOCKUSR ON PRJVERSION.prjver_locked_by=LOCKUSR.user_id
  LEFT JOIN USERS CR_USER ON PRJVERSION.creator=CR_USER.user_id
  LEFT JOIN prjfiles pf on pf.prjver_id=PRJVERSION.prjver_id  
WHERE fileservers.fileserver_id = -1 
group by Projects.PRJ_NAME, Projects.PRJ_NOTE, Prjtypes.PRJTYPE_NOTE, 
  Prjtypes.PRJTYPE_ICO,Routing.ROUTING_NOTE, PRJTREE.prjtree_name, PRJVERSION.PRJVER_ID, 
  PRJVERSION.prjver_name,PRJVERSION.prjver_number, PRJVERSION.PRJVER_ACT,PRJVERSION.CREATE_DATE, 
  PRJVERSION.CHANGE_DATE,LOCKUSR.user_name, CR_USER.USER_NAME, fd1.filedevice_id, fd1.filedevice_name, 
  fileservers.fileserver_id,fileservers.fileserver_hostname, fd2.filedevice_id, fd2.filedevice_name, 
  prjtreetype.prjtreetype_name

Сама ошибка появляется здесь cast(SUM(pf.prjfile_size) as float) as SUM_FILE_SIZE.
Самое интересное, что ошибка возникает даже когда значения отсутствуют. Например в данном запросе идёт обращение к файловому серверу с ID = -1, а в базе имеет только файловый сервер с ID = 1.

Подскажите пожалуйста, в чем проблема?

Re: Ошибка при настройке файловых серверов

Ну перестановка тут ни причем, а версия какая у вас?

Re: Ошибка при настройке файловых серверов

Олег Зырянов пишет:

Ну перестановка тут ни причем, а версия какая у вас?

TechnologiCS 7.1.0.0 (27107)

Re: Ошибка при настройке файловых серверов

и версию SQL Server тоже укажите пожалуйста.

Re: Ошибка при настройке файловых серверов

Олег Зырянов пишет:

и версию SQL Server тоже укажите пожалуйста.

SQL Server 2008 R2

Re: Ошибка при настройке файловых серверов

давайте точную версию с билдом укажем (SQL Server).
Можно СП устанвоить на БД и на клиента последние http://www.technologics.ru/download/addition/v7.html (только не вижу там такого исправления). Хотя у нас и версия поновее есть.
Сам TechnologiCS запускается без ошибок?

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

Re: Ошибка при настройке файловых серверов

Олег Зырянов пишет:

давайте точную версию с билдом укажем (SQL Server).

Microsoft SQL Server 2008 R2 (RTM) - 10.50.1600.1 (X64)   Apr  2 2010 15:48:46   Copyright (c) Microsoft Corporation  Enterprise Edition (64-bit) on Windows NT 6.1 <X64> (Build 7601: Service Pack 1)

Олег Зырянов пишет:

Сам TechnologiCS запускается без ошибок?

Да. Всё отображается корректно. Но проблемы с файловым сервером есть. При попытке открыть/скачать файл, приложенный к документу в архиве, появляется следующая ошибка:

Ошибка при выгрузке документа "R1.025: Версия 1#1->Согласование службами СГТ (КД)": Отсутствует регистрационная информация файл сервера.
Сервер: "SRV56" Устройство: "DATA".

Re: Ошибка при настройке файловых серверов

Ошибка при выгрузке документа "R1.025: Версия 1#1->Согласование службами СГТ (КД)": Отсутствует регистрационная информация файл сервера.
Сервер: "SRV56" Устройство: "DATA".

Просто зарегистрируйте устройство https://help.technologics.ru/7.7/TCSHelp/_585.htm

Re: Ошибка при настройке файловых серверов

Олег Зырянов пишет:

Просто зарегистрируйте устройство https://help.technologics.ru/7.7/TCSHelp/_585.htm

Из-за данной ошибки нельзя перейти на страницу Настройка файловых серверов. При переходе появляется ошибка, после чего страница закрывается.

Re: Ошибка при настройке файловых серверов

Из-за данной ошибки нельзя перейти на страницу Настройка файловых серверов. При переходе появляется ошибка, после чего страница закрывается

Ясно. Это полохо.

С ошибкой с одной стороны понятно (в 7.7 похоже она испарвлена).

С другой стороны странно. Либо где-то не те данные вы даете.




Давайте запустим SQL Management Studio, соединимся с вашей БД и выполним следующие запросы:

SELECT Projects.PRJ_NAME, Projects.PRJ_NOTE,
  cast(SUM(pf.prjfile_size) as float) as SUM_FILE_SIZE, COUNT(pf.prjfile_id) as COUNT_FILES
from PROJECTS Projects
  inner JOIN PRJVERSION ON PRJVERSION.prj_id=Projects.prj_id
  inner join filedevice fd1 on fd1.filedevice_id=prjversion.device_id
  inner join fileservers on fileservers.fileserver_id=fd1.fileserver_id
  LEFT JOIN prjfiles pf on pf.prjver_id=PRJVERSION.prjver_id  
WHERE fileservers.fileserver_id = -1 
group by Projects.PRJ_NAME, Projects.PRJ_NOTE
SELECT Projects.PRJ_NAME, Projects.PRJ_NOTE,
  pf.prjfile_size, pf.prjfile_id
from PROJECTS Projects
  inner JOIN PRJVERSION ON PRJVERSION.prj_id=Projects.prj_id
  inner join filedevice fd1 on fd1.filedevice_id=prjversion.device_id
  inner join fileservers on fileservers.fileserver_id=fd1.fileserver_id
  LEFT JOIN prjfiles pf on pf.prjver_id=PRJVERSION.prjver_id  
WHERE fileservers.fileserver_id = -1 

есть ошибка на них?

Re: Ошибка при настройке файловых серверов

Олег Зырянов пишет:

есть ошибка на них?

Запросы выполнились без ошибок. Ничего не вернули.

Кстати, экспериментировал с запросом, на котором возникает ошибка (запрос из первого сообщения). Если в неё заменить

cast(SUM(pf.prjfile_size) as float) as SUM_FILE_SIZE


на

SUM(cast(pf.prjfile_size as float)) as SUM_FILE_SIZE

запрос выполняется без ошибок.

Re: Ошибка при настройке файловых серверов

Запросы выполнились без ошибок. Ничего не вернули.

А запрос что вы привели дает ошибку?
Просто по идее у вас окно должно открыться при этом и файл сервера должно быть настроить можно.

Re: Ошибка при настройке файловых серверов

Олег Зырянов пишет:

А запрос что вы привели дает ошибку?
Просто по идее у вас окно должно открыться при этом и файл сервера должно быть настроить можно.

Может лучше я видео пример приведу?

Post's attachments

error example.zip 1.47 Мб, 3 скачиваний с 2019-07-31 

You don't have the permssions to download the attachments of this post.

Re: Ошибка при настройке файловых серверов

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

Ну в таком случае вам необходимо обновиться до 7.7. Обратитесь в в представительство как это сделать http://www.technologics.ru/contacts.html