Run custom ARForm Error - Query execution failed

We tried to run a custom ARForm, and got the following error. Anyone has experience? Please help and advise. Thanks a lot.

Program Ice.Services.Lib.RunTask raised an unexpected exception with the following message: RunTask:
System.Web.Services.Protocols.SoapException: An error has occurred during report processing. —> Microsoft.ReportingServices.ReportProcessing.ProcessingAbortedException: An error has occurred during report processing. —> Microsoft.ReportingServices.ReportProcessing.ReportProcessingException: Query execution failed for dataset ‘ARForm’. —> System.Exception: For more information about this error navigate to the report server on the local server machine, or enable remote errors
at System.Web.Services.Protocols.SoapHttpClientProtocol.ReadResponse(SoapClientMessage message, WebResponse response, Stream responseStream, Boolean asyncCall)
at System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(String methodName, Object[] parameters)
at Ice.Core.SsrsReportService.ReportExecutionService.Render(String Format, String DeviceInfo, String& Extension, String& MimeType, String& Encoding, Warning[]& Warnings, String[]& StreamIds) in C:_Releases\ICE\ICE3.2.700.0\Source\Server\Internal\Lib\TaskLib\Web References\SsrsReportService\Reference.cs:line 633
at Ice.Core.SsrsReporting.SsrsRendererBase.Render(SsrsRenderInformationBase renderInformation) in C:_Releases\ICE\ICE3.2.700.0\Source\Server\Internal\Lib\TaskLib\SsrsReporting\SsrsRendererBase.cs:line 148
at Ice.Core.SsrsReporting.SsrsRendererBase.TraceReportRendered(String printProgram, String ssrsRenderFormat, Func1 timedAction) in C:\_Releases\ICE\ICE3.2.700.0\Source\Server\Internal\Lib\TaskLib\SsrsReporting\SsrsRendererBase.cs:line 88 at Ice.Core.SsrsReporting.ReportProcessorBase.RenderReport(String ssrsRenderFormat, String printProgram, Boolean ignorePageSettings) in C:\_Releases\ICE\ICE3.2.700.0\Source\Server\Internal\Lib\TaskLib\SsrsReporting\ReportProcessorBase.cs:line 247 at Ice.Core.SsrsReporting.ReportProcessorBase.RenderReportForPreviewOrGenerate(RenderedSsrsReport renderedReport) in C:\_Releases\ICE\ICE3.2.700.0\Source\Server\Internal\Lib\TaskLib\SsrsReporting\ReportProcessorBase.cs:line 408 at Ice.Core.SsrsReporting.ReportProcessorBase.ProcessReportPart(String reportLocation) in C:\_Releases\ICE\ICE3.2.700.0\Source\Server\Internal\Lib\TaskLib\SsrsReporting\ReportProcessorBase.cs:line 163 at Ice.Core.SsrsReporting.ARFormReportProcessor.ProcessReportParts() in C:\_Releases\ICE\ICE3.2.700.0\Source\Server\Internal\Lib\TaskLib\SsrsReporting\ARFormReportProcessor.cs:line 42 at Ice.Core.RoutingAndBreaking.ReportPersister.Persist(ReportInstanceInformation reportInstance, Func2 reportsRenderer, Action1 fillSysRptLstRow, Action2 processReport, Func3 filterTableAttachmentsFunc) in C:\_Releases\ICE\ICE3.2.700.0\Source\Server\Internal\Lib\TaskLib\RoutingAndBreaking\ReportPersister.cs:line 58 at Ice.Core.RptBase.ReportSsrsDatabaseBuilder.RenderUnroutedSsrsReport() in C:\_Releases\ICE\ICE3.2.700.0\Source\Server\Internal\Lib\TaskLib\RptBase\ReportSsrsDatabaseBuilder.cs:line 305 at Ice.Core.RptBase.ReportSsrsDatabaseBuilder.RunSsrsReportIfEnabled() in C:\_Releases\ICE\ICE3.2.700.0\Source\Server\Internal\Lib\TaskLib\RptBase\ReportSsrsDatabaseBuilder.cs:line 229 at Ice.Core.RptBase.ReportSsrsDatabaseBuilder.ProcessReportWithDataInPlace(Func2 executeCommand, Func2 executeReader, SqlObjectsCreated sqlObjectsCreated) in C:\_Releases\ICE\ICE3.2.700.0\Source\Server\Internal\Lib\TaskLib\RptBase\ReportSsrsDatabaseBuilder.cs:line 111 at Ice.Core.RptBase.ReportDatabaseBuilder.XMLClose() in C:\_Releases\ICE\ICE3.2.700.0\Source\Server\Internal\Lib\TaskLib\RptBase\ReportDatabaseBuilder.cs:line 93 at Ice.Core.RptTaskBase1.XMLClose() in C:_Releases\ICE\ICE3.2.700.0\Source\Server\Internal\Lib\TaskLib\RptBase\RptTaskBase.cs:line 229
at Erp.Internal.AR.ARInvForm.RunProcess(Int64 instanceTaskNum, String outputFileName) in C:_releases\ERP\ERP10.2.700.24\Source\Server\Internal\AR\ARInvForm\ARInvForm.cs:line 1448
at Ice.Core.TaskBase`1.StartProcess(Int64 instanceTaskNum, String outputFileName) in C:_Releases\ICE\ICE3.2.700.0\Source\Server\Internal\Lib\TaskLib\TaskBase\TaskBase.cs:line 83
at Ice.Hosting.TaskCaller.InnerExecuteTask(IceDataContext newContext) in C:_releases\ICE\ICE3.2.700.24\Source\Framework\Epicor.Ice\Hosting\TaskCaller\TaskCaller.cs:line 117
at Ice.Hosting.TaskCaller.ExecuteTask() in C:_releases\ICE\ICE3.2.700.24\Source\Framework\Epicor.Ice\Hosting\TaskCaller\TaskCaller.cs:line 59
at Ice.Lib.RunTask.BpmFriendlyTaskLauncher.Run(String sessionIdPrefix, IceContext db, Action taskRunner) in C:_Releases\ICE\ICE3.2.700.0\Source\Server\Services\Lib\RunTask\BpmFriendlyTaskLauncher.cs:line 63
at Ice.Services.Lib.RunTaskSvc.InnerRunTask(Int64 ipTaskNum, Boolean suppressTransaction) in C:_Releases\ICE\ICE3.2.700.0\Source\Server\Services\Lib\RunTask\RunTask.cs:line 454

If you go to the Report Server and pull up the log file, it will give you more detailed information.

Thank you John.

Hi John,
Where is the log file normally? I went to the event viewer > Windows Logs> Application and did not find any error for this. Thanks.

It is wherever the Report Server is installed.

C:\Program Files\Microsoft SQL Server\MSRS11.MSSQLSERVER\Reporting Services\LogFiles

Again thank you John.

Hi I viewed the SQL Server Logs with SSMS Management and couldn’t find any error. Is there any where else I should look at? Thanks a lot.

Run the base report and choose an archive period. Then take the Query for dataset ARForm from the custom RDL and run it against the SQL Reports database replacing the table names with the actual Table_GUID values from the database.

I’m guessing it will throw a sql syntax error, or maybe a missing column.

Hi Jonathan,
This issue was caused by the update from 10.1.500.7 to 10.2.700.7

Make sure your SSRS report’s Table GUID parameter is NOT stored as a default.

When the report DB tables are deleted (after archive period), it will cause your report to fail when run.

Hi Jonathan,

Why after an upgrade, there are many invalid columns in the sql execution for a customization form. Please help and thank you.

We had errors in a few of our forms, ARForm being one of them when we went from 10.2.400 to 10.2.700. RDD copies aren’t always updated properly as we found.

We found a couple of places to look and find the differences, we discovered that in some causes, there were non-fatal errors that would cause the form to sometimes just not print for some people, and we had to hunt them down through a lot of trial and error. These errors would show up in the SSRS log file, but wouldn’t tell us exactly what it was (usually a reference to a field that wasn’t actually in the dataset any longer, but all it would say is a field number rather than a name). Those took quite a while to track down. (these were fields we didn’t use, but the report referenced them even if they weren’t used)

The other had to do with fields which were added to the base form, but weren’t in the copies. Those were fatal errors, and to figure those out, we went in and compared Ice.RptCalcField rows for each RDD to find out which ones were missing from the copy. (We had a determined developer track it down to that table) We then duplicated those values for the RDD copy and that fixed the issue. We have heavily modified copies of OrderAck and ARForm which needed these fixes.

1 Like

Thank you John. Where can we check the Table GUID parameter is not stored as default?

My vague understanding of changes to reports is that the changes made to the data definition is replicated to copies made, but maybe RDL changes are not, I could be wrong though since this is not my area.

In this scenario when columns are removed from the RDD but not from the RDL query you get these errors with columns. Considering the upgrade was across several versions it is not surprising that a lot of columns were deleted and therefore invalid.

In the SSRS RDL report itself. There are parameters associated with the report. One of them is the GUID used to find the tables. If you run a report with an archive period the tables will stay in the report DB until the time has expired. Setting this default during development can help switching between design and run modes.

Open the report in report builder. In the Report Data frame where you find your Data Sources and Data Sets there is also a Parameters group. Open the parameter and look at the defaults.