AXForum  
Вернуться   AXForum > Microsoft Dynamics AX > DAX: Функционал
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 11.12.2006, 16:42   #1  
AlexeyBP is offline
AlexeyBP
Участник
Axapta Retail User
 
290 / 36 (2) +++
Регистрация: 18.10.2005
Адрес: Тюмень
Права доступа на поля формы.
Необходимо на форме Номенклатурные единицы на вкладке Цена/Скидка на группу полей Закупка настроить права доступа в режим Нет доступа.
А Axapta позваляет снять доступ например для поля Цена сразу для все групп полей (Закупка, Склад, Заказ), а снять доступ для поля Цена из какой либо конкретной группы полей не позволяет.
Может я что то не нашел или так задумано?
__________________
Алексей
Старый 11.12.2006, 16:52   #2  
raz is offline
raz
NavAx
Аватар для raz
NavAx Club
Лучший по профессии 2014
Лучший по профессии 2009
 
1,494 / 1065 (38) ++++++++
Регистрация: 22.07.2003
Адрес: МО
Советую ограничивать на поля таблицы для нужных групп пользователей.
Изображения
 

Последний раз редактировалось raz; 11.12.2006 в 16:56.
За это сообщение автора поблагодарили: Logger (3).
Старый 11.12.2006, 17:08   #3  
KiselevSA is offline
KiselevSA
Злыдни
Аватар для KiselevSA
Злыдни
Лучший по профессии 2015
 
958 / 333 (13) ++++++
Регистрация: 25.01.2002
Адрес: Москва
Цитата:
Сообщение от raz Посмотреть сообщение
Советую ограничивать на поля таблицы для нужных групп пользователей.
Не получится, т.к. поле цена находится в InventTableModule и это единственное поле. Надо добавлять ключи доступа и анализировать в коде
__________________
люди...считают, что если техника не ломается, то ее не нужно ремонтировать. Инженеры считают, что если она не ломается, то нуждается в совершенствовании.
Старый 11.12.2006, 17:40   #4  
raz is offline
raz
NavAx
Аватар для raz
NavAx Club
Лучший по профессии 2014
Лучший по профессии 2009
 
1,494 / 1065 (38) ++++++++
Регистрация: 22.07.2003
Адрес: МО
Стормозил.
Тогда проще свой секьюрити кей сделать и повесить его на поле или группу контролов на форме. И им рулить.
Можно и в коде, но проще повесить на контролы.
Старый 11.12.2006, 20:56   #5  
AndyD is offline
AndyD
Участник
КОРУС Консалтинг
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
 
2,560 / 2479 (88) +++++++++
Регистрация: 20.08.2005
По хорошему, если SecurityKey вешается на контрол, то надо бы для поля устанавливать AllowAdd в False, иначе, если у пользователя будет право добавлять поля на форму, он сможет его изменять
__________________
Axapta v.3.0 sp5 kr2
Старый 12.12.2006, 11:50   #6  
Maxim Gorbunov is offline
Maxim Gorbunov
Administrator
Соотечественники
Лучший по профессии 2009
 
2,483 / 645 (26) +++++++
Регистрация: 27.11.2001
Адрес: Dubai, UAE
В принципе, есть другой метод (без создания SecurityKey), хотя он, возможно, и менее надежен.

Есть такие таблички - SysSecurityFormTable и SysSecurityFormControlTable. Обычно они используются для настройки доступа к контролам, привязанным к display- или edit- методам, но на самом деле их можно использовать для настройки доступа к любому произвольному контролу формы. Не буду вдаваться в подробности, кому интересно - смотрите класс SysSecurityFormSetup, просто опишу, как настроить доступ так, как написано в первом сообщении.

Во-первых, создайте запись в форме SysSecurityFormTable (можно использовать обычный Table browser). В поле FormName напишите InventTable, DomainId - домен, в котором Вы настраиваете доступ, UserGroupId - соответственно, группа, для которой этот доступ настраивается.

Далее, создайте запись в таблице SysSecurityFormControlTable. В поле SysSecurityFormId выберите ссылку на запись, созданную в SysSecurityFormTable (это RecId, так что имеет смысл воспользоваться lookup'ом). В FormControlName укажите PriceDiscPurch. Это имя контрола из формы InventTable (та самая группа полей Закупка на закладке Цена/Скидка). FormControlType - Group. Далее, важный момент, нужно указать FormControlId. Если у вас есть доступ к разработке, то самое простое - зайти в форму InventTable и после super() в методе init() написать что-нибудь вроде:
X++:
info(int2str(control::PriceDiscPurch));
. Если доступа нет, этот id все равно можно узнать, исправив пользовательские настройки формы InventTable и посмотрев в форму Использование данных. Как бы то ни было, у меня контролу PriceDiscPurch соответствует id 12347. Его и указываем. Наконец, в поле AccessType выставьте желаемый уровень доступа (View или NoAccess).

В свое время я, помнится, писал интерфейс для этих действий. Сделано это было в рамках одного из проектов, так что, думаю, теперь этот интерфейс можно считать собственностью mazzy
__________________
Not registered yet? Register here!
Have comments, questions, suggestions or anything else regarding our web site? Don't hesitate, send them to me
За это сообщение автора поблагодарили: Logger (1).
Старый 12.12.2006, 12:02   #7  
Maxim Gorbunov is offline
Maxim Gorbunov
Administrator
Соотечественники
Лучший по профессии 2009
 
2,483 / 645 (26) +++++++
Регистрация: 27.11.2001
Адрес: Dubai, UAE
Цитата:
Сообщение от AndyD Посмотреть сообщение
По хорошему, если SecurityKey вешается на контрол, то надо бы для поля устанавливать AllowAdd в False, иначе, если у пользователя будет право добавлять поля на форму, он сможет его изменять
Как вариант, забрать у пользователя права на ключ Development/Morph X/Add fields, но тогда нельзя будет добавлять поля ни в одной форме, а не только в InventTable.
__________________
Not registered yet? Register here!
Have comments, questions, suggestions or anything else regarding our web site? Don't hesitate, send them to me
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
права доступа Himan DAX: Функционал 9 24.09.2010 16:52
Права доступа Группы пользователей к таблице ta_and DAX: Администрирование 2 19.01.2009 15:19
Ошибка при настройке прав доступа поля "Используется" журнала ордеров Zepp DAX: Администрирование 2 22.06.2007 15:35
Права доступа - Журнал платежей SDA DAX: Прочие вопросы 1 20.09.2004 23:10
Русская локализация Axapta 3 ? SlavaK DAX: Администрирование 59 01.07.2003 22:38

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

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 21:04.