Job Entry - Object Reference Not Set

Hi All,

I’ve encountered a big problem and need some help. Last night we created a new UD table extension on the JobHead table and added three new fields to it, and today we aren’t able to look at certain jobs in the JobEntry/JobTracker screens due to the ‘Object Reference Not Set’ error.

It seems like all of the jobs we are not able to access were created last night via MRP.

I did restart the application pool after regenerating the data model.

Please let me know if you have any suggestions as this is a major issue for us!



Anytime you are referencing an error here, it will be most helpful if you copy and paste the entire contents (details) of the error as it contains a stack trace that will give us clues.

First thing I’d do is open the relevant table in UD Field maintenance and ensure both icons show green:

If not, is it possible that you regened/recycled the wrong db\appserver?

Thanks for the quick response, Chris!

I just checked the table in UD Table Maintenance and both show up green. We have also been able to place data in the new fields for other jobs. It is possible that I recycled the wrong appserver but I don’t have the luxury of trying again since we are currently in work hours.

As for the details of the error, I have included them below:

Application Error

Exception caught in: Epicor.ServiceModel

Error Detail 
Message: Object reference not set to an instance of an object.
Program: Epicor.ServiceModel.dll
Method: ShouldRethrowNonRetryableException

Client Stack Trace 
   at Erp.Services.BO.JobEntrySvc.jobmtlBackflushSens() in C:\_Releases\ERP\UD10.1.500.16\Source\Server\Services\BO\JobEntry\JobEntry.cs:line 29811
   at Erp.Services.BO.JobEntrySvc.JobMtlAfterGetRows() in C:\_Releases\ERP\UD10.1.500.16\Source\Server\Services\BO\JobEntry\JobEntry.cs:line 29403
   at Ice.TablesetBound`3.<>c__DisplayClass22_1.<InnerGetRows>b__2() in C:\_Releases\ICE\3.1.500.16\Source\Framework\Epicor.Ice\Services\TablesetBound.cs:line 317
   at Ice.Services.Trace.TablesetProfilingCollector.DoRowEventTrace(String tableName, String methodName, Int32 rowCount, Action action) in C:\_Releases\ICE\3.1.500.16\Source\Framework\Epicor.Ice\Services\TablesetProfilingCollector.cs:line 144
   at Ice.TablesetBound`3.InnerGetRows(IceDataContext dataContext, Int32 pageSize, Int32 absolutePage, Boolean& morePages, TFullTableset tableset, IEnumerable`1 whereClauses) in C:\_Releases\ICE\3.1.500.16\Source\Framework\Epicor.Ice\Services\TablesetBound.cs:line 305
   at Erp.Services.BO.JobEntrySvc.GetRows(String whereClauseJobHead, String whereClauseJobHeadAttch, String whereClauseJobAsmbl, String whereClauseJobAsmblAttch, String whereClauseJobAsmblInsp, String whereClauseJobMtl, String whereClauseJobMtlAttch, String whereClauseJobMtlInsp, String whereClauseJobMtlRefDes, String whereClauseJobMtlRestriction, String whereClauseJobMtlRestrictSubst, String whereClauseJobOper, String whereClauseJobOperAttch, String whereClauseJobOperInsp, String whereClauseJobOpDtl, String whereClauseJobResources, String whereClauseJobOperRestriction, String whereClauseJobOperRestrictSubst, String whereClauseJobAsmblRestriction, String whereClauseJobAsmblRestrictSubst, String whereClauseJobAsmRefDes, String whereClauseJobAudit, String whereClauseJobPart, String whereClauseJobProd, Int32 pageSize, Int32 absolutePage, Boolean& morePages) in C:\_Releases\ERP\UD10.1.500.16\Source\Server\Services\BO\JobEntry\JobEntry.Designer.cs:line 7331
   at Erp.Services.BO.JobEntrySvc.GetDatasetForTree(String ipJobNum, Int32 ipStartAssemblySeq, Int32 ipCurrentAssemblySeq, Boolean ipCompleteTree, String ipJobTypeMode) in C:\_Releases\ERP\UD10.1.500.16\Source\Server\Services\BO\JobEntry\JobEntry.cs:line 22608
   at Erp.Services.BO.JobEntrySvcFacade.GetDatasetForTree(String ipJobNum, Int32 ipStartAssemblySeq, Int32 ipCurrentAssemblySeq, Boolean ipCompleteTree, String ipJobTypeMode) in C:\_Releases\ERP\UD10.1.500.16\Source\Server\Services\BO\JobEntry\JobEntrySvcFacade.cs:line 2813
   at SyncInvokeGetDatasetForTree(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\3.1.500.16\Source\Framework\Epicor.System\Hosting\OperationBoundInvoker.cs:line 59
   at Epicor.Hosting.OperationBoundInvoker.Invoke(Object instance, Func`2 func) in C:\_Releases\ICE\3.1.500.16\Source\Framework\Epicor.System\Hosting\OperationBoundInvoker.cs:line 47
   at Epicor.Hosting.Wcf.EpiOperationInvoker.Invoke(Object instance, Object[] inputs, Object[]& outputs) in C:\_Releases\ICE\3.1.500.16\Source\Framework\Epicor.System\Hosting\Wcf\EpiOperationInvoker.cs:line 23
   at System.ServiceModel.Dispatcher.DispatchOperationRuntime.InvokeBegin(MessageRpc& rpc)
   at System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage5(MessageRpc& rpc)
   at System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage11(MessageRpc& rpc)
   at System.ServiceModel.Dispatcher.MessageRpc.Process(Boolean isOperationContextSet)

   at Epicor.ServiceModel.Channels.ImplBase`1.ShouldRethrowNonRetryableException(Exception ex, DataSet[] dataSets)
   at Erp.Proxy.BO.JobEntryImpl.GetDatasetForTree(String ipJobNum, Int32 ipStartAssemblySeq, Int32 ipCurrentAssemblySeq, Boolean ipCompleteTree, String ipJobTypeMode)
   at Erp.Adapters.JobEntryAdapter.GetDatasetForTree(String ipJobNum, Int32 ipStartAssemblySeq, Int32 ipCurrentAssemblySeq, Boolean ipCompleteTree)

I’d wait to recycle I’m guessing you didn’t recycle it or didn’t recycle the right one.

Ok, thanks Jose!

I will follow up tomorrow.

Update: I was able to get everything looking correct by regenerating the data model and recycling the application pool that night.

But we have now noticed that the issue still exists. Every time MRP runs it creates a new batch of “bad jobs” that fall into the error category posted above. But once you regen the data model after MRP runs, all the jobs are cleaned up and no longer error. I have no idea why that would be occurring. Does anyone have an idea? Thanks!

Did you resolve this issue?

What was your resolution?