Strange Web Client Error

Hi all,

I’m sitting in a hotel in Scotland the night before going on site for a client and honestly, I’m baffled.

Earlier this morning I was checking an implementation of Dynamics GP 2015 R2 and Web Client and found that I got a Web Client error message when using the lookup on the Sales Transaction Entry window for Fulfilment Orders.

The error text is as follows:

Severity: Critical
Summary: A server side exception of type "FormatException" has occurred.
Details:
FormatException: Input string was not in a correct format.
   at System.Number.StringToNumber(String str, NumberStyles options, NumberBuffer& number, NumberFormatInfo info, Boolean parseDecimal)
   at System.Number.ParseDecimal(String value, NumberStyles options, NumberFormatInfo numfmt)
   at Microsoft.Dynamics.GP.Web.Services.Runtime.Dexterity.Implementation.Adapters.WCDexStringValueChangedNotificationAdapter.Notification_StringValueChanged(Object sender, DexValueChangedEventArgs`1 e)
   at Microsoft.Dexterity.Runtime.Interop.DexNotification.OnStringValueChanged(DexUri uri, String value, DexControlType controlType)
   at Microsoft.Dexterity.Runtime.Interop.Win32.NativeMethods.MsaClickHit(DexUri uri)
   at Microsoft.Dexterity.Runtime.Interop.Win32.NativeMethods.<>c__DisplayClass11.<MacroSystemClickHit>b__10()
   at Microsoft.Dexterity.Runtime.Interop.Win32.NativeMethods.ExecuteUriMsaAction(Func`1 interopAction, String entryPoint, DexUri uri)
   at Microsoft.Dexterity.Runtime.Interop.Win32.NativeMethods.MacroSystemClickHit(DexUri uri)
   at Microsoft.Dexterity.Runtime.Interop.DexMacroSystem.ClickHit(DexUri dexUri)
   at Microsoft.Dynamics.GP.Web.Services.Runtime.Dexterity.Implementation.WCDexMessageProcessor.ProcessClickInstanceResourceMessage(IWCDexMessage msg)
   at Microsoft.Dynamics.GP.Web.Services.Runtime.Dexterity.Implementation.WCDexMessageProcessor.Process(IWCDexMessage message)
   at Microsoft.Dynamics.GP.Web.Services.Runtime.Dexterity.DexRuntimeStateManager.SendMessage(IWCDexMessage message)
   at Microsoft.Dynamics.GP.Web.Services.Runtime.Dexterity.DexRuntimeStateManager.MainEventLoop()

From the way I read the error, it seems to me that it’s seeing a type of data that it doesn’t expect? I’m not entirely sure.

I troubleshot this quite extensively and found that it is data related, only happens for this Document Type and in this company… and only on the Web Client.

I checked SOP10100 and couldn’t see anything strange here. In the end, I had to go through the orders removing them in batches until I found the batch that fixed the issue, I kept restoring and moving smaller batches on the Desktop Client navigation lists until I found the order that was causing the issue.

So, I have the data that’s causing the issue, but I have no idea why as the data looks perfectly fine to me, compared to other rows of data it looks roughly the same apart from the differences that you would expect.

At some point when I have more time I may have a look into this a little more but for now it’s only a staging upgrade with old data, so may have to tackle this in the near future properly.

If anyone has seen something similar or have an idea of what it may be, or has a better understanding of the error message, please let me know!

Quick edit: Deleting the order has fixed the problem, but isn’t the ideal solution…

Share on Social Media:

Supporting the Dynamics GP Web Client

Hi all,

In my previous post I said I would post a guide that I have written designed to help support the Web Client.

This is a very brief and high level guide on how to create users, clear dormant sessions and turn on the Dex/SQL logging for a Web Client session. Hopefully this is useful for someone!

 

Supporting the Dynamics GP Web Client

Enabling a user to use the GP Web Client

Step 1: Add the user’s account to the GP Web Client Users Security Group in Active Directory.

Step 2: Log in to Dynamics GP and open User Setup.

Navigate to the Administration Series and in Setup > System, click on User.

Step 3: Enter the user ID and configure the user.

If the user is only going to use the Web Client

If the user is a new user and will only use the web client, enter a User ID and tick Web Client user only

Click Directory Account

Click the lookup magnifying glass

Enter the users Active Directory account and click OK.

Click Save on the User Setup window.

If the user is going to be using the Desktop Client and the Web Client

Step 1: Follow the same steps as above but do not tick the Web Client user only box.

Step 2: Back on the SQL Server tab, enter a password and choose whether or not to enforce the password policies.

Click Save

 

How to remove Dormant Sessions

Step 1: Log in to the Web Management Console.

Open the Web Management Console by browsing to the Web Management Console URL.

You may be prompted to log in with your domain credentials.

If you are presented with an access denied message, your active directory account needs to be placed in the Web Management Console Security Group.

Step 2: Open the Session Manager

You can open the Session Manager by clicking on Session Management in the bottom left hand corner of the Web Management Console.

Step 3: Find the session you wish to end.

The column to look at, once you’ve found the User ID of the person you’re interested in, is the Last Heartbeat column.

If this column shows that the Web Management Console has seen that there has been no heartbeat in a while, typically a day old, especially if there are newer sessions for the user in question, it would suggest that this session can be ended.

Step 4: End the Session.

Highlight the session by left clicking on it and click End Session.

 

Web Client Logging

Step 1: Follow the steps above to find the session that you wish to log.

Highlight the session by left clicking on it.

Step 2: Click Logging

Tick the options for the logs that you require, click OK.

Step 3: Collect the logs

Wait until the user has replicated their issue, these logs will stop logging once the session ends.

You can collect the logs from C:\ProgramData\Microsoft Dynamics\GPSessions\Logs.

Be aware that this logging will only stay active for the duration of the Web Client session.

 

Share on Social Media:

GP Crashes when opening Email setup

After designing a Word Template for a client of ours, they were trying to set up the Email Messages and Sales Email Settings.

Dynamics GP kept crashing with the following message:

Microsoft Dynamics GP has stopped working

This particular client is using Dynamics GP 2010 SP3, Office 2010 and Office 365 with a Terminal Server. The crash was happening for all users so I had a horrible feeling that this was due to Office 365 and knew that this is not supported by Microsoft.

My first step was to test using an IMAP account that I had created using my own host and this worked.

I had a ponder about what the difference between my account and their accounts was… both of our accounts were hosted off site.

Once of the differences that I could think of was that my account would not be using an Outlook Data File… maybe it was something to do with that? I decided to remove my IMAP account and set the o365 account back up again. While doing this I had a bit of a flashback from my time on our service desk.

What about Cached Exchange Mode?

I turned Cached Exchange Mode on for this account in the Mail options from Control Panel and tried again and the screens now open in Dynamics GP!

The main difference with cached exchange mode is that, if turned on, the users will have an OST file on the server which will potentially increase in size depending on the users mailbox size. I had a chat with the clients IT provider who is happy for Cached Exchange Mode to be enabled.

Find more information about Cached Exchange Mode here.

Share on Social Media: