Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Вычисление итоговых значений



Прежде, чем вычислять итоговую сумму, нужно рассчитать стоимость каждого разговора. Для подсчета суммы за каждый разговор, в области данных подчиненной формы с помощью Построителя выражений добавляется поле (в данном примере [Поле8]), в которое записывается выражение =[Тариф]*[Количество минут].

Вычисляемые элементы управления могут использоваться для включения итогового поля в запись формы, для вычислений различных итогов с выводом в главной или подчиненной форме. В форме, содержащей подчиненную форму, допускается расчет итогового значения для групп записей. Главная форма и ее подчиненная форма имеют базовые таблицы с отношением "один-ко-многим". В главной форме выводятся записи со стороны "один"; в подчиненной форме выводятся записи со стороны "многие". Для случая расчета суммарного значения подчиненной формы следует добавить поле в область примечаний подчиненной формы и ввести в ячейку свойства Данные выражение, содержащее функцию Sum. Например, следующее выражение возвращает общее количество минут разговоров для абонента в форме Разговор:

=Sum([Количество])


Если в расчете итогового значения требуется использовать значение из вычисляемого элемента управления, указания одного имени элемента управления в аргументе функции Sum будет недостаточно. Например, если имеется элемент управления, в котором рассчитывается произведение значений полей Количество и Тариф (в примере это Поле8 на рисунке 7.6), то при расчете, тем не менее, следует указать (в Поле11 на рисунке 7.6) полное выражение =Sum([Количество]*[Тариф]), то есть, для расчета итоговой суммы нельзя записать выражение =Sum([Поле8]).

Поэтому выражения, содержащие статистические функции, такие как Sum, лучше определять в базовом запросе формы или в базовой инструкции SQL. В этом случае использование имени вычисляемого поля в функции Sum допустимо. Например, можно определить вычисляемое поле в запросе с помощью выражения Сумма долга: [Количество]*[Тариф], а затем включить имя вычисляемого поля в выражение для суммарного значения:

 
 

=Sum([Сумма долга]).

Создание вычисляемых полей в подчиненной форме показано на рисунке 4.6. Обновленная форма для просмотра разговоров каждого абонента – на рисунке 4.7.

Чтобы вывести итоговое значение в главной форме, следует создать в главной форме поле, в котором с помощью выражения создаётся ссылка на вычисляемое поле в подчиненной форме. Например, для определения свойства Данные в главной форме можно использовать выражение следующего вида:

=[Имя_подчиненной_формы]. [Form]! [Поле_подчиненной_формы]

 
 

При подведении итогов бывает необходимо в итоговом поле, находящемся в подчиненной форме, использовать поле из главной формы. В таком случае создается ссылка на вычисляемое поле в главной форме:

= Forms! [Имя_главной_формы]! [Поле_главной_формы]

Например, нужно создать форму, в которой подводятся итоги по городам (рисунок 4.8). В такой форме главная форма содержит поле Тариф, а подчиненная форма содержит поле Количество минут. Для подведения итогов в области примечания подчиненной формы создается поле (рисунок 4.9, поле13), в которое записывается выражение:

=Sum([Количество_минут])*Forms!Город!Тариф

При создании формы с двумя подчиненными формами с помощью Мастера синхронизация подчиненных форм осуществляется посредством автоматически создаваемой процедуры обработки события Текущая запись (Current)первой подчиненной формы. Если требуется синхронизовать несколько подчиненных форм разного уровня в одной и той же форме, можно скопировать и соответствующим образом изменить эту процедуру обработки события. Для просмотра этой процедуры можно открыть первую подчиненную форму в режиме конструктора, двойным нажатием кнопки мыши в области выделения формы открыть ее окно свойств, а затем нажать кнопку построителя
 
 

в строке свойства Текущая запись.





Дата публикования: 2015-03-29; Прочитано: 760 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.008 с)...