Страница 1 из 1

Как отключить авто-формирование источников данных?

Добавлено: 08 май 2008, 05:29
kotelok
StiReport rpt = new StiReport();
DataSet ds;
[формирование ds]
rpt.RegData(ds);
rpt.Design(true);

Возможно ли сделать так, что бы при открытии отчёта в дизайнере не производилось автоформирование источников данных в словаре на основании привязанного датасета?
Т.е. нужно, что бы привязанные таблицы появились в хранилище данных и пользователь мог на их основании создать свои источники данных в словаре, сохранить их в шаблоне на диске и при повторной загрузке отчёта в дизайнер (и подключении любого другого произвольного набора данных) увидеть в словаре только те источники данных, которые он добавлял?

Как отключить авто-формирование источников данных?

Добавлено: 08 май 2008, 06:08
Vital
Здравствуйте,

Следующий код отключит автосинхронизацию данных в словаре:

Код: Выделить всё

StiOptions.Dictionary.AutoSynchronize = StiAutoSynchronizeMode.None;
Спасибо.

Как отключить авто-формирование источников данных?

Добавлено: 08 май 2008, 06:53
kotelok
Спасибо за ответ.

Есть ещё пара вопросов.

Ошибка?
Есть DataSet с тремя таблицами. Привязываю его к отчёту при помощи RegData. Открывают редактор, добавляю три новых источника данных на основании таблиц из хранилища данных.
Нажимаю предварительный просмотр. В конструкторе отчёта вызывается функция приложения, где осуществляю проход по rpt.Dictionary.DataSources. Вижу, что для каждого источника данных корректно заполнено поле DataTable.
"Источник данных №1".DataTable -> DataTable_1
"Источник данных №2".DataTable -> DataTable_2
"Источник данных №3".DataTable -> DataTable_3
Сохраняю шаблон отчёта, закрываю дизайнер.

Теперь есть тот же самый DataSet, но без одной таблицы (отсутствует DataTable_3).
Привязываю его к отчёту, загружаю сохранённый шаблон отчёта в дизайнер, нажимаю предпросмотр, попадаю в функцию приложения. Наблюдаю следующее.
"Источник данных №1".DataTable -> DataTable_1
"Источник данных №2".DataTable -> DataTable_2
"Источник данных №3".DataTable -> DataTable_1, ожидал, что будет null.

Информация о привязке источников данных в словаре к реальным таблицам.
исправлено позже
Разобрался.

Как отключить авто-формирование источников данных?

Добавлено: 08 май 2008, 08:36
Edward
Да, так и есть, название реальной таблицы, которая связывает хранилище данных и словарь содержится в DataSource.NameInSource поле источника данных.

Дайте знать, если еще понадобится помощь.

Спасибо.