Помимо фиктивных полей, данные для которых берутся из другой таблицы, можно создать так называемое вычисляемое фиктивное поле, значение которого рассчитывается в самой программе. Например, в нашей программе некрасиво отображается поле SUBTITLES (наличие субтитров) – мы видим в нем значения 0 и 1 вместо "есть" и "нет". Заводить отдельную таблицу ради всего двух значений не хочется.
Выполните следующие действия: щелкните правой кнопкой мыши на запросе DVD в модуле данных и выберите пункты меню Fields Editor à New field. Открывается уже известное вам окно добавления фиктивного поля. Заполните его, как показано на Рис. 28.4.
Рис. 32.4 Добавление вычисляемого поля.
В запрос DVD добавлено фиктивное полеVTITLE типа String длиной 10 символов, значения в которое будет заносить сама программа. Каким образом? Выполняя обработчик события OnCalcFields запроса DVD. В этом обработчике напишите следующий код:
procedure Tdm.dvdCalcFields(DataSet: TDataSet);
begin
IF dvd.FieldByName('SUBTITLES').AsBoolean THEN
dvdvtitle.AsString:='есть'