Собственно возникла разовая задача классической лоскутной автоматизации "вдолби структурированные данные на филиалах, собери в центре в сводную шахматку".
Раньше, когда в ацессе был ADP, подобные задачи легко решались конструированием БД и конверсией её в клиент-серверное приложение MSSQL с ADP/ADE-клиентом. Сейчас проблема - нужно жёстко разграничить вводимые данные данные, чтобы филиал А, долбя данные в форму/таблицу никакими действиями (в т.ч. опытный пользователь ацесс, умеющий пользоваться кнопкой "Связи с таблицами") не мог подлезть к записям таблиц, которые вводит филиал Б.
Возникла мысль сделать структуру БД по такой вот схеме:
1) конструируем структуру таблиц хранения данных на MSSQLе,
2) каждую (либо JOIN между ними) обвязываем View, который условие WHERE вьюхи строит от CURRENT_USER - т.е. каждый пользователь видит во вьюхе только свои данные.
3) таблицы (п.1) делаем настройками MSSQLя недоступными для конечных пользователей - чтобы через odbc к ним подлезть не могли.
4) вьюхи (п.2) авторизация по доменной учётке/группе конечных пользователей, и на них строим формы ввода. В итоге, по идее должно получиться, что каждый пользователь долбит и видит только свои записи. А визард построения формы ввода работает с одинаковой "статичной" вьюхой (никаких динамических WHERE в коде на клиенте - т.е. vba-макросы форм можно даже не закрывать паролем).
5) для построения сводных шахматок "в центре" придётся построить ещё дополнительные вьюхи, и раграничить доступ другой доменной группой.
Покритикуйте идею плиз, может ктото уже изобретал подобный "велосипед".
Собственно конечная цель - не спрыгивать со старого-доброго ацесса на всякое новомодное "web-чтонибудь". Потому как хотелосьы бы сохранить удобство проектирования на коленке всяких "лоскутков" по нечётким ТЗ (и перепроектирования по 10 раз "ой мы забыли вам сообщить, нам вот тут ещё и это приплюсовать надо").
http://www.sql.ru/forum/1301257/access-odbc-mssql-i-razgranichenie-dostupa-k-dannym