Формирование сложного отчета

Обсуждение Stimulsoft Reports.Silverlight
kin123456789
Сообщения: 98
Зарегистрирован: 14 окт 2014, 08:29

Re: Формирование сложного отчета

Сообщение kin123456789 » 15 янв 2015, 09:15

Должен сформироваться отчет, в котором формируется документ "СПРАВКА-АКТ О РЕАЛИЗАЦИИ" для трех (в данном примере, может быть и больше) периодов 01.01.2015 ПО 15.01.2015 , 01.12.2014 ПО 31.12.2014, 01.11.2014 ПО 30.11.2014! Внутри каждой СПРАВКА-АКТ О РЕАЛИЗАЦИИ таблицы повторяются, только имеют различные данные. При формировании отчета я использую бизнес объекты. Проблем нет создать СПРАВКА-АКТ О РЕАЛИЗАЦИИ для одного периода, но необходимо чтобы все СПРАВКА-АКТ О РЕАЛИЗАЦИИ были в одном файле.

Во вложении пример, что должно получиться! Спасибо!
Вложения
СПРАВКА-АКТ О РЕАЛИЗАЦИИ.txt
(10.4 КБ) 297 скачиваний
Ivan
Сообщения: 610
Зарегистрирован: 10 авг 2006, 01:40

Re: Формирование сложного отчета

Сообщение Ivan » 15 янв 2015, 09:34

Здравствуйте.
kin123456789 писал(а):Подскажите!Мне необходимо добавить программно новые страницы Pages, которые будут являться объектами моего класса отчета! Но при ренедеринге выдается ошибка!
Уточните пожалуйста, какая именно ошибка выдаётся.

Спасибо.
kin123456789
Сообщения: 98
Зарегистрирован: 14 окт 2014, 08:29

Re: Формирование сложного отчета

Сообщение kin123456789 » 15 янв 2015, 10:07

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

void CreateReportByCode()
        {
            // 
            StiReport report = new StiReport();

            report.Dictionary.Synchronize();
          
           
            foreach (KeyValuePair<string, object[]> temp in dicByPeriods)
            {   
                // класс, который автосгенерирован из дизайнера
                ReportContr Newreport = new ReportContr();
                // получение информации из источника данных 
                reestrContractInfo = (bae_ws_ContractInfo_Result)((object[])temp.Value)[0];
                reestrProdPost = (List<kin_ContractReport_Result>)((object[])temp.Value)[1];
                reestrSumProdPost = (List<InfoDateil>)((object[])temp.Value)[2];
                reestrObjStPost = (List<InfoDateilAdd>)((object[])temp.Value)[3];
                reestrStsObjs = (List<StatObjects>)((object[])temp.Value)[4];
                reestrNTUPost = (List<NTUazs>)((object[])temp.Value)[5];
                reestrPayPost = (List<bae_ws_ContractPayments_Result>)((object[])temp.Value)[6];
                reestrCardsPost = (List<bae_ws_ContractCards_Result>)((object[])temp.Value)[7];
                reestrTotalPost = (List<bae_ws_ContractPeriodStatus_Result>)((object[])temp.Value)[8];
                // регистрация бизнес объекта для отчета 
                Newreport.RegBusinessObject("reestrContractInfo", "reestrContractInfo", reestrContractInfo);
                Newreport.RegBusinessObject("reestrProdPost", "reestrProdPost", reestrProdPost);
                Newreport.RegBusinessObject("reestrSumProdPost", "reestrSumProdPost", reestrSumProdPost);
                Newreport.RegBusinessObject("reestrObjStPost", "reestrObjStPost", reestrObjStPost);
                Newreport.RegBusinessObject("reestrStsObjs", "reestrStsObjs", reestrStsObjs);
                Newreport.RegBusinessObject("reestrNTUPost", "reestrNTUPost", reestrNTUPost);
                Newreport.RegBusinessObject("reestrPayPost", "reestrPayPost", reestrPayPost);
                Newreport.RegBusinessObject("reestrCardsPost", "reestrCardsPost", reestrCardsPost);
                Newreport.RegBusinessObject("reestrTotalPost", "reestrTotalPost", reestrTotalPost);

                // формирование новой страницы и передача сформированного отчета в конструктор
                StiPage newPage = new StiPage(Newreport);
                // добавление новой страницы в список страниц отчета 
                report.Pages.Add(newPage);
                
            }

            report.Render();

            viewer.Report = report;

            viewer.progress.Close();  
        }
в строке report.Render(); выдается ошибка
В экземпляре объекта не задана ссылка на объект.
kin123456789
Сообщения: 98
Зарегистрирован: 14 окт 2014, 08:29

Re: Формирование сложного отчета

Сообщение kin123456789 » 15 янв 2015, 10:08

Быть может при передаче в конструктор отчета при формировании страницы отчета я что-то не так делаю или это вообще не для этого предназначено!
kin123456789
Сообщения: 98
Зарегистрирован: 14 окт 2014, 08:29

Re: Формирование сложного отчета

Сообщение kin123456789 » 15 янв 2015, 10:09

Как правильно настраивать параметры новой страницы? Может в этом проблема? Огромное спасибо!
HighAley
Сообщения: 1958
Зарегистрирован: 08 июн 2011, 07:36

Re: Формирование сложного отчета

Сообщение HighAley » 15 янв 2015, 11:29

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

Попробуйте использовать следующий конструктор:

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

StiPage newPage = new StiPage();
Спасибо.
kin123456789
Сообщения: 98
Зарегистрирован: 14 окт 2014, 08:29

Re: Формирование сложного отчета

Сообщение kin123456789 » 15 янв 2015, 11:39

Это конструктор я пробовал - данные не отображаются, а когда свойству присваиваю ссылку на новый отчет newPage.Report= Newreport; то ошибка та же! Скажите можно ли срендеренные отчеты как-то объединить в один отчет!
HighAley
Сообщения: 1958
Зарегистрирован: 08 июн 2011, 07:36

Re: Формирование сложного отчета

Сообщение HighAley » 15 янв 2015, 12:54

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

Пришлите, пожалуйста, пример проекта, который воспроизводит проблему на support@stimulsoft.com.

Спасибо.
kin123456789
Сообщения: 98
Зарегистрирован: 14 окт 2014, 08:29

Re: Формирование сложного отчета

Сообщение kin123456789 » 15 янв 2015, 13:46

Скажите можно ли срендеренные отчеты как-то объединить в один отчет? Соединить или еще что-нибудь предложите!
Спасибо за помощь!
kin123456789
Сообщения: 98
Зарегистрирован: 14 окт 2014, 08:29

Re: Формирование сложного отчета

Сообщение kin123456789 » 15 янв 2015, 13:47

Подготовлю проект и обязательно пришлю!
Ответить