Запросы на основе форм и разработки MS Access - PullRequest
1 голос
/ 26 сентября 2011

у меня есть 2 вопроса, когда я использую доступ:

  1. я создаю форму с comboBox и календарями, я хочу выбрать сотрудника из выпадающего списка, с даты и на дату, и когданажмите кнопку ОК, я отправлю эти параметры в запрос, чтобы вернуть результат в запросе (результат расчета его зарплаты).

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

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

1 Ответ

0 голосов
/ 26 сентября 2011

- Вы можете ссылаться на элемент управления формы в запросе:

 SELECT FROM MyTable 
 WHERE EmployeeID = Forms!MyForm!cboEmployee
 AND SomeDate BETWEEN Forms!MyForm!txtDateStart And Forms!MyForm!txtDateEnd

Вы также можете создать строку SQL и использовать ее в качестве источника записи для формы или в VBA.

- Доступ должен быть разделен на интерфейс (формы, отчеты и т. Д.) И фон (данные). Когда вы вносите изменения во внешний интерфейс, вы создаете новый mde или accde и отправляете его пользователям. Данные остаются на сервере в серверной части.

См .: http://msdn.microsoft.com/en-us/library/aa167840(v=office.11).aspx

EDIT

Из ваших комментариев кажется, что у каждого приложения есть один пользователь, в этом случае разделение не является обязательным, но все же может быть хорошей идеей. Пользователь получит две базы данных, одну для данных, другую для форм и т. Д., И будет заменена только одна для форм. Вам нужно будет включить подпрограмму для поиска и связывания внутренних таблиц.

Однако, если это невозможно, mde или accde не скрывают данные, вы можете отправить исправленную копию и включить подпрограмму для импорта из предыдущего mde / accde.

РЕДАКТИРОВАТЬ 2

Существуют мастера, которые разделят вашу базу данных и свяжут таблицы. Где вы их находите, немного варьируется от версии к версии, но они находятся в пункте меню «Инструменты базы данных». Единственная проблема в этом состоит в том, что связанная таблица содержит местоположение для серверной части, которая находится на вашем компьютере, а не на компьютере пользователя. Связанные таблицы - это способ доступа к данным во второй базе данных. Они действуют так, как будто в первой базе данных есть таблицы, за исключением того, что вы не можете их изменить. К сожалению, связанные таблицы содержат местоположение серверной части, поэтому ее придется изменить, если вы отправляете ее пользователям. Вы можете либо написать код, либо показать своему пользователю, как использовать менеджер связанных таблиц. Это может привести к путанице и может не стоить усилий для одного ПК. (См. Также http://www.alvechurchdata.co.uk/accsplit.htm)

Кроме того, вы можете разделить базу данных на своем ПК и внести все необходимые изменения в формы и т. Д., А затем добавить код, который будет импортировать таблицы и другие данные для пользователя в вашу новую копию. Пользователь будет следовать инструкциям в вашем коде для импорта таблиц. Кроме того, вы обнаружите, что разработка более безопасна для разделенной базы данных. Вы также должны время от времени декомпилировать, что вы можете найти в http://www.granite.ab.ca/access/decompile.htm.

Если вы хотите защитить свой код, вы можете создать скомпилированную версию этой новой копии, расширение для скомпилированной базы данных Access: * .accde, для 2007 года и * .mde для предыдущих версий. Это то, что, как я думал, вы имели в виду под «я знаю, как выпустить проект доступа».

...