Узнайте, как создать новую учетную запись, распределить права доступа и предоставить лицензию пользователю. Это просто!
Видео доступно по ссылке

Больше видеоуроков смотрите в разделе "Видеокурсы".

Нравится

Поделиться

0 комментариев
Показать все комментарии

Добрый день,
Как перенести пользователя в другую группу например "Системные администраторы", в реестре "Администрирование: Пользователи" отсутствует панель деталей, в частности деталь "Входит в роль", нет кнопки "Актуализировать орг. структуру"
1
Также в "Администрирование: Доступ к объектам" отсутствуют детали распределение прав
1

Нравится

2 комментария

Здравствуйте, Олег!

Ошибка возникает из-за того, что добавилась новая культура «EN-US», а записей в таблицах с локализированными строками для этой культуры нет.
В последних сборках 7.4 исправлено (рекомендуем обновиться до последней релизной версии).

Вот решение без обновления:

Выполнить sql-скрипт, флашнуть редис, перелогиниться.

DECLARE
@tableName nvarchar(250),
@command nvarchar(max),
@createdOn datetime,
@createdById uniqueidentifier,
@enGBCultureId uniqueidentifier,
@enUSCultureId uniqueidentifier

Set @command = '';
Set @createdById = '410006E1-CA4E-4502-A9EC-E54D922D2C00';
Set @enGBCultureId = 'A5420246-0A8E-E111-84A3-00155D054C03';
Set @enUSCultureId = 'D294EECE-62E7-46DA-ACA3-381D2E825C7D';

DECLARE LczTablesCursor CURSOR LOCAL FOR
Select TABLE_NAME From INFORMATION_SCHEMA.TABLES
Where TABLE_NAME like '%Lcz'

OPEN LczTablesCursor
FETCH NEXT FROM LczTablesCursor INTO @tableName
WHILE @@FETCH_STATUS = 0
BEGIN
SET @command = N'insert into [' + @tableName + ']
([Id], [CreatedOn], [CreatedById], [ModifiedOn], [ModifiedById], [ProcessListeners], [RecordId], [ColumnUId], [SysCultureId], [Value])
select
NEWID(),
SYSDATETIME(),
''' + Convert(varchar(50), @createdById) + ''',
SYSDATETIME(),
''' + Convert(varchar(50), @createdById) + ''',
[ProcessListeners],
[RecordId],
[ColumnUId],
''' + Convert(varchar(50), @enUSCultureId) + ''',
[Value]
from [' + @tableName + ']
where
[SysCultureId] = ''' + Convert(varchar(50), @enGBCultureId) + ''';
';

print @command;
exec(@command);

FETCH NEXT FROM LczTablesCursor INTO @tableName
END
CLOSE LczTablesCursor
DEALLOCATE LczTablesCursor

Спасибо, сработало

Показать все комментарии

Здравствуйте!
Два вопроса по администрированию пользователей
1. Ограничить доступ к вкладке, к примеру, "Маркетинг"
2. Закрыть для обычных пользователей детали "входит в группы", "взаимосвязи"

Нравится

7 комментариев

Здравствуйте, Эмин!

1. Управлять доступом непосредственно на Рабочие места не получится. Но, ограничив доступ на все разделы в данном рабочем месте, рабочее место пропадет из представления автоматически.

Для того, чтобы запретить доступ к разделу пользователю/группе пользователей, необходимо активировать администрирование по операциям и добавить запрет на все типы операций на раздел:

http://i.piccy.info/i9/76d41e545a17a7d24655b93a5f460751/1394111483/106822/710520/1.jpg

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

http://i.piccy.info/i9/507a190ab560e5b050ff65b5f29678f5/1394122797/31652/710520/06_03_2014_18_19_37.png

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

Спасибо за ответ.
По поводу детали. Деталь "Доступ" скрыть не удается. Она не отображается при настройке рабочих мест, соответственно ее нельзя удалить. Но если мы заходим в реестр любого модуля, то видим в деталях вкладку "Доступ". Данная вкладка доступна обычным пользователям. Как можно ее скрыть?

Здравствуйте, Эмин.

Если объект раздела администрируется по записям, то в разделе появляется деталь "Доступ". Это заложено в ядре.

Тем не менее, если Вы желаете эту деталь скрыть для отображения для пользователей без прав системного администратора, но при этом, чтобы объект администрировался по записям, необходимо в ScriptTask для события PageLoadComplete раздела прописать следующий код:

Guid roleId = new Guid("83A43EBC-F36B-1410-298D-001E8C82BCAD"); //системные администраторы
Guid currentUserId = UserConnection.CurrentUser.Id;
var esq = new EntitySchemaQuery(UserConnection.EntitySchemaManager, "SysUserInRole");
esq.AddColumn("Id");
esq.AddColumn("SysRole");
esq.Filters.Add(esq.CreateFilterWithParameters(FilterComparisonType.NotEqual, 
                "SysUser", currentUserId));
var rolesCollection = esq.GetEntityCollection(UserConnection);
foreach(var role in rolesCollection) {
                if (role.GetTypedColumnValue<Guid>("SysRoleId") == roleId) {
                               for (var i = 0; i != Page.DetailsTabPanel.Tabs.Count - 1; i++) {
                                               if (Page.DetailsTabPanel.Tabs[i].Caption.ToString() == "Доступ") {
                                                               Page.DetailsTabPanel.Tabs[i].Visible = false;
                                               }
                               }
                }
}
return true;

"Безродный Андрей" написал:

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

Эмин, необходимо выгрузить данные, сами они туда не попадут.
На событии PageLoadComplete следует получить экземпляр источника данных, при необходимости наложить фильтры и выполнить LoadRows().
Очень наглядный пример есть в методе PrepareSchedule(), процесса страницы ManagersModulePage.

Еще раз по разграничению доступа к вкладкам (Маркетинг, Продажа и тп). К примеру доступ к вкладке Инструменты доступен только админам, необходимо сделать по аналогии, чтобы каждой роли была видна своя вкладка и все. В каком Процессе скрывается вкладка Инструменты?

Администрирования доступа к рабочим местам не существует. Рабочее место будет скрыто, если у пользователя нет прав доступа на все разделы, которые включены в данное рабочее место.

Показать все комментарии