2012-01-12 2 views
0

Я перемещаю несколько баз данных Access на сервер SQL 2008 R2, используя Access 2007 Projects в качестве интерфейсов, и мы сталкиваемся с проблемами, когда пользователи пытаются фильтровать данные из форм ,Проблемы с фильтрами формы проекта Access 2007

Пример:

У меня есть один файл установки проекта, так что пользователи могут искать данные о клиентах, и я использую логин на сервер, который имеет только «CONNECT» и «SELECT» права, поэтому они не могут изменить любой из данных. Единственная форма в этом проекте имеет источник записи, установленный непосредственно в таблицу, без просмотров или запросов. Если пользователь выбирает «Клиент №», а затем нажимает кнопку «Фильтр», выбирает «Текстовый фильтр» и вводит номер клиента, он получает ошибку «Ввести допустимое значение» (то же самое происходит, если они выбирают поле в форме и щелкните правой кнопкой мыши и попробуйте установить фильтр). Если пользователь использует «Advanced/Filter By Form», проблем нет.

Нет других фильтров, установленных на форме или в коде, без входных проверок, только в форме плана.

У кого-нибудь есть идеи, с чего начать отлаживать это?

Спасибо.

ответ

0

Сначала вам необходимо подтвердить, что это проблема разрешения MSSQL. Чтобы проверить это - попробуйте то же самое с пользователем MSSQL, у которого нет ограничений на доступ. Затем вы можете использовать профилировщик MSSQL, чтобы посмотреть, какие фактические операторы MSSQL отправляются Access. Я полагаю, что это не простой «SELECT», но это будут вызовы системных хранимых процедур (так работает Access с MSSQL). Посмотрите на эту трассировку и попробуйте понять разрешения, которые необходимо добавить. Если приложение Access работает на уровне таблиц, возможно, было бы легче отказаться от обновления/удаления вместо предоставления только выбора - не уверен, что это поможет, но это просто идея, что вы можете попробовать.

Смежные вопросы