Razbezhkin
@Razbezhkin
программист, преподаватель

Microsoft Access: разработка запросов с сортировкой и группировкой как в sql сервере?

Здравствуйте.

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


в базе две таблицы — одна — клиенты, вторая — заказы, первая — родительская, вторая — подчиненная.


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


вопрос: как сделать страницу со сгруппированным списком, это должно быть запросом или отчетом или еще чем-то в терминах access?
  • Вопрос задан
  • 4139 просмотров
Пригласить эксперта
Ответы на вопрос 3
@art_karetnikov
Лучший мой проект: Мобильный банк Сбербанка РФ.
Если вы собираетесь править — то это должна быть форма. Править отчеты невозможно, править в запросах — нелепо.

Я бы сделал форму и подчиненную форму. Верхняя и две ниже расположенных:

Список клиентов

Данные клиента

Заказы клиента

Почитайте подробней про подчиненные формы.
Ответ написан
@art_karetnikov
Лучший мой проект: Мобильный банк Сбербанка РФ.
1. Делаем главную форму. В ней у вас — ну пусть список клиентов. и id клиента
2. Делаем подчиненную форму — в ней запрос с id клиента. По этим двум id связываете обе этих формы, по-моему, даже мастер это умеет.
далее при перемещении по строкам главной формы — автоматически будете попадать на такие же id во второй. Обе формы табличные. И можно редактировать прямо в них.
3. Если уж сил нет, как хочется по двойному клику — ну, ловите событие формы dbl_click и в нем делаете form open.
Ответ написан
@art_karetnikov
Лучший мой проект: Мобильный банк Сбербанка РФ.
Если запрос не позволяет редактировать данные — в вашем случае я бы поставил на то, что запрос составлен не корректно, а, к примеру, нет ключевых полей и ему просто не понятно — какую именно таблицу надо обновлять.

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

Id_Client всяко должен быть в заказе клиента. Id_Client не может не быть в информации о клиенте. В заказе это просто индексированное поле, в информации — primary key. Вяжите по ним. Если оба поля — int, все будет летать.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы