Inventory WIP/Rec Report hangs after this App Server Event Viewer Error

Good evening, all,

We have been experience this reoccurring error that happens on our application server event log. The only big change that’s happen since this started was we added a new company and site.

Server Side Error
Server Side Exception
EpicorServerException
	Correlation ID: c46138e9-41ed-48db-ae0a-ce32a672d522
	Description: The target table 'Ice.SysRptLst' of the DML statement cannot have any enabled triggers if the statement contains an OUTPUT clause without INTO clause.
	Program: System.Data.dll
	Method: OnError
	Original Exception Type: SqlException
	SQL Line Number: 1
	SQL Error Number: 334
	Framework Method: BatchedSysRptLstDelete
	Framework Line Number: 111
	Framework Column Number: 28
	Framework Source: BatchedSysRptLstDelete at offset 207 in file:line:column C:\_Releases\ICE\UD10.2.500.17FW\Source\Server\Internal\Lib\TaskLib\RptBase\ReportPurger.cs:111:28

	Server Trace Stack:    at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction)
   at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj, Boolean callerHasConnectionLock, Boolean asyncClose)
   at System.Data.SqlClient.TdsParser.TryRun(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj, Boolean& dataReady)
   at System.Data.SqlClient.SqlDataReader.TryConsumeMetaData()
   at System.Data.SqlClient.SqlDataReader.get_MetaData()
   at System.Data.SqlClient.SqlCommand.FinishExecuteReader(SqlDataReader ds, RunBehavior runBehavior, String resetOptionsString, Boolean isInternal, Boolean forDescribeParameterEncryption, Boolean shouldCacheForAlwaysEncrypted)
   at System.Data.SqlClient.SqlCommand.RunExecuteReaderTds(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, Boolean async, Int32 timeout, Task& task, Boolean asyncWrite, Boolean inRetry, SqlDataReader ds, Boolean describeParameterEncryptionRequest)
   at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method, TaskCompletionSource`1 completion, Int32 timeout, Task& task, Boolean& usedCache, Boolean asyncWrite, Boolean inRetry)
   at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method)
   at System.Data.SqlClient.SqlCommand.ExecuteReader(CommandBehavior behavior, String method)
   at System.Data.SqlClient.SqlCommand.ExecuteReader()
   at Ice.Core.RptBase.ReportPurger.BatchedSysRptLstDelete(SqlConnection connection, DateTime purgeDate) in C:\_Releases\ICE\UD10.2.500.17FW\Source\Server\Internal\Lib\TaskLib\RptBase\ReportPurger.cs:line 111
   at Ice.Core.RptBase.ReportPurger.PurgeReports(DateTime purgeDate) in C:\_Releases\ICE\UD10.2.500.17FW\Source\Server\Internal\Lib\TaskLib\RptBase\ReportPurger.cs:line 64
   at Ice.Services.BO.SysAgentSvc.PurgeReports(Nullable`1 purgeDate) in C:\_Releases\ICE\RL10.2.500.0FW\Source\Server\Services\BO\SysAgent\SysAgent.cs:line 418
   at Ice.Services.BO.SysAgentSvcFacade.PurgeReports(Nullable`1 purgeDate) in C:\_Releases\ICE\RL10.2.500.0FW\Source\Server\Services\BO\SysAgent\SysAgentSvcFacade.cs:line 264
   at SyncInvokePurgeReports(Object , Object[] , Object[] )
   at System.ServiceModel.Dispatcher.SyncMethodInvoker.Invoke(Object instance, Object[] inputs, Object[]& outputs)
   at Epicor.Hosting.OperationBoundInvoker.InnerInvoke(Object instance, Func`2 func) in C:\_Releases\ICE\UD10.2.500.17FW\Source\Framework\Epicor.System\Hosting\OperationBoundInvoker.cs:line 59
   at Epicor.Hosting.OperationBoundInvoker.Invoke(Object instance, Func`2 func) in C:\_Releases\ICE\UD10.2.500.17FW\Source\Framework\Epicor.System\Hosting\OperationBoundInvoker.cs:line 28



After this happens, anyone who runs the Inventory WIP/Recon Report or the Work In Process Report experiences these running for many hours without completing. We’ve had a ticket open with Epicor for a week now but I was wonder if anyone else might have an idea of where to troubleshoot.

We can resolve this with a SQL reboot, but this is very perplexing.

Thank you for any help!

Did a wee search for that error message. Is it possible that someone made a change to your sql server or (now you mentoned it gets fixed when you reboot sql)

There is a configuration option disallow results from triggers this configuration option can be changed on the fly, if for some reason it is getting flipped it might cause weird things to happen.

I might be over thinking it there. But this error mentions triggers so I’d be wanting to look at any data directives that you may have around parttran, or even any custom GL Trransaction Types in (COSandWIP) that might be be be related to triggers, firing and producing the error.

Being On-Prem I would also attempt to look at what is going on on the sql server side of things with SQL Profiler or Extended Events to confirm what is happening just before and as the error occurs.

One other thing you could do is use the PDT tool and check the server configuration.

Links

Word of warning you can really break things with sp_configure so don’t go changing things… Standard Disclaimer ensure… Mess with it at your own risk.

Maybe a call to Brent Ozar might resolve things a bit quicker with confidence…:slight_smile:

Thank you, according to that article, the disallow results setting should be set to 1 (at least that’s the way I read it, and I’m not a SQL person at all).

Ours is set to 0. I’ll be sure to bring that up with Epicor Support.

1 Like

My concern would be if it is supposed to be 1 then how did it change?

1 Like

Yeah, I wouldn’t know honestly who would’ve done that or if it was set to that from the beginning. I met with Epicor support about it yesterday, so we’ll see what they say.

1 Like

I heard back from Epicor Support. I ran this SQL statement as suggested and has seemed to resolve the issue.

1 Like