![]() |
#7 |
Administrator
|
В принципе, есть другой метод (без создания 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)); В свое время я, помнится, писал интерфейс для этих действий. Сделано это было в рамках одного из проектов, так что, думаю, теперь этот интерфейс можно считать собственностью 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). |