SBX - Search With Button

SBX - Forum Post Title

NAV 2015 Client Crashes When Apply Vendor Ledger Entry

Microsoft Dynamics NAV Forum

James Reynolds asked a question on 14 Sep 2018 1:34 PM

Question Status

Verified
NAV 2015 build 38798 (CU 2)
I'm wondering if anyone has any suggestions for me on the NAV client crashing, "The server "DynamicsNAV80" was unable to process the request. The application will close."
My client has 2 users that when they apply a vendor ledger entry it crashes their NAV client.  There is another user who can do this w/o any error.  The application is applied correctly in either case.
I've searched around on this issue and checked language settings, personalizations to the page, deleted the NAV temp folder, the NAV clients are the same as they are on terminal server, and the error doesn't hit the debugger, the NAV client just crashes.
Over the weekend I'm going to try uninstalling the NAV client on the terminal server and re-installing it.  I'm also going to ask their IT to remove the user's folder/profile/login data from the terminal server so when they log in on Monday it recreates all that from scratch.
The users get these Event Viewer messages:
Type: Microsoft.Dynamics.Nav.Client.NavClientClosingException
Fatal: False
ShowError: True
Message: The server "DynamicsNAV80" was unable to process the request. The application will close.
StackTrace:
     at Microsoft.Dynamics.Nav.Client.WinClient.ExceptionHandler.DoExecute(Func`1 execute)
     at Microsoft.Dynamics.Nav.Client.WinClient.StartWinFormsClient.RunCore()
Source: Microsoft.Dynamics.Nav.Client.WinClient
HResult: -2146233088
----------------------------------
Type: Microsoft.Dynamics.Nav.Types.Exceptions.NavServerSessionException
Message: The server "DynamicsNAV80" was unable to process the request. The application will close.
StackTrace:
     at Microsoft.Dynamics.Nav.Client.ConnectionStateManager.CallServer[T](BeginCallServerMethod beginCallServerMethod, EndCallServerMethod`1 endCallServerMethod, ServerCallOptions options)
     at Microsoft.Dynamics.Nav.Client.ConnectionStateManager.CallServer[T](BeginCallServerMethod beginCallServerMethod, EndCallServerMethod`1 endCallServerMethod)
     at Microsoft.Dynamics.Nav.Client.ServerInvocationHandler.CallServer[T](BeginCallServerMethod beginCallServerMethod, EndCallServerMethod`1 endCallServerMethod)
     at Microsoft.Dynamics.Nav.Client.ServiceConnection.CallServer[T](BeginCallServerMethod beginCallServerMethod, EndCallServerMethod`1 endCallServerMethod)
     at Microsoft.Dynamics.Nav.Client.ServiceConnectionBase.ActionField(NavRecordState& state, NavDataSet recDataSet, Int32 controlId)
     at Microsoft.Dynamics.Nav.Client.ServiceConnection.Microsoft.Dynamics.Nav.Client.IService.ActionField(NavRecordState& , NavDataSet , Int32 )
     at Microsoft.Dynamics.Nav.Client.DataBinder.NstDataAccess.ActionMethod(Int32 controlId)
     at Microsoft.Dynamics.Nav.Client.Actions.InvokePageTriggerAction.InvokeTrigger(LogicalControl logicalControl, UISession uiSession)
     at Microsoft.Dynamics.Nav.Client.Actions.InvokePageTriggerAction.InvokeCore(LogicalControl logicalControl, Object state, UISession uiSession)
     at Microsoft.Dynamics.Framework.UI.LogicalAction.InvokeCoreWithErrorHandling(LogicalControl logicalControl, Object state, UISession uiSession)
     at Microsoft.Dynamics.Framework.UI.LogicalAction.DoInvoke(LogicalControl logicalControl, UISession uiSession)
     at Microsoft.Dynamics.Framework.UI.ActionControl.Invoke()
     at Microsoft.Dynamics.Framework.UI.Windows.ActionsHelper.<>c__DisplayClassa.<ModalitySafeInvoke>b__8()
     at Microsoft.Dynamics.Framework.UI.Windows.ActionsHelper.ModalitySafe(Action action)
     at Microsoft.Dynamics.Framework.UI.Windows.ActionsHelper.ModalitySafeInvoke(ActionControl actionControl)
     at Microsoft.Dynamics.Framework.UI.Windows.ActionControlAdapterBase.DefaultInvokeAction(LogicalControlAdapter adapter, ActionControl actionControl)
     at Microsoft.Dynamics.Framework.UI.Windows.ActionControlAdapterBase.DefaultInvokeAction(LogicalControlAdapter adapter)
     at Microsoft.Dynamics.Framework.UI.UX2006.WinForms.LogicalCommand.Execute(Object parameter)
     at MS.Internal.Commands.CommandHelpers.CriticalExecuteCommandSource(ICommandSource commandSource, Boolean userInitiated)
     at System.Windows.Controls.Primitives.ButtonBase.OnClick()
     at System.Windows.Controls.Button.OnClick()
     at System.Windows.Controls.Ribbon.RibbonButton.OnClick()
     at System.Windows.Controls.Primitives.ButtonBase.OnMouseLeftButtonUp(MouseButtonEventArgs e)
     at System.Windows.UIElement.OnMouseLeftButtonUpThunk(Object sender, MouseButtonEventArgs e)
     at System.Windows.Input.MouseButtonEventArgs.InvokeEventHandler(Delegate genericHandler, Object genericTarget)
     at System.Windows.RoutedEventArgs.InvokeHandler(Delegate handler, Object target)
     at System.Windows.RoutedEventHandlerInfo.InvokeHandler(Object target, RoutedEventArgs routedEventArgs)
     at System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)
     at System.Windows.UIElement.ReRaiseEventAs(DependencyObject sender, RoutedEventArgs args, RoutedEvent newEvent)
     at System.Windows.UIElement.OnMouseUpThunk(Object sender, MouseButtonEventArgs e)
     at System.Windows.Input.MouseButtonEventArgs.InvokeEventHandler(Delegate genericHandler, Object genericTarget)
     at System.Windows.RoutedEventArgs.InvokeHandler(Delegate handler, Object target)
     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.RaiseTrustedEvent(RoutedEventArgs args)
     at System.Windows.UIElement.RaiseEvent(RoutedEventArgs args, Boolean trusted)
     at System.Windows.Input.InputManager.ProcessStagingArea()
     at System.Windows.Input.InputManager.ProcessInput(InputEventArgs input)
     at System.Windows.Input.InputProviderSite.ReportInput(InputReport inputReport)
     at System.Windows.Interop.HwndMouseInputProvider.ReportInput(IntPtr hwnd, InputMode mode, Int32 timestamp, RawMouseActions actions, Int32 x, Int32 y, Int32 wheel)
     at System.Windows.Interop.HwndMouseInputProvider.FilterMessage(IntPtr hwnd, WindowMessage msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
     at System.Windows.Interop.HwndSource.InputFilterMessage(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 System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, 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 Microsoft.Dynamics.Nav.Client.WinClient.NavWinFormsClientSession.RunMessagePump()
     at Microsoft.Dynamics.Nav.Client.WinClient.NavWinFormsClientSession.RunCore()
     at Microsoft.Dynamics.Framework.UI.Windows.ClientSessionBase.Run()
     at Microsoft.Dynamics.Nav.Client.WinClient.NavClientErrorHandler.ExecuteAndCatchExceptions(Func`1 execute)
