Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft Access Новый топик    Ответить
Топик располагается на нескольких страницах: [1] 2 3   вперед  Ctrl      все
 Организация доступа  [new]
Lekks
Member

Откуда:
Сообщений: 147
Здравствуйте все!

Планируется наличие четырех групп пользователей:
1. С полным доступом
2. Аналитики - работа с отчетами (непрямая, через формы)
3 и 4. Регистраторы - непосредственно наполняют базу данных, они двух типов, при этом большая часть регистрируемых данных одинакова, различия в дополнительных данных, т.е. в принципе буду наполнять одну основную таблицу, но некоторые поля будут различаться.

Хотелось бы услышать ваше мнение о наиболее оптимальном способе предоставления доступа в применении к данной ситуации.

Сам вообще думал:
1. создавать разные формы для каждого типа и в зависимости от введенного пароля менять свойства доступа.

или

2. На главной форме опять же по результату проверки пароля менять свойство Visible элементов управления.

Данная база - первый проект, больший чем таблица + 2 формы + отчет, так что прошу сильно не критиковать идеи ))))
26 окт 18, 18:37    [21716505]     Ответить | Цитировать Сообщить модератору
 Re: Организация доступа  [new]
Predeclared
Member

Откуда: And God I know I'm one
Сообщений: 897
Lekks
... 3 и 4. Регистраторы - ..., при этом большая часть регистрируемых данных одинакова, различия в дополнительных данных, т.е. в принципе буду наполнять одну основную таблицу, но некоторые поля будут различаться...

Есть сомнения в правильности схемы данных.

Для каждой роли, после авторизации, создается свое меню приложения,
элементы которого дают доступ к формам/отчетам, прописанным этой роли.

Возможна настройка видимости/доступности некоторых элементов форм при их открытии,
в зависимости от роли текущего пользователя.
26 окт 18, 19:03    [21716519]     Ответить | Цитировать Сообщить модератору
 Re: Организация доступа  [new]
Lekks
Member

Откуда:
Сообщений: 147
Predeclared
Есть сомнения в правильности схемы данных


У самого иногда возникают, проверяю - нет, вроде все нормально )))))
Я наверное неправильно выразился. Два типа регистраторов наполняют одну таблицу, но кроме этого, одни вносят данные (например, изображения) в другую таблицу, а вторые этого не делают, вторые должны будут выводить отчет по основной таблице за определенный период (за смену), первым этого не надо. Данные по основной таблице не различаются.
27 окт 18, 05:58    [21716706]     Ответить | Цитировать Сообщить модератору
 Re: Организация доступа  [new]
Lekks
Member

Откуда:
Сообщений: 147
Predeclared

Для каждой роли, после авторизации, создается свое меню приложения,
элементы которого дают доступ к формам/отчетам, прописанным этой роли.

Возможна настройка видимости/доступности некоторых элементов форм при их открытии,
в зависимости от роли текущего пользователя.


Ну то есть обобщенно оба предложенных мною варианта вместе но для стартовых форм, представляющих собой меню?

А как организовать невидимость или недоступность вызываемых форм? Ну, чтобы особо любопытные непосредственно в Access в чужие формы не лезли?
27 окт 18, 06:05    [21716707]     Ответить | Цитировать Сообщить модератору
 Re: Организация доступа  [new]
Lekks
Member

Откуда:
Сообщений: 147
На всякий случай схема данных (неполная, несколько таблиц в базу еще не введены)

К сообщению приложен файл. Размер - 46Kb
27 окт 18, 06:18    [21716710]     Ответить | Цитировать Сообщить модератору
 Re: Организация доступа  [new]
alecko
Member

Откуда: Башкирия
Сообщений: 548
Lekks, формы создаются для решения задачи и не зависят от группы пользователя и его роли, а на этой форме уже кнопки и пр. делаются доступными/видимыми в зависимости от роли.
p.s. мне лично нравится динамическое построение форм, т.е. в общем случае есть одна форма на весь проект и она создается в зависимости от задачи и здесь может быть приплетена (изменение формы) и роль.
27 окт 18, 12:00    [21716766]     Ответить | Цитировать Сообщить модератору
 Re: Организация доступа  [new]
