Улучшение работы компании средствами Visual Basic
На протяжении последних 16 глав вы узнали и полюбили БД компании Boutique Fudge, которая представляет собой БД действительных продаж, отслеживающую данные о клиентах, товарах и заказах. Однако, несмотря на то, что в БД Boutique Fudge хранится вся необходимая информация, она все еще не полностью интегрирована в повседневную деятельность компании. И прежде чем вы попытаетесь это исправить, следует понять, почему выигрыш столь мал.
Большинство людей, работающих в компаниях, подобных Boutique Fudge, не думают о таблицах и операциях над данными (таких как добавление, обновление и удаление записей). Они мыслят задачами, например, размещение заказа, доставка заказа и обработка жалобы клиента.
Многие задачи тесно связаны с операциями над данными и в этом случае у вас нет проблем. Задача "регистрация нового клиента" включает открытие таблицы Customersи последующее добавление новой записи. Следить за ней можно с помощью простой формы. Задача "размещение заказа" немного сложнее. Она включает добавление записей в несколько таблиц (таблицы Ordersи OrderDetails)и использование данных из связанных таблиц (таблицы Productsи Customers)для заполнения заказа. Можно создать обычную форму для выполнения этой работы, но она не будет действовать так, как хотели бы продавцы (рис. 17.10).
То же справедливо и в отношении задачи "доставка заказа". Этой задаче требуется несколько шагов — изменение статуса заказа, регистрация отправки заказа, обновления количества единиц товара на складе. Вы можете интерпретировать эту задачу как несколько операций над данными, но гораздо лучше создать единую форму, которая будет заботиться о процессе в целом.
Сейчас очень пригодится VB. С помощью подходящего программного кода вы сможете спроектировать интеллектуальную форму, которая будет соответствовать методам работы сотрудников компании. Интеллектуальная форма — это не просто способ добавления, редактирования и удаления записей в таблице — это средство, помогающее вести коммерческую деятельность. В следующих разделах вы увидите, как разрабатывать улучшенные формы с некоторыми программируемыми свойствами. К этим формам относятся следующие:
■ PlaceOrderпозволяет создать новый заказ. Она действует в месте с подчиненной формой PlaceOrder_Subform,позволяющей включать отдельные товары в заказ;
■ AddProductпозволяет создать новый товар. Вы можете использовать ее непосредственно из формы PlaceOrderдля вставки товара внутрь заказа;
ShipOrders позволяет обновить заказ сведениями о доставке. Она также работает с формой ReviewOrderDetails для вывода на экран компонентов заказа.
Рис. 17.10. Эта форма позволяет добавлять записи в таблицы Orders и OrderDetails. Но ей не хватает нескольких украшений, которые пользователи рассчитывают увидеть на форме для заказа — например, автоматическое заполнение поля с ценой каждого товара, заказанного вами, вычисление промежуточных итогов по мере заполнения заказа и возможность добавить товар на лету
Проверить конечный результат можно с помощью загружаемых из Интернета БД, предназначенных для данной главы (см. разд. "Примеры" во введении).
Подсказка
Всегда хорошо называть форму в соответствии с выполняемой ею задачей (размещение заказа, доставка заказа и т. д.), а не таблицей, которую она использует. Такой подход поможет вам запомнить, кто пользуется каждой формой, поэтому вы сможете приспособить ее для соответствующей аудитории.