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

NullReferenceException

Добавлено: 31 июл 2007, 03:06
Rustam
При формировании отчета с данными вылетает такой Exception:

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

System.NullReferenceException
Object reference not set to an instance of an object.
   at Reports.Report.VaccinesByRegionDataSource.get_SentVaccines()
   at Reports.Report.GroupHeader0__Rendering(Object sender, EventArgs e)
   at Stimulsoft.Report.Components.StiGroupHeaderBand.InvokeRendering(Int32 position)
   at Stimulsoft.Report.Components.StiDataBand.InvokeGroupRendering()
   at Stimulsoft.Report.Components.StiDataBand.RenderItem(Boolean& breaked, StiContainer outContainer)
   at Stimulsoft.Report.Components.StiDataBand.RenderComponent(StiComponent& renderedComponent, StiContainer outContainer, Boolean value)
   at Stimulsoft.Report.Components.StiDataBand.RenderComponent(StiComponent& renderedComponent, StiContainer outContainer)
   at Stimulsoft.Report.Components.StiDataBand.Render(StiComponent& renderedComponent, StiContainer outContainer)
   at Stimulsoft.Report.Components.StiComponent.Render(StiContainer outContainer)
   at Stimulsoft.Report.Components.StiContainer.CoreRenderCont(StiComponent& renderedComponent, StiContainer outContainer)
   at Stimulsoft.Report.Components.StiContainer.RenderContainer(StiComponent& renderedComponent, StiContainer outContainer)
   at Stimulsoft.Report.Components.StiPage.RenderComponent(StiComponent& renderedComponent, StiContainer outContainer)
   at Stimulsoft.Report.Components.StiComponent.Render(StiComponent& renderedComponent, StiContainer outContainer)
   at Stimulsoft.Report.Components.StiComponent.Render(StiContainer outContainer)
   at Stimulsoft.Report.Render.StiRender.GetNextPage()
   at Stimulsoft.Report.Render.StiRenderProvider.RenderReport(StiReport report, StiReport masterReport, StiRenderState state)
   at Stimulsoft.Report.Render.StiRenderProvider.Render(StiReport report, StiRenderState state)
   at Stimulsoft.Report.StiReport.Render(StiRenderState renderState)
   at Stimulsoft.Report.StiReport.Render() 
Версия Stimulreport'a 2007.2 от 26 июля

Подскажите что мы не так делаем

NullReferenceException

Добавлено: 31 июл 2007, 04:56
Edward
Трудно без тестового проекта что-либо сказать определенное. Вышлите, пожалуйста, отчет и данные для него на Изображение для анализа. Если данные прислать затруднительно, вышлите, пожалуйста, mrt шаблон отчета.

Спасибо.

NullReferenceException

Добавлено: 31 июл 2007, 05:25
Rustam
Данные выслать очень трудно, mrt можно выслать без проблем, но для начала я обьясню в чем суть проблемы:
Получается так что стимулрепорт ругается когда в базе значение DBNull, это легко вылечелось при выставление в XSD схеме каждому полю типа Int32 иди Double (смею предположить это будет при всех числовых типах), далее у нас есть такие поля которые вычесляются по связям по свойству Expression, видимо в XSD игнорируется когда стоит Expression выставлять значение в DefaultValue, но и это мы исправили добавив в Expression isnull((ParentRelation).Column, 0)
Вопрос это бага или новая фича?

NullReferenceException

Добавлено: 31 июл 2007, 09:34
Edward
Конвертация должна происходить корректно.

Проверьте, пожалуйста, что у объекта Report установлено свойство ConvertNulls в true.

Спасибо.

NullReferenceException

Добавлено: 31 июл 2007, 10:30
Rustam
Edward писал(а): Проверьте, пожалуйста, что у объекта Report установлено свойство ConvertNulls в true.
При выставление в true, он также выдает этот Exception

NullReferenceException

Добавлено: 31 июл 2007, 10:34
Edward
Вышлите, пожалуйста, xsd, xml файлы и шаблон отчета в виде mrt файла на Изображение .

Спасибо.

NullReferenceException

Добавлено: 01 авг 2007, 09:04
Rustam
Выслать вам xsd трудно будет, так как используется собственный провайдер.
Ошибка выходи если в базе в поле значение равно DBNull и это поле считается агрегатной функцией стимул репорта Sum

NullReferenceException

Добавлено: 01 авг 2007, 09:35
Rustam
Выслал xsd и mrt к вам на суппорт

NullReferenceException

Добавлено: 01 авг 2007, 09:49
Rustam
Еще если у парента нет записей, тоже вылетает этот эксепшен, приходится самим вручную создавать пустую запись!

NullReferenceException

Добавлено: 06 авг 2007, 16:32
Vital
К сожалению проблему с парентом мы решить не сможем. Эту ситуацию Вам придется контролировать вручную.