Source: Microsoft.Dynamics.Nav.Client.ServiceConnection
HResult: -2146233088
----------------------------------
Type: Microsoft.Dynamics.Nav.Types.Exceptions.NavServerSessionException
Message: The server "DynamicsNAV80" was unable to process the request. The application will close.
HResult: -2146233088
----------------------------------
Type: System.NullReferenceException
Message: Object reference not set to an instance of an object.
StackTrace:
     at Microsoft.Dynamics.Nav.Runtime.RecordImplementationHelper.NavValuesEqual(NavValue leftNavValue, NavValue rightNavValue, Boolean enforceSqlEquality)
     at Microsoft.Dynamics.Nav.Runtime.RecordImplementation.<>c__DisplayClass39.<FindEqualsImp>b__35(NCLMetaField field)
     at System.Linq.Enumerable.Any[TSource](IEnumerable`1 source, Func`2 predicate)
     at Microsoft.Dynamics.Nav.Runtime.RecordImplementation.FindEqualsImp(DataError errorLevel, Boolean cacheOnly)
     at Microsoft.Dynamics.Nav.Runtime.RecordImplementation.FindRecordImp(DataError errorLevel, String searchMethod)
     at Microsoft.Dynamics.Nav.Runtime.RecordImplementation.FindRecord(DataError errorLevel, String searchMethod)
     at Microsoft.Dynamics.Nav.Runtime.NavRecord.ALFind(DataError errorLevel, String searchMethod)
     at Microsoft.Dynamics.Nav.Runtime.NavRecord.IsWithinTheFilters()
     at Microsoft.Dynamics.Nav.Service.NSField.ActionField(NavSession con)
     at Microsoft.Dynamics.Nav.Service.NSField.Action(NavSession session)
     at SyncInvokeActionField(Object , Object[] , Object[] )
     at System.ServiceModel.Dispatcher.SyncMethodInvoker.Invoke(Object instance, Object[] inputs, Object[]& outputs)
     at Microsoft.Dynamics.Nav.Service.ServiceOperationInvoker.ErrorMappingCombinator(ServiceOperation innerOperation, NSServiceBase serviceInstance, Object[] inputs, Object[]& outputs)
