Показать сообщение отдельно
Старый 23.06.2005, 00:56   #20  
sukhanchik is offline
sukhanchik
Administrator
Аватар для sukhanchik
MCBMSS
Злыдни
Лучший по профессии 2015
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3,275 / 3476 (122) ++++++++++
Регистрация: 13.06.2004
Адрес: Москва
Если 2.5 - то никакие. Только AccessRightsList. Беда в том, что НЕВОЗМОЖНО построить дерево средствами MS SQL, т.к. для построения дерева ипользуется информация о свойствах элемента АОТ - такая как какой SecurityKey (Feature Key) относится к такому-то пункту меню и какой пункт меню что вызывает (форму, класс и т.д.). А вот инфа об элементах АОТ хранится в файликах .aod, и никоим боком не пролетает в базе данных.
Однако, ответить на вопрос - а кто имеет такой-то доступ к такому-то пункту меню - получить можно. Пишется хранимая процедура, в которой в качестве параметра передается тип элемента и его ID (А вот уж как получить ID -отдельная песня). Далее делается банальный SELECT * FROM ACCESSRIGHTSLIST WHERE .... - все эти условия.
Для пунктов меню ID не нужен - в таблице сидит название меню. Информацию по таблицам и полям можно выковырять из таблицы SQLDICTIONARY - там аккурат сидит соответствие аксаптийных таблиц - SQL-ным. Правда там нет временных таблиц.
Вот ключей (Security, Feauture) вы там не найдете. Названия форм вроде тоже есть в ACCESSRIGHTSLIST, хотя лучше проверить.
Собсно говоря все....