Малоизвестная или недооцененная возможность. Если вы хотите сохранить запрос под рукой для последующего использования, по считаете это слишком опасным
Скрытие запроса
Если вы хотите сохранить запрос под рукой для последующего использования, по считаете это слишком опасным, программа Access предоставляет более безопасную возможность. Вы можете скрыть запрос так, что он не будет выводиться в области переходов. В этом случае вы не воспользуетесь им по небрежности. Тот, кому он понадобится, вынужден будет отыскать его.
Для того чтобы скрыть запрос, щелкните его в области переходов правой кнопкой мыши и выберите команду Скрыть в данной группе(Hide in this Group). Запрос незаметно исчезнет из поля зрения.
Единственный способ вернуть в область переходов скрытый объект БД — щелкнуть правой кнопкой мыши заголовок области переходов (что-нибудь похожее на Все таблицы)и выбрать команду Параметры переходов(Navigation Options). Затем можно установить флажок Показывать скрытые объекты(Show Hidden Objects). Когда этот флажок установлен, скрытые объекты видны в области переходов, но они отображаются светло-серым цветом. Для возврата объекту нормального состояния видимости, щелкните его правой кнопкой мыши и выберите команду Показать в этой группе(Unhide in this Group).
Убедитесь в том, что вы не злоупотребили скрытием. Если это так, вы вынудите других включить режим Показывать скрытые объекты, который сделает видимыми и пригодными к использованию все запросы.
Если вас все еще беспокоит присутствие опасного запроса в вашей БД, рассмотрите возможность переноса запроса на изменение в совершенно отдельный файл БД и не разрешайте другим пользователям открывать этот файл. В разд. "Подготовка вашей базы данных" главы 18 приведена дополнительная информация о разделении БД на несколько файлов.
Учебный пример: маркировка заказов на товары, которых нет в наличии
У компании Boutique Fudge есть проблема. Компания производит свои товары небольшими партиями, и они быстро распродаются. Например, если их источник импортного дуриана иссякает, то же происходит и со всемирно известным продуктом Mocha Malaysian Espresso Milk (малазийский кофе Мокко эспрессо с молоком).
Однако активные покупатели продолжают заказывать товары, которых нет на складе. В конечном счете они получают их, но заказ продукта, которого нет на складе, может быть более долгим, одиноким и забытым в БД на недели. Компания Boutique Fudge могла бы уберечь клиента от неразберихи (не говоря уже о жажде), если бы смогла учесть клиентов, заказавших товары, которых нет в наличии, и предупредила их о необходимости ожидания.
Разработчики БД в компании Boutique Fudge подумали над этой проблемой и решили, что им нужно поле в таблице Orders,позволяющее пометить заказы, находящиеся в состоянии ожидания из-за отсутствия на складе ингредиентов. Решено было использовать поле с Логическим типом данных, названное OnHold(в ожидании). В этом случае, когда рабочие склада подготавливают заказ, они могут сэкономить время, игнорируя заказы, находящиеся в состоянии ожидания. А отдел обслуживания клиентов может отследить клиентов, поместивших эти заказы, и объяснить им причину задержки.
Пока в этом примере нет ничего нового. Но в нем есть одна хитрость: компания Boutique Fudge хочет автоматизировать процесс задания значений в поле OnHold.Она рассчитывает выполнить запрос, который проверит поле UnitsInStock(единиц на складе) в таблице Productsи затем установит значение Да в поле OnHoldдля всех находящихся в работе заказов, включающих товары, которых "нет в наличии" (out-of-stock). Теперь, когда вы научились создавать запросы на изменение, вы можете рассмотреть эту хитроумную головоломку.
Как и многие проблемы в программе Access, эту задачу можно решить шаг за шагом. В данном примере вы решите ее созданием двух отдельных запросов:
■ запроса на выборку, отбирающего заказы, содержащие продукты, которых нет в наличии;
■ запроса на изменение, обновляющего поле OnHoldдля продуктов, которых нет в наличии.