Source: Microsoft.Dynamics.Nav.Ncl
HResult: -2147467261

The NAV Server service tier computer gets these Event Viewer messages:
Event Viewer Message 1:
Server instance: DynamicsNAV80
User: DOMAIN\USER
Type: System.NullReferenceException
Message: Object reference not set to an instance of an object.
StackTrace:
     at Microsoft.Dynamics.Nav.Runtime.RecordImplementationHelper.NavValuesEqual(NavValue leftNavValue, NavValue rightNavValue, Boolean enforceSqlEquality)
     at Microsoft.Dynamics.Nav.Runtime.RecordImplementation.<>c__DisplayClass39.<FindEqualsImp>b__35(NCLMetaField field)
     at System.Linq.Enumerable.Any[TSource](IEnumerable`1 source, Func`2 predicate)
     at Microsoft.Dynamics.Nav.Runtime.RecordImplementation.FindEqualsImp(DataError errorLevel, Boolean cacheOnly)
     at Microsoft.Dynamics.Nav.Runtime.RecordImplementation.FindRecordImp(DataError errorLevel, String searchMethod)
     at Microsoft.Dynamics.Nav.Runtime.RecordImplementation.FindRecord(DataError errorLevel, String searchMethod)
     at Microsoft.Dynamics.Nav.Runtime.NavRecord.ALFind(DataError errorLevel, String searchMethod)
     at Microsoft.Dynamics.Nav.Runtime.NavRecord.IsWithinTheFilters()
     at Microsoft.Dynamics.Nav.Service.NSField.ActionField(NavSession con)
     at Microsoft.Dynamics.Nav.Service.NSField.Action(NavSession session)
     at SyncInvokeActionField(Object , Object[] , Object[] )
     at System.ServiceModel.Dispatcher.SyncMethodInvoker.Invoke(Object instance, Object[] inputs, Object[]& outputs)
     at Microsoft.Dynamics.Nav.Service.ServiceOperationInvoker.ErrorMappingCombinator(ServiceOperation innerOperation, NSServiceBase serviceInstance, Object[] inputs, Object[]& outputs)