vmag
Member

Откуда: MP
Сообщений: 3235
alecko
Lekks, формы создаются для решения задачи и не зависят от группы пользователя и его роли, а на этой форме уже кнопки и пр. делаются доступными/видимыми в зависимости от роли.


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

Более правильный и полный ответ (где есть и стратегия и тактика) был ранее...

Predeclared
Для каждой роли, после авторизации, создается свое меню приложения,
элементы которого дают доступ к формам/отчетам, прописанным этой роли.

Возможна настройка видимости/доступности некоторых элементов форм при их открытии,
в зависимости от роли текущего пользователя.


Со вторым утверждением тоже не так всё просто, особенно для начинающего, можно сделать 10 обычных проектов за то время которое уйдет на изготовление и отладку динамической формы...
27 окт 18, 13:47    [21716821]     Ответить | Цитировать Сообщить модератору
 Re: Организация доступа  [new]
Lekks
Member

Откуда:
Сообщений: 147
Predeclared
Для каждой роли, после авторизации, создается свое меню приложения,
элементы которого дают доступ к формам/отчетам, прописанным этой роли.


А поподробнее можно? или пример?
27 окт 18, 15:54    [21716866]     Ответить | Цитировать Сообщить модератору
 Re: Организация доступа  [new]
Predeclared
Member

Откуда: And God I know I'm one
Сообщений: 897
На скрине:
верхняя менюшка для регистраторов
средняя менюшка для полного доступа
нижняя менюшка для аналитиков

К сообщению приложен файл. Размер - 46Kb
27 окт 18, 21:58    [21717021]     Ответить | Цитировать Сообщить модератору
 Re: Организация доступа  [new]
Predeclared
Member

Откуда: And God I know I'm one
Сообщений: 897
Lekks
На всякий случай схема данных...

Сомнения меня не обманули.
27 окт 18, 22:02    [21717025]     Ответить | Цитировать Сообщить модератору
 Re: Организация доступа  [new]
Lekks
Member

Откуда:
Сообщений: 147
Predeclared
Lekks
На всякий случай схема данных...

Сомнения меня не обманули.


Ваши рекомендации?
28 окт 18, 11:58    [21717159]     Ответить | Цитировать Сообщить модератору
 Re: Организация доступа  [new]
Lekks
Member

Откуда:
Сообщений: 147
Predeclared, за информацию о меню приложения спасибо. До этого в литературе и в примерах не наталкивался.
28 окт 18, 12:06    [21717162]     Ответить | Цитировать Сообщить модератору
 Re: Организация доступа  [new]
Озверин
Member

Откуда: Ростов-на-Дону
Сообщений: 5183
Lekks, а база mdb\mde или accdb?
28 окт 18, 12:34    [21717172]     Ответить | Цитировать Сообщить модератору
 Re: Организация доступа  [new]
Lekks
Member

Откуда:
Сообщений: 147
Озверин
Lekks, а база mdb\mde или accdb?


accdb
28 окт 18, 12:38    [21717175]     Ответить | Цитировать Сообщить модератору
 Re: Организация доступа  [new]
Озверин
Member

Откуда: Ростов-на-Дону
Сообщений: 5183
Lekks,

создавать разные формы для одинаковых данных - довольно сложная в поддержке вещь. Приведу пример: есть две формы, которые(по сути у вас) реализуют доступ к одним и тем же данным, но выводят разные контролы. Вдруг, по какой то причине, обработка данных изменилась. Придется менять сразу две формы, а если групп больше - то и форм больше. У этого подхода есть плюс - такие формы проще менять, если изменения не касаются друг друга(других форм с аналогичными данными, но другими правами).

Я бы выбрал все-таки вариант с одной формой(для одинаковых данных), и, в зависимости от типа группы:
- все-таки не делал поля инвизбл, ибо это сильно влияет на внешний вид формы(пустые дыры в форме напрягают), а делал enabled=false
- соответственно и контролы тоже enabled=false\true

