очистить измененные сервисы, чтобы они локально обновились без полной очистки профиля.
Коллеги, прошу помочь.
задача: необходимо очистить измененные сервисы, чтобы они локально обновились без полной очистки профиля.
версия 5 сервис деск
Был применен скрипт:
delete from "SysProfileData"
where "ObjectId" =(select distinct "SysSchemaId" from "SysSchemaInSolution"
where "Name" = 'Название схемы');
commit;
где значение Name - название схем, а именно:
BaseApprovalGridPage
ApprovalInServiceRequestGridPage.
Например, для очистки, профилей пользователей страницы
BaseApprovalGridPage. Скрипт будет иметь вид:
delete from "SysProfileData"
where "ObjectId" =(select distinct "SysSchemaId" from "SysSchemaInSolution"
where "Name" = 'BaseApprovalGridPage');
commit;
"
Данный скрипт не удаляет настроек колонок
Нам необходимо очистить настройки пользователя для сервисов, в которые мы внесли изменения.
Всем, кто сможет помочь - спасибо
Нравится
Возможно, настройки хранятся в записи с совсем другим значением поля ObjectId. Это можно увидеть, если сделать выборку из таблицы по дате изменений:
[sql]
SELECT TOP 1000 [Id]
,(select max([Name]) from [SysSchemaInSolution] where [SysSchemaId] = [ObjectId])
,[ModifiedOn]
,[CreatedOn]
,[CreatedById]
,[ModifiedById]
,[SysUserId]
,[ObjectId]
,[Key]
,[ObjectData]
,[ObjectDifference]
FROM [SysProfileData]
order by [ModifiedOn] desc
[/sql]
Если меняем настройки колонок в нескольких разделах, появляются изменённые записи, все связанные со схемой MainPage, но с разным значением поля Key.
Попробуйте поменять настройки средствами пользователя и посмотреть, какие записи при этом обновятся.