Error after Install

I am setting up a computer for a new CSR and I got Epicor 10 on her computer. It opened fine, until I selected Menu. After I selected Menu I got the following error:

Application Error

Exception caught in: mscorlib

Error Detail

Message: Index was out of range. Must be non-negative and less than the size of the collection.
Parameter name: index
Program: CommonLanguageRuntimeLibrary
Method: ThrowArgumentOutOfRangeException

Client Stack Trace

at System.ThrowHelper.ThrowArgumentOutOfRangeException()
at IceShell.ZoomNavigator.AddZoomBar(String parentMenuID, Menu menuFolderToSelect)
at IceShell.ZoomNavigator.SelectMenu(String menuID, Boolean showChild)
at IceShell.ZoomNavigator.Init(MainMenuApp parentApp, SessionManager sessionMgr, MenuDataManager menuDataMgr, String initMenuID, String currentContentsView)
at IceShell.MainMenuApp.ActivateView(String viewID)
at IceShell.MainMenuApp._Init()
at IceShell.MainMenuApp.OnLoaded()
at IceShell.BaseApp.BaseApp_Loaded(Object sender, RoutedEventArgs e)
at System.Windows.RoutedEventHandlerInfo.InvokeHandler(Object target, RoutedEventArgs routedEventArgs)
at System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)
at System.Windows.UIElement.RaiseEventImpl(DependencyObject sender, RoutedEventArgs args)
at System.Windows.UIElement.RaiseEvent(RoutedEventArgs e)
at System.Windows.BroadcastEventHelper.BroadcastEvent(DependencyObject root, RoutedEvent routedEvent)
at System.Windows.BroadcastEventHelper.BroadcastLoadedEvent(Object root)
at MS.Internal.LoadedOrUnloadedOperation.DoWork()
at System.Windows.Media.MediaContext.FireLoadedPendingCallbacks()
at System.Windows.Media.MediaContext.FireInvokeOnRenderCallbacks()
at System.Windows.Media.MediaContext.RenderMessageHandlerCore(Object resizedCompositionTarget)
at System.Windows.Media.MediaContext.RenderMessageHandler(Object resizedCompositionTarget)
at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
at MS.Internal.Threading.ExceptionFilterHelper.TryCatchWhen(Object source, Delegate method, Object args, Int32 numArgs, Delegate catchHandler)
at System.Windows.Threading.DispatcherOperation.InvokeImpl()
at System.Windows.Threading.DispatcherOperation.InvokeInSecurityContext(Object state)
at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
at System.Windows.Threading.DispatcherOperation.Invoke()
at System.Windows.Threading.Dispatcher.ProcessQueue()
at System.Windows.Threading.Dispatcher.WndProcHook(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
at MS.Win32.HwndWrapper.WndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
at MS.Win32.HwndSubclass.DispatcherCallbackOperation(Object o)
at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
at MS.Internal.Threading.ExceptionFilterHelper.TryCatchWhen(Object source, Delegate method, Object args, Int32 numArgs, Delegate catchHandler)
at System.Windows.Threading.Dispatcher.LegacyInvokeImpl(DispatcherPriority priority, TimeSpan timeout, Delegate method, Object args, Int32 numArgs)
at MS.Win32.HwndSubclass.SubclassWndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam)
at System.Windows.Forms.UnsafeNativeMethods.DispatchMessageW(MSG& msg)
at System.Windows.Forms.Application.ComponentManager.System.Windows.Forms.UnsafeNativeMethods.IMsoComponentManager.FPushMessageLoop(IntPtr dwComponentID, Int32 reason, Int32 pvLoopData)
at System.Windows.Forms.Application.ThreadContext.RunMessageLoopInner(Int32 reason, ApplicationContext context)
at System.Windows.Forms.Application.ThreadContext.RunMessageLoop(Int32 reason, ApplicationContext context)
at Ice.Lib.UI.ApplicationWatcher.StartApplication(ApplicationContext context)
at Ice.Lib.UI.App.IceShellLaunch.<>c__DisplayClass2.b__1()
at Ice.Lib.UI.App.IceShellLaunch.ShowMenuForm()
at Ice.Lib.UI.App.LaunchBase.ShowDialog(String[] args)

Curious what it is. I am going to try to take off and then reinstall it and see if that fixes the issue.

I have ran into this before but only when I created the new user I used an existing user base the new user on (via the Epicor Admin Console). I think I found that this is caused by some data about the old user being copied to the new user and it is not valid. After screwing around forever with trying to clear defaults and personalizations found the following worked for me:

  1. Login to the Epicor client with your existing account
  2. After logged in, use the Switch user to login the new user.
  3. Log out of Epicor
  4. Have the new user login.
    Apparently this somehow resets the new users’s profile with the current client cache or something.
    oh you can try that too, clear client cache… (also manually if you dare)

Long shot but this has worked for me in the past with all the new user’s I’ve setup.

-Rick
www.getaligned.solutions

Well, I had to go into the Admin Console on the server and delete the profile, and then add it back in via the import. AFter that, I activated the user, and it worked. Crazy way of doing it, but it worked.

Usually means you’ve not given that user access to any menus at all…