Я бы перестраивал пункты меню в зависимости от типа группы, скрывая абсолютно недоступные элементы, но - это вопрос такой. Перестройка меню при старте приложения - может отнимать время и вызывать странную реакцию самого акса(подергивания, например), что меня очень нервирует. Потому, права на работу в очередной форме вешал бы на Form_Open, а пункты меню оставлял бы на месте, до тех пор, пока не разобрался бы и не выделил время на "идеальное" поведение приложения при перестройке меню и до тех пор, пока вы не получите достаточно опыта, чтобы написать эту перестройку при старте.

Насчет организации в таблице. Наверняка, всю систему трудно заточить на одни лишь данные(вставку в таблицу, чтение), потому что существуют разные аналитические отчеты, которые выводят много чего откуда - запутаетесь короче. Потому я считаю целесообразным давать права на формы (отчеты) в целом и внутри форм на конкретные возможности.

Таблица таких прав, наверное, могла бы выглядеть так:

id right_name right_value description
1 ПроводкаНакладных True Возможность проводить накладные(Да/Нет)


Лучше, конечно, подобные права сразу объединять как-нибудь в блоки по функиональному признаку, например. К примеру, все, что касается накладных - можно было найти по одной группе, но это уже такое.

id group_name right_name right_value description
1 ГруппаПравНакладные Проводка True Возможность проводить накладные(Да/Нет)
28 окт 18, 13:23    [21717196]     Ответить | Цитировать Сообщить модератору
 Re: Организация доступа  [new]
Lekks
Member

Откуда:
Сообщений: 147
Озверин
Lekks,

Я бы выбрал все-таки вариант с одной формой(для одинаковых данных), и, в зависимости от типа группы:
- все-таки не делал поля инвизбл, ибо это сильно влияет на внешний вид формы(пустые дыры в форме напрягают), а делал enabled=false
- соответственно и контролы тоже enabled=false\true

права на работу в очередной форме вешал бы на Form_Open, а пункты меню оставлял бы на месте


Спасибо, учту. Enabled действительно наверное предпочтительнее, к тому же различия в 5-6 элементах, "дырок" многовато будет )))
28 окт 18, 13:35    [21717208]     Ответить | Цитировать Сообщить модератору
 Re: Организация доступа  [new]
Lekks
Member

Откуда:
Сообщений: 147
Еще по ходу вопрос: Runtime создается только изменением расширения файла?
28 окт 18, 14:41    [21717254]     Ответить | Цитировать Сообщить модератору
 Re: Организация доступа  [new]
Озверин
Member

Откуда: Ростов-на-Дону
Сообщений: 5183
Lekks
Еще по ходу вопрос: Runtime создается только изменением расширения файла?


по моему даже рантайм запустит такой вариант, если он будет удовлетворять всем условиям, но вообще - нет.

http://www.databasedev.co.uk/microsoft-access-mde.html
28 окт 18, 15:28    [21717274]     Ответить | Цитировать Сообщить модератору
 Re: Организация доступа  [new]
Lekks
Member

Откуда:
Сообщений: 147
Озверин
http://www.databasedev.co.uk/microsoft-access-mde.html


mde и accde в области переходов показывают все наполнение БД, в том числе прилинкованные таблицы. Мне же желательно чтобы области переходов вообще пользователи не видели. Как в рантайме
28 окт 18, 16:26    [21717314]     Ответить | Цитировать Сообщить модератору
 Re: Организация доступа  [new]
Lekks
Member

Откуда:
Сообщений: 147
1. Делаешь ярлык на mdb-ху.
2. В самой базе создаешь макрос autoexec.mdb, в нем указываешь че надо по загрузке базы - вызов форм, какие-т заставки, расчеты и т.п.
3. Лезешь в менюху, "Параметры запуска" там вырубаешь все аксессные менюхи, дебуггер и т.п. ЧТоб запустить со всей этой лабудой надо во время загрузки удерживать шифт.

Еще вот так нашел. Только через макрос обязательно? Или можно программно? И кусочек кода тогда если есть))))

Как мёд, так и ложкой ))))
28 окт 18, 16:44    [21717322]     Ответить | Цитировать Сообщить модератору
 Re: Организация доступа  [new]
