Показать сообщение отдельно
Старый 18.11.2011, 16:46   #1  
pz_minsk is offline
pz_minsk
Участник
 
5 / 11 (1) +
Регистрация: 15.10.2011
Адрес: Голландия
Проблема с генерацией кастомного отчёта (построенного на основании кастомной сущности) из плагина
Возможно кто-то сталкивался
Исходные данные
- кастомная сущность new_documntgeneration c метаданными для отчтета.
- rdl файл самого отчёта которому на вход приходит new_documntgenerationid
- плагин подвешенный на message create для new_documntgeneration


Задача : сущность (new_documntgeneration ) связана с кучей сущностей (квота, опа, лид и так далее) для которых нужно генерить репорты, плагин мегауниверсальный что-бы работал везде и всегда и мог легко переносится с платформы на платформу.

Необходимо при создании сущности new_documntgeneration найти парента ( квота, опа, лид и так далее), сгенерить отчёт, положить на шарик + создать мыло для отправки клиенту и вложить туда сгенерированый отчёт.

Код написан и работает нормально если тэстить из консольного приложения,
как только вызовы идут из плагина получаю ошибку при вызове reportExecutionService.Render
##############################################################################################################################
httpruntime!ReportServer_0-8!93c!11/17/2011-17:51:16:: e ERROR: Failed in BaseWorkerRequest::SendHttpResponse(bool), exception=System.AppDomainUnloadedException: Attempted to access an unloaded appdomain. (Exception from HRESULT: 0x80131014)
at System.StubHelpers.StubHelpers.GetCOMHRExceptionObject(Int32 hr, IntPtr pFrame, Object pThis)
at Microsoft.ReportingServices.HostingInterfaces.IRsHttpPipeline.SendResponse(Void* response, Boolean finalWrite, Boolean closeConn)
at ReportingServicesHttpRuntime.BaseWorkerRequest.SendHttpResponse(Boolean finalFlush)
library!ReportServer_0-8!93c!11/17/2011-17:51:16:: e ERROR: Throwing Microsoft.ReportingServices.Diagnostics.Utilities.ReportServerHttpRuntimeInternalException: RsWorkerRequest::FlushResponse., Microsoft.ReportingServices.Diagnostics.Utilities.ReportServerHttpRuntimeInternalException: An internal or system error occurred in the HTTP Runtime object for application domain ReportServer_MSSQLSERVER_0-8-129660100231768588. ---> System.AppDomainUnloadedException: Attempted to access an unloaded appdomain. (Exception from HRESULT: 0x80131014)
at ReportingServicesHttpRuntime.BaseWorkerRequest.SendHttpResponse(Boolean finalFlush)
at ReportingServicesHttpRuntime.RsWorkerRequest.FlushResponse(Boolean finalFlush)
--- End of inner exception stack trace ---;
##############################################################################################################################

Из экспериментов понял, что любой другой отчёт построенный на стандартной сущности ( квота, опа, лид) работает корректно и отрабатывает из плагина на ура.

Как только отчёт генерится на основании кастомной сущности - ошибка выше.


Возможно кто-то проделывал такие же фокусы с репортами , помогите иначе дальше только суппорт от майкрософта