|
Перехватить/изменить метод стандартного контрола
|
|||
---|---|---|---|
#18+
ROIAIzotovпропущено... В принципе это не важно. Важно понимать смогу ли я добавить свою логику в класс. В Access нет такого понятия как переопределения методов класса. Ну и классы в нем закрытые так - что увы. Я не очень понял, что же хочет сделать автор темы, но в Аксесе можно создавать свои классы и в них делать всё, что хочется. В том числе, перехватывать события контролов Код: vbnet 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
04.09.2018, 16:04 |
|
Перехватить/изменить метод стандартного контрола
|
|||
---|---|---|---|
#18+
AIzotov, Перечитал все ваши посты в теме и вспомнилась фраза из анекдота - "Ты не мудри, ты пальцем покажи" Бизнес-логика, Enabled, Locked... И при этом "не хочется копаться во всём коде" Приведите пример (а не абстрактные рассуждения) как вам видится процесс управления доступом к контролам AIzotovПозволяет ли Access такие вольности? Аксес вполне нормальная среда разработки, с весьма развитым языком, так что позволяет он очень много. Главное, понять чего хочешь и нагуглить пример реализации (почти не шутка) ... |
|||
:
Нравится:
Не нравится:
|
|||
04.09.2018, 16:12 |
|
Перехватить/изменить метод стандартного контрола
|
|||
---|---|---|---|
#18+
Кривцов Анатолий... затем переходите на новую запись Это не ленточная форма. По поводу свойства Tag можно подумать. Условное форматирование, как мне кажется, недостаточно гибкий вариант. Плюс есть органичения - не для всех контролов работает. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.09.2018, 18:08 |
|
Перехватить/изменить метод стандартного контрола
|
|||
---|---|---|---|
#18+
Аллюр Д.Приведите пример (а не абстрактные рассуждения) как вам видится процесс управления доступом к контролам Пример вроде бы привел. Может он и абстрактный, но достаточно точно описывает работу приложения. Процесс управления простой: есть таблица с перечнем всех ролей и их полномочиями по доступу к контролам. После отработки бизнес-логики, приведенной в предыдущем примере, нужно только проверить, разрешен ли данный конкретный контрол текущей роли (найти запись роль-форма-контрол) и запретить/разрешить его. Ну не знаю как по-другому объяснить. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.09.2018, 18:22 |
|
Перехватить/изменить метод стандартного контрола
|
|||
---|---|---|---|
#18+
>>Ну не знаю как по-другому объяснить. Да все понятно объясняете. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.09.2018, 18:46 |
|
Перехватить/изменить метод стандартного контрола
|
|||
---|---|---|---|
#18+
AIzotovАллюр Д.Приведите пример (а не абстрактные рассуждения) как вам видится процесс управления доступом к контролам Пример вроде бы привел. Может он и абстрактный, но достаточно точно описывает работу приложения. Процесс управления простой: есть таблица с перечнем всех ролей и их полномочиями по доступу к контролам. После отработки бизнес-логики, приведенной в предыдущем примере, нужно только проверить, разрешен ли данный конкретный контрол текущей роли (найти запись роль-форма-контрол) и запретить/разрешить его. Ну не знаю как по-другому объяснить. Дык объясните, что конкретно у вас не получается? А так на событие открытие формы вешаете обработчик доступа и делайте с вашими контролами что хотите PS: я не думаю что обрабатывать нужно все ваши 100 форм. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.09.2018, 05:18 |
|
Перехватить/изменить метод стандартного контрола
|
|||
---|---|---|---|
#18+
[quot ROI]AIzotovДык объясните, что конкретно у вас не получается? А так на событие открытие формы вешаете обработчик доступа и делайте с вашими контролами что хотите PS: я не думаю что обрабатывать нужно все ваши 100 форм. На данный момент у меня не получается объяснить задачу, чтобы ВСЕ поняли. Все остальное получается. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.09.2018, 09:13 |
|
Перехватить/изменить метод стандартного контрола
|
|||
---|---|---|---|
#18+
Predeclared>>Ну не знаю как по-другому объяснить. Да все понятно объясняете. Тогда вы объясните непонимающим ... |
|||
:
Нравится:
Не нравится:
|
|||
05.09.2018, 10:23 |
|
Перехватить/изменить метод стандартного контрола
|
|||
---|---|---|---|
#18+
AIzotovROIДык объясните, что конкретно у вас не получается? А так на событие открытие формы вешаете обработчик доступа и делайте с вашими контролами что хотите PS: я не думаю что обрабатывать нужно все ваши 100 форм. На данный момент у меня не получается объяснить задачу, чтобы ВСЕ поняли. Все остальное получается. Если некий контрол уже имеет Enable=False, то повторное Enable=False ему не повредит. Если бизнес-логика запрещает давать этому контролу Enable=True, то надо либо хранить информацию об этом запрете, как уже предлагали в Tag (заполняется, например, в событии Open формы), либо каждый раз запрашивать из таблицы ролей. В некую унифицированную процедуру передавать имя формы и имя контрола и делать выборку по этим условиям, дополним id роли текущего пользователя. Минимизировать усилия по допиливанию форм, скорее всего, сильно не получится. Чуть выше я писал про собственный класс, но ради отслеживания одного события After_Update - овчинка не стоит выделки. Так что я бы просто прошёлся вручную по всем нужным контролам и дописал вызов общей функции ... |
|||
:
Нравится:
Не нравится:
|
|||
05.09.2018, 10:36 |
|
Перехватить/изменить метод стандартного контрола
|
|||
---|---|---|---|
#18+
Аллюр Д.Так что я бы просто прошёлся вручную по всем нужным контролам и дописал вызов общей функции Дык я же это и предлагал http://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1301929&msg=21662817 ... |
|||
:
Нравится:
Не нравится:
|
|||
05.09.2018, 10:49 |
|
Перехватить/изменить метод стандартного контрола
|
|||
---|---|---|---|
#18+
Аллюр Д.Predeclared>>Ну не знаю как по-другому объяснить. Да все понятно объясняете. Тогда вы объясните непонимающим Так что тут объяснять? Легкого и/или "красивого" решения этой задачи пока не нарисовывается. Остается только посочувствовать ТС, так он вроде как не за этим сюда пришел. Не? ... |
|||
:
Нравится:
Не нравится:
|
|||
05.09.2018, 13:29 |
|
Перехватить/изменить метод стандартного контрола
|
|||
---|---|---|---|
#18+
так то есть функция поиска в модулях,формах, запросах и пр.(где то на форуме было упоминание) найти те события, да добавить в них Код: vbnet 1.
а там уж дело техники... ... |
|||
:
Нравится:
Не нравится:
|
|||
05.09.2018, 13:49 |
|
|
start [/forum/topic.php?fid=45&gotonew=1&tid=1611203]: |
0ms |
get settings: |
9ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
157ms |
get topic data: |
8ms |
get first new msg: |
6ms |
get forum data: |
2ms |
get page messages: |
45ms |
get tp. blocked users: |
1ms |
others: | 12ms |
total: | 259ms |
0 / 0 |