Программное формирование отчета из скрипта

severnsevern Екатеринбург
отредактировано 19:04 Раздел: FastReport .NET
Пытаюсь изменить объекты отчета из скрипта самого отчета.
Для начала хочу сделать простую вещь:
указать в текстовой ячейке формулу - что в нее выводить.

На событие Report.StartReport вешаю функцию:
private void _StartReport(object sender, EventArgs e)
{
CheckData();
}

private void CheckData()
{

// Обращение к построителю отчета - что за поле выводим ?
qBuilder = Report.GetColumnValue("Data.QBuilder") as StdAccountReport;
if (qBuilder==null) return;

KeyFieldCount = qBuilder.GetKeyFieldsCount(obj);
LastKeyFieldName = qBuilder.GetKeyFieldName(obj, KeyFieldCount-1).ToString();

// Указываем формулу - что надо вывести в отчет
ContractorText.Text = "[Data.List.Key." + LastKeyFieldName + "]";
}

Получаю ошибку:
Ошибка CS0246: Не удалось найти имя типа или пространства имен 'Contractor' (возможно, пропущена используемая директива или ссылка на сборку).

Делаю явное присвоение:
ContractorText.Text = "[Data.List.Key.Contractor]";
Эффект тот же.

Указываю в ячейке формулу - [Data.List.Key.Contractor]
Все прекрасно работает.
Как же мне правильно указать эту формулу программно?

Комментарии

  • отредактировано 19:04
    Присваиваешь правильно. У меня так всегда работало.
    Попробуй в обработчике более позднего события текст менять.

Оставить комментарий

Многофункциональный текстовый редактор. Чтобы отредактировать стиль параграфа, нажмите TAB, чтобы перейти к меню абзаца. Там вы можете выбрать стиль. По умолчанию не выбран ни один стиль. Когда вы выберете текст, появится встроенное меню форматирования. Нажмите TAB, чтобы войти в него. Некоторые элементы, такие как многофункциональные вставки ссылок, картинок, индикаторов загрузки и сообщений об ошибок могут быть вставлены в редактор. Вы можете перемещаться по ним, используя стрелки внутри редактора и удалять с помощью клавиш delete или backspace.