Иллюстрированный самоучитель по Delphi 7 для профессионалов

Вычисляемые значения по нескольким источникам

Вычислительный элемент calcOp позволяет проводить вычислительные операции над значениями из двух различных источников.

Разработчик должен задать исходные значения и источники данных, используя два набора свойств (табл. 26.1). Назначение части этих свойств вам уже знакомо (см. разд. "Вычисляемые значения по одному источнику" выше).

Таблица 26.1. Свойства элемента СаlсОр для определения двух источников данных.

Первый источник Второй источник Назначение свойства
SrclCalcVar Src2CalcVar Определяет вычисляемый элемент, результат которого берется в качестве исходного
SrclDataField Src2DataField Задает поле просмотра, над значениями которого проводятся вычисления. Игнорируется при заданном свойстве SrcXCalcVar
SrclDataView Src2DataView Задает поле просмотра, над значениями которого проводятся вычисления. Игнорируется при заданном свойстве SrcXCalcVar
SrclFunction Src2Function Позволяет выбрать математическую функцию (их список гораздо шире, чем просто агрегатные функции), которая будет выполнена над исходным значением перед вычислением основной операции элемента
SrclValue Src2Value Задает фиксированное значение, над которым производится вычислительная операция

Собственно функция, которая должна обработать значения из двух заданных источников, задается свойством operator.

После выполнения основной операции результат может быть обработан еще один раз, если вы зададите математическую функцию в свойстве:

ResultFunction.

Таким образом, при помощи элемента CalcOp разработчик может реализовывать довольно сложные вычисления.

Если задать в качестве двух источников данных:

  • два фиксированных значения (свойства srcivalue и Src2value);
  • два поля из одного или двух просмотров данных (свойства SrciDataField и Src2DataField);
  • комбинацию первых двух вариантов,

…то их значения будут последовательно обработаны вычислительной операцией, которую вы зададите свойствами:

  • SrclFunction;
  • SrclFunction;
  • Operator;
  • ResultFunction.

Кроме этого, элемент CalcOp позволяет создавать вычислительные цепочки, если использовать в качестве одного или двух источников другие вычислительные элементы (рис. 26.9).

Иллюстрированный самоучитель по Delphi 7 для профессионалов › Отчеты для приложений баз данных › Вычисляемые значения по нескольким источникам
Рис. 26.9. Пример вычислительной цепочки на основе элементов CalcOp

Это могут быть как простые элементы CalcText и calcTotal, так и другие элементы calcOp, которые, в свою очередь, могут содержать сколь угодно сложные вычислительные цепи.

Если Вы заметили ошибку, выделите, пожалуйста, необходимый текст и нажмите CTRL + Enter, чтобы сообщить об этом редактору.