Отображение бизнесс объекта

Обсуждение Stimulsoft Reports.NET
Ответить
res562
Сообщения: 28
Зарегистрирован: 26 июл 2010, 13:59

Отображение бизнесс объекта

Сообщение res562 »

При регистрации объекта вида:
public class MainClass
{
public int Number{get;set;}
public string Name{get;set;}
public SubClass Subobject1{get;set;}
public SubClass Subobject2{get;set;}
public SubClass Subobject3{get;set;}
}
public class SubClass
{
public int IntNumber{get;set;}
public int FloatNumber{get;set;}
public string Name{get;set;}
}
при раскрытие обекта класса MainClass в дизайнере, и далее раскрытии дочернего объекта класса SubClass, то свойства объекта SubClass отображаются как стринги. Так и должно быть?
Jan
Сообщения: 495
Зарегистрирован: 19 фев 2009, 11:14

Отображение бизнесс объекта

Сообщение Jan »

Здравствуйте,

Уточните пожалуйста, какая версия генератора отчетов используется? И как регистрируется бизнес-объект в отчете?

Спасибо.
res562
Сообщения: 28
Зарегистрирован: 26 июл 2010, 13:59

Отображение бизнесс объекта

Сообщение res562 »

Используется версия winforms 2010.1.700.0
Регистрируется так:

List repObjects=GetReortObjects();
report.RegData("Report",repObjects);

И еще один вопрос. Я создаю бизнесс объект динамически через Reflection.Emit в новом домене, создаю тамже отчет из stream из базы данных, регистрирую в отчете объект, делаю рендер у отчета и сохраняю это в другой stream. Получившийся stream я считываю в основном домене, делаю из него отчет, открываю в дизайнере. Все хорошо работает, в дизайнере в словаре вижу структуру моего объекта, только в превью в дизайнере ничего не отображается кроме статических текстов. Как я понял, при рендере и последующем сохранение в stream сохраняется только структура объекта, можно ли как нибудь сохранить и значения свойств объекта?

Вообще может я неправильно все делаю?
Есть таблица определенных объектов(batch) с постоянными параметрами, есть таблица дополнительных параметров этих batch, таблицы связаны друг с с другом через таблицу значения определенного параметра определенного batch. На форме задаются параметры запроса к БД и дополнительные параметры batch которые нужно выводить в отчет. Нужно выводить отчет по этому запросу и иметь возможность редактировать шаблон этого отчета. Причем дополнительные параметры не могут быть в массиве в объекте, каждый параметр должен быть в определенном свойстве, имя которого задается в форме чтобы я четко чнал при проэктировании шаблона отчета какое свойство какому дополнительному параметру соответствует. Необходимо также все динамически создаваемые сборки(например при выводе отчета) помещать в отдельные домен и потом выгружать его.
Сейчас я динамически создаю класс в новом домене, создаю объект этого класса загружаю шаблон отчета из базы данных регистрирую там объект. Если нужно вывести отчет, то вывожу его в том же новом домене, если нужно редактировать шаблон, то как писал выше, делаю рендер, сохраняю в stream, передаю в другой домен, и запускаю дизайнер. Я не могу открыть дизайнер в новом домене, т.к. при выгрузке этого домена(как я писал в соседнем топике) закрывается все приложение.

Правильно ли я делаю?Может быть есть какие-нибудь рекомендации как нужно делать?

Jan
Сообщения: 495
Зарегистрирован: 19 фев 2009, 11:14

Отображение бизнесс объекта

Сообщение Jan »

Здравствуйте,
List repObjects=GetReortObjects();
report.RegData("Report",repObjects);
Если ли возможность прислать пример проекта с заполненым бизнес-объектом?
И еще один вопрос. Я создаю бизнесс объект динамически через Reflection.Emit в новом домене, создаю тамже отчет из stream из базы данных, регистрирую в отчете объект, делаю рендер у отчета и сохраняю это в другой stream. Получившийся stream я считываю в основном домене, делаю из него отчет, открываю в дизайнере. Все хорошо работает, в дизайнере в словаре вижу структуру моего объекта, только в превью в дизайнере ничего не отображается кроме статических текстов. Как я понял, при рендере и последующем сохранение в stream сохраняется только структура объекта, можно ли как нибудь сохранить и значения свойств объекта?
Если Вы сохраняете построенный отчет, то данные уже не нужны. Покажите, пожалуйста, как Вы сохраняете построенный отчет и как Вы загружаете построенный отчет? Что значит открыть построенный отчет в дизайнере?
Есть таблица определенных объектов(batch) с постоянными параметрами, есть таблица дополнительных параметров этих batch, таблицы связаны друг с с другом через таблицу значения определенного параметра определенного batch. На форме задаются параметры запроса к БД и дополнительные параметры batch которые нужно выводить в отчет. Нужно выводить отчет по этому запросу и иметь возможность редактировать шаблон этого отчета. Причем дополнительные параметры не могут быть в массиве в объекте, каждый параметр должен быть в определенном свойстве, имя которого задается в форме чтобы я четко чнал при проэктировании шаблона отчета какое свойство какому дополнительному параметру соответствует. Необходимо также все динамически создаваемые сборки(например при выводе отчета) помещать в отдельные домен и потом выгружать его.
Сейчас я динамически создаю класс в новом домене, создаю объект этого класса загружаю шаблон отчета из базы данных регистрирую там объект. Если нужно вывести отчет, то вывожу его в том же новом домене, если нужно редактировать шаблон, то как писал выше, делаю рендер, сохраняю в stream, передаю в другой домен, и запускаю дизайнер. Я не могу открыть дизайнер в новом домене, т.к. при выгрузке этого домена(как я писал в соседнем топике) закрывается все приложение.
Первую половину текста не совсем понял. По второй. Настораживает такой момент:
если нужно редактировать шаблон, то как писал выше, делаю рендер, сохраняю в stream, передаю в другой домен, и запускаю дизайнер.
. А зачем Вы делаете рендер отчета и затем передаете в дизайнер отчетов?

Спасибо.
Ответить