Нужна помощь по вычисляемому полю

Не могу заставить работать вычисляемое поле в отчете “Теплоснабжение”.
В вычисляемом поле должна быть обработка с использованием данных из “Атрибуты точки учета”, “Архивы потреблений и интеграторов” и из Параметров.
Если я назначаю вычисляемое поле к определенному элементу данных, то не видно данных из других групп. А если оставляю без группы - не выводится в форме.
Вычисляемое поле Qm2h в прилагаемом шаблоне
Теплоснабжение проба1.lersreport (101 KB)
.

  1. Создайте атрибут с кодом “ploshad”. Для получения значения атрибута в отчетах используются коды атрибута.
  2. Создается переменная для хранения данных из узла “Атрибуты точки учета” (строка 22 в примере из вложения).
  3. В обработчике события BaseReport_DataSourceDemanded считайте значение атрибута (строки 67-69 в примере из вложения).
  4. В узле “Архивы потреблений и интеграторов” создайте вычисляемое поле calculatedField_Ploshad для получения значения атрибута. Само значение атрибута возвращается в обработчике события “Получить значение” (calculatedField_Ploshad_GetValue строки 122-126 в примере из вложения).
  5. Для вычисляемого поля Qm2h задайте элемент данных “Архивы потреблений и интеграторов”.
  6. Отредактируйте выражение для Qm2h. Т.к. вычисляемое поле calculatedField_Ploshad создано в узле “Архивы потреблений и интеграторов”, то оно будет доступно в выражении наряду с другими полями этого узла. Параметры отчета DATE_START и DATE_END доступны в любом узле. В примере из вложения для вычисляемого поля Qm2h задано выражение:
1000000*[].Sum([Q - (?Q) теплопотребление (Гкал)])/( ToDouble(Replace([calculatedField_Ploshad], ',', '.'))*(1+DateDiffHour([Parameters.DATE_START, Parameters.DATE_END])))

Теплоснабжение проба1 (исправленная).lersreport (92.5 KB)

Выдается ошибка и в правленном мной отчете, и в вашем
error.jpg

Ошибка возникает, если у точки учета не заданы атрибуты или таблица с атрибутами пустая.
Добавьте в обработчике события BaseReport_DataSourceDemanded проверку.

if (table.Rows.Count == 1 && table.Columns.Contains("ploshad"));
{
		this.ploshad = Convert.ToString(table.Rows[0]["ploshad"]);
{

Все заработало, спасибо!