Создание
вычисляемых полей
Простейшим
вычисляемым полем является поле, в котором должна выводиться текущая дата. Чтобы
создать такое поле:
Рис. 9.47.
Вычисляемое поле
Обычно для
создания вычисляемых полей выбирают именно элемент управления
Текстовое поле,
хотя это и необязательно. Допускается использовать для этого любые элементы
управления, имеющие свойство
Данные
(Control Source).
Именно в свойстве
Данные
(Control Source) должно быть задано выражение, которое вычисляет
значение этого элемента. Ввод выражения допускается прямо в элемент управления,
как мы и сделали это в примере. Однако, если выражение достаточно длинное, его
неудобно вводить прямо в поле. Можно ввести выражение в ячейку свойства
Данные
(Control Source) в окне
Свойства
(Properties), а если выражение не
помещается в ячейке свойства, просто нажать комбинацию клавиш <Shiftl>+<F2>
и открыть окно
Область ввода
(Zoom). Еще можно воспользоваться Построителем
выражений.
Вычисляемые
поля создаются чаще всего в табличных или ленточных формах для отображения столбца
с какими-нибудь вычисленными значениями. Например, стоимость товара рассчитывается
как значение выражения Цена * Количество. Для отображения таких расчетных данных
используют два способа:
Замечание
При ссылках на поля в выражениях обязательно использование квадратных скобок, если название поля содержит пробелы; в остальных случаях можно обходиться без них.
Первый способ
в большинстве случаев предпочтительнее, т. к. такой запрос может быть использован
не только в одной форме, но и в отчетах и в других формах. Примером такой организации
расчетов может служить форма "Подчиненная форма заказов" (Orders Subform)
базы данных "Борей". Она основана на запросе "Сведения о заказах"
(Order Details Extended), в котором создано вычисляемое поле "ОтпускнаяЦена"
(ExtendedPrice), содержащее формулу:
ОтпускнаяЦена:
CCur([Заказано].[Цена]*[Количество]*(1-[Скидка])/100}*100
в примере английской версии Access:
ExtendedPrice:
CCur([Order
Details].UnitPrice*[Quantity]*(1-[Discount])/100)*100
Свойство
Данные (Control Source) элемента управления ОтпускнаяЦена
(ExtendedPrice)
в форме имеет значение "ОтпускнаяЦена" (ExtendedPrice) — имя вычисляемого
поля запроса.
Замечание
В приведенной выше формуле CCur — это функция, которая преобразует значение выражения в тип Денежный (Currency).