Missing Menu ID

Having issues launching menu maintenance in production environment. Anyone have any thoughts?
It is 1 missing record.

Business Layer Exception

Record not found.

Exception caught in: Epicor.ServiceModel

Error Detail

============

Description: Record not found.

Program: Epicor.Ice.dll

Method: InnerGetByID

Table: Security

Server Trace Stack: at Ice.TablesetBound3.InnerGetByID(IceDataContext context, Int32 pageSize, Int32 absolutePage, Boolean& morePages, TFullTableset tableset, IEnumerable1 queryParameters)

at Ice.Services.BO.SecuritySvc.GetByID(String company, String secCode)

at Ice.Services.BO.SecuritySvc.GetByIDEx(String pcSecCode)

at Ice.Services.BO.SecuritySvcFacade.GetByIDEx(String pcSecCode)

at SyncInvokeGetByIDEx(Object , Object[] , Object[] )

at System.ServiceModel.Dispatcher.SyncMethodInvoker.Invoke(Object instance, Object[] inputs, Object[]& outputs)

at Epicor.Hosting.OperationBoundInvoker.Invoke(Object instance, Func`2 func)

at Epicor.Hosting.Wcf.EpiOperationInvoker.Invoke(Object instance, Object[] inputs, Object[]& outputs)

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 System.ServiceModel.Dispatcher.ChannelHandler.DispatchAndReleasePump(RequestContext request, Boolean cleanThread, OperationContext currentOperationContext)

at System.ServiceModel.Dispatcher.ChannelHandler.HandleRequest(RequestContext request, OperationContext currentOperationContext)

at System.ServiceModel.Dispatcher.ChannelHandler.AsyncMessagePump(IAsyncResult result)

at System.ServiceModel.Dispatcher.ChannelHandler.OnAsyncReceiveComplete(IAsyncResult result)

at System.Runtime.Fx.AsyncThunk.UnhandledExceptionFrame(IAsyncResult result)

at System.Runtime.AsyncResult.Complete(Boolean completedSynchronously)

at System.ServiceModel.Channels.SecurityChannelListener1.ReceiveItemAndVerifySecurityAsyncResult2.InnerTryReceiveCompletedCallback(IAsyncResult result)

at System.Runtime.Fx.AsyncThunk.UnhandledExceptionFrame(IAsyncResult result)

at System.Runtime.AsyncResult.Complete(Boolean completedSynchronously)

at System.ServiceModel.Channels.TransportDuplexSessionChannel.TryReceiveAsyncResult.OnReceive(IAsyncResult result)

at System.Runtime.Fx.AsyncThunk.UnhandledExceptionFrame(IAsyncResult result)

at System.Runtime.AsyncResult.Complete(Boolean completedSynchronously)

at System.ServiceModel.Channels.SynchronizedMessageSource.ReceiveAsyncResult.OnReceiveComplete(Object state)

at System.ServiceModel.Channels.SessionConnectionReader.OnAsyncReadComplete(Object state)

at System.Runtime.Fx.AsyncThunk.UnhandledExceptionFrame(IAsyncResult result)

at System.Net.LazyAsyncResult.Complete(IntPtr userToken)

at System.Net.LazyAsyncResult.ProtectedInvokeCallback(Object result, IntPtr userToken)

at System.Net.Security._SslStream.ProcessFrameBody(Int32 readBytes, Byte[] buffer, Int32 offset, Int32 count, AsyncProtocolRequest asyncRequest)

at System.Net.Security._SslStream.ReadFrameCallback(AsyncProtocolRequest asyncRequest)

at System.Net.AsyncProtocolRequest.CompleteRequest(Int32 result)

at System.Net.FixedSizeReader.CheckCompletionBeforeNextRead(Int32 bytes)

at System.Net.FixedSizeReader.ReadCallback(IAsyncResult transportResult)

at System.Runtime.AsyncResult.Complete(Boolean completedSynchronously)

at System.ServiceModel.Channels.ConnectionStream.IOAsyncResult.OnAsyncIOComplete(Object state)

at System.Net.Sockets.SocketAsyncEventArgs.OnCompleted(SocketAsyncEventArgs e)

at System.Net.Sockets.SocketAsyncEventArgs.FinishOperationSuccess(SocketError socketError, Int32 bytesTransferred, SocketFlags flags)

at System.Net.Sockets.SocketAsyncEventArgs.CompletionPortCallback(UInt32 errorCode, UInt32 numBytes, NativeOverlapped* nativeOverlapped)

at System.Threading._IOCompletionCallback.PerformIOCompletionCallback(UInt32 errorCode, UInt32 numBytes, NativeOverlapped* pOVERLAP)

Client Stack Trace

==================

at Epicor.ServiceModel.Channels.ImplBase`1.ShouldRethrowNonRetryableException(Exception ex, DataSet[] dataSets)

at Ice.Proxy.BO.SecurityImpl.GetByIDEx(String pcSecCode)

at Ice.Adapters.SecurityAdapter.GetByIDEx(String pcSecCode)

at Ice.UI.App.MenuMEntry.Transaction.findSecCode()

at Ice.UI.App.MenuMEntry.Transaction.MenuView_EpiRowChanged(EpiRowChangedArgs args)

at Ice.Lib.Framework.EpiDataView.onRowChanged(Int32 CurrentRow, Int32 LastRow)

at Ice.Lib.Framework.EpiDataView.set_Row(Int32 value)

at Ice.UI.App.MenuMEntry.Transaction.findTopMenu()

at Ice.UI.App.MenuMEntry.Transaction.TransactionLoad()

at Ice.Lib.Framework.EpiTransaction.createTransaction()

Ben,

I would imagine this could be anything, probably something like a menu ID that’s tied to a security code that doesn’t exist.

You may want to run a SQL query “Select * from ice.menu order by menuid” in both the PRODUCTION environment where it’s not working, and a test environment where it is working. If you export both outputs somewhere and use some comparison tools, you can at least find the difference in the files.

MENU isn’t that highly transacted of a file, I would imagine the differences would be minimal. As you review the record differences, hopefully something will jump out at you.

Kevin

Thanks Kevin

Regards
Ben Nixon 651.494.4629