Well, it’s been a long time!

Well, well, well….

It’s been a long time since I last updated the site, a lot has been going on in life.

I have moved home, changed jobs (same employer!), changed site host and plenty more. I now lead the ERP Support Team at Perfect Image. We currently support Dynamics GP, but are looking at taking on another ERP software to offer to our client base.

Since changing role, I now mainly deal with the day to day management of the ERP Support Team but still dabble in consultancy and delivery and ideally intend to get my team involved in technical delivery and hope to skill them up to help the consultancy team in times of need, and to aide their own progression.

I hope to post more in time to come, will it always be about Dynamics GP? Possibly not, but Dynamics GP will still come up in my content!

Kind Regards,


Share on Social Media:

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.
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: