Мы выполняем Crystal Reports на Windows Server 2008 с платформой.NET 3,5 SP1.
Я видел, что много причин общей ошибки "Запрос не могли быть отправлены для фоновой обработки". на других форумах однако они имеют тенденцию быть персистентным и повторяемым влиянием просто единственный отчет из-за определенной проблемы форматирования с определенным отчетом.
Мы видим эту ошибку с ниже отслеживания стека, периодически.
Эти отчеты все работали ранее без проблемы. Никакое изменение в сервере или коде не кажется очевидным, который ускорил бы эту ошибку. Всем кодом позади для этого является VB.NET
Мы испытали затруднения при репродуцировании его в тестовых средах, и обновление до последней версии Crystal не помогло вообще. Любая справка или предположения, что Вы смогли делать для решения этого вопроса, будут цениться.
"The request could not be submitted for background processing."
at CrystalDecisions.ReportAppServer.Controllers.DatabaseControllerClass.ReplaceConnection(Object oldConnection, Object newConnection, Object parameterFields, Object crDBOptionUseDefault)
at CrystalDecisions.CrystalReports.Engine.Table.SetDataSource(Object val, Type type)
at CrystalDecisions.CrystalReports.Engine.ReportDocument.SetDataSourceInternal(Object val, Type type)
--- End of inner exception stack trace ---
at CrystalDecisions.ReportAppServer.ConvertDotNetToErom.ThrowDotNetException(Exception e)
at CrystalDecisions.CrystalReports.Engine.ReportDocument.SetDataSourceInternal(Object val, Type type)
at CrystalDecisions.CrystalReports.Engine.ReportDocument.SetDataSource(DataSet dataSet)
at "USER CODE"
Есть вероятность, что объект отчета просочивается в памяти сервера? Я бежал в аналогичный случай, когда объект отчета хранится в объекте сеанса, поэтому отчет не должен быть перезагружен как пользователь, находящийся между страницами. Однако, когда пользователь был сделан с отчетом, объект остался на сеансе, и не был правильно убран, когда сеанс был уничтожен сервером. Мне пришлось добавить немного кода в событии Session_end в Global.Asax, чтобы найти объект отчета и позвонить в метод Dispose на нем.
Тот факт, что это происходит периодически, но затем влияет на все отчеты в течение 10 минут заставляет меня думать, что это может быть связано с сеансом. В моей ситуации сервер достиг пределе на количество отчетов, которые могут быть созданы на сервере (в памяти), потому что они не были выпущены. Симптомы были похожи на ваши.
Надеюсь, это поможет!