vmag
Member

Откуда: MP
Сообщений: 3235
Lekks
Еще по ходу вопрос: Runtime создается только изменением расширения файла?


Для начала вам нужно понять, что несмотря на то, что сам Акцесс и его vba относительно не сложные в освоении, но всё таки это не крекс-пекс-фекс ...

MS Access - это программное обеспечение включающее среду разработки баз данных и интерфейсов к ним + среду выполнения проектов Access.
RuntimeAccess - это тоже программное обеспечение, но в нем только среда выполнения проектов Access. Его скачивают и устанавливают при продаже продуктов баз данных если на стороне клиента нет Офиса и он не планирует его покупать от слова совсем. То есть RuntimeAccess это не "расширение" это тот же Акцесс, только в нем нельзя залезть в конструктор форм, отчетов и модулей ибо эта возможность оттуда вырезана.

Lekks
3. Лезешь в менюху, "Параметры запуска" там вырубаешь все аксессные менюхи, дебуггер и т.п.
Еще вот так нашел. Только через макрос обязательно? Или можно программно? И кусочек кода тогда если есть))))


Не обязательно через макрос, там же (в "Параметры запуска") выбираешь форму для просмотра из своих готовых, от нее и начнутся все танцы, например с ввода пароля...
28 окт 18, 17:27    [21717335]     Ответить | Цитировать Сообщить модератору
 Re: Организация доступа  [new]
alecko
Member

Откуда: Башкирия
Сообщений: 548
Lekks, там все не просто, но закрыть можно. MSO какой?
28 окт 18, 17:43    [21717340]     Ответить | Цитировать Сообщить модератору
 Re: Организация доступа  [new]
Lekks
Member

Откуда:
Сообщений: 147
vmag
Для начала вам нужно понять, что несмотря на то, что сам Акцесс и его vba относительно не сложные в освоении, но всё таки это не крекс-пекс-фекс ...


Да это то понятно. Полгода пытаюсь изучать, но пожалуй и десятой части нюансов не видел))) И разницу между Access и RuntimeAccess тоже понимаю. Просто у забугорного товарища Мэтью Макдоналда прочитал про такой способ - изменение accdb на accdr, а другого способа в общем то и не знал)))

vmag
Lekks
3. Лезешь в менюху, "Параметры запуска" там вырубаешь все аксессные менюхи, дебуггер и т.п.
Еще вот так нашел. Только через макрос обязательно? Или можно программно? И кусочек кода тогда если есть))))


Не обязательно через макрос, там же (в "Параметры запуска") выбираешь форму для просмотра из своих готовых, от нее и начнутся все танцы, например с ввода пароля...


Я вообще-то вот это имел ввиду:

2. В самой базе создаешь макрос autoexec.mdb, в нем указываешь че надо по загрузке базы - вызов форм, какие-т заставки, расчеты и т.п.
28 окт 18, 17:54    [21717346]     Ответить | Цитировать Сообщить модератору
 Re: Организация доступа  [new]
Lekks
Member

Откуда:
Сообщений: 147
alecko
Lekks, там все не просто, но закрыть можно. MSO какой?


2007
28 окт 18, 17:56    [21717349]     Ответить | Цитировать Сообщить модератору
 Re: Организация доступа  [new]
vmag
Member

Откуда: MP
Сообщений: 3235
Lekks
Я вообще-то вот это имел ввиду:

2. В самой базе создаешь макрос autoexec.mdb, в нем указываешь че надо по загрузке базы - вызов форм, какие-т заставки, расчеты и т.п.


Я тоже это имел ввиду...
- макросы не обязательны.
- можно обойтись стартовой формой (например формой ввода пароля).
Если пароль не ввели правильно, - приложение закрывается.
Если пароль ввели правильно - открывается следующая форма - с меню, в состав которого входят режимы, соответствующие статусу пользователя, вам Predeclared выше картинок набросал
28 окт 18, 18:25    [21717359]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: [1] 2 3   вперед  Ctrl      все
Все форумы / Microsoft Access Ответить