Source: Microsoft.Dynamics.Nav.Ncl
HResult: -2147467261
Event Viewer Message 2:
Fault bucket , type 0
Event Name: DynamicsNavServiceException
Response: Not available
Cab Id: 0
Problem signature:
P1: Microsoft.Dynamics.Nav.Server
P2: 8.0.38798.0
P3: 5477809f
P4: Microsoft.Dynamics.Nav.Ncl.dll
P5: 8.0.38798.0
P6: 5477815b
P7: 1213
P8: 1d
P9: System.NullReferenceException
P10:
Attached files:
\\?\C:\Users\NAVsrvc\AppData\Local\Temp\4436.36.636723452064520165.dmp
\\?\C:\Users\NAVsrvc\AppData\Local\Temp\4436.36.636723452064520165.txt
\\?\C:\ProgramData\Microsoft\Windows\WER\Temp\WER9F8B.tmp.WERInternalMetadata.xml
These files may be available here:
C:\ProgramData\Microsoft\Windows\WER\ReportQueue\NonCritical_Microsoft.Dynami_2ee3b6be8af758d7179eaf263a1c9aa6fe2dec3c_00000000_cab_1afc9f9b
Analysis symbol:
Rechecking for solution: 0
Report Id: cf335893-b698-11e8-b809-005056b9b060
Report Status: 4
Hashed bucket:
Event Viewer Message 3:
Fault bucket 90878677545, type 5
Event Name: DynamicsNavServiceException
Response: Not available
Cab Id: 0
Problem signature:
P1: Microsoft.Dynamics.Nav.Server
P2: 8.0.38798.0
P3: 5477809f
P4: Microsoft.Dynamics.Nav.Ncl.dll
P5: 8.0.38798.0
P6: 5477815b
P7: 1213
P8: 1d
P9: System.NullReferenceException
P10:
Attached files:
\\?\C:\Users\NAVsrvc\AppData\Local\Temp\4436.36.636723452064520165.dmp
\\?\C:\Users\NAVsrvc\AppData\Local\Temp\4436.36.636723452064520165.txt
\\?\C:\ProgramData\Microsoft\Windows\WER\Temp\WER9F8B.tmp.WERInternalMetadata.xml
These files may be available here:
C:\ProgramData\Microsoft\Windows\WER\ReportArchive\NonCritical_Microsoft.Dynami_2ee3b6be8af758d7179eaf263a1c9aa6fe2dec3c_00000000_18c4a25a
Analysis symbol:
Rechecking for solution: 0
Report Id: cf335893-b698-11e8-b809-005056b9b060
Report Status: 0
Reply
Suresh Kulla responded on 14 Sep 2018 3:34 PM
Verified Answer

Please rename the personalization.xml to old_personalizaton.xml for that user or you can also delete records pertain to that page for that user from Page Personalization Data or User Metata table.

Reply
James Reynolds responded on 17 Sep 2018 12:11 PM

That worked.  I renamed C:\Users\<USERNAME>\AppData\Roaming\Microsoft\Microsoft Dynamics NAV\PersonalizationStore.xml to C:\...\PersonalizationStore.xml-old.  Then found all the records in the User Metadata table (2000000075) by running the table and looking at User ID, filtered on every record with that User SID and moved them to a backup table in case this didn't work.  The user tested and their NAV client does not crash.  Just FYI - the user had no customizations to the objects related to the ones used in applying a vendor ledger entry.  That was the initial resistance to getting rid of the personalizations.  Also I had not yet done the uninstall/reinstall of the NAV client or deleted the user from the Terminal Server.  So it was definitely the removal of the personalizations that resolved the issue.

Reply
Suresh Kulla responded on 14 Sep 2018 3:34 PM
Verified Answer

Please rename the personalization.xml to old_personalizaton.xml for that user or you can also delete records pertain to that page for that user from Page Personalization Data or User Metata table.

Reply

SBX - Two Col Forum

SBX - Migrated JS