Developing using Dexterity for Microsoft Dynamics GP 2015


David Meego - Click for blog homepageToday, I was contacted by a fellow Dexterity developer who was having trouble getting Dexterity for Microsoft Dynamics GP 2015 to run Dynamics.dic in Test Mode.

In this article, I will take you through the errors you could get and how to resolve them. Some of these you might know from previous versions, others are new to GP 2015.

For this article I am using Microsoft Dynamics GP 2015 R2 and Dexterity 14.00.0084 which comes on the DVD image. I have copied a clean Dynamics.dic from the application folder into a subfolder in the Dexterity folder. I opened the dictionary with Dexterity and selected Debug >> Test Mode (Ctrl-T).

The first error I get is “You need to run Dynamics.dic Utilities before you can run Dynamics.dic. Do you want to launch Dynamics.dic Utilities now?“.

Error1

Note: The name of the dictionary (in this case Dynamics.dic) will be whatever your development dictionary file is called.

This issue is has been around since the beginning and is because the Dynamics code is looking at the Dex.ini file for the settings INITIAL and SYNCHRONIZE and unless it can find those set to FALSE, it will think that it is the first time Dynamics GP is being launched and ask to go to the Utilities to set up the databases and synchronize the dictionary to the account framework.

Solution: The easiest solution is to copy the Dex.ini file from the Application’s Data subfolder to the Dexterity’s Data subfolder. However, be sure to make the couple of changes below:

  • Change DexHelpPath to point to the Dexterity folder.
  • Add ShowResids=TRUE (for pre GP 2015, GP 2015 now shows Resource IDs as default)

Launching into Test Mode again and I get “Unhandled script exception: SCRIPTS – data area EXCEPTION_CLASS_SCRIPT_MEMORY SCRIPT_CMD_EXTERN

Error2

 Clicking OK and the Login window opens, but it is not fully drawn.

 ErrorLogin

The problem here is that script that reads the ODBC Data Sources for the Server drop down list is trying to call an external library. This library is part of Dynamics GP, but not actually part of Dexterity and so is not installed.

Solution: Copy the GPDWIN32.dll from the Application folder to the Dexterity folder. This issue started from Microsoft Dynamics GP 2010 onwards.


Launching Test Mode again and I can login, but get another error just after login. The error is “Could not load file or assembly ‘Microsoft.Dynamics.GP.BusinessIntelligence.Homepage’ or one of its dependencies. The system cannot find the file specified.“.

Error3

This issue was introduced with Microsoft Dynamics GP 2013 when the homepage was changed.

Solution: Copy the following files from the Application folder to the Dexterity folder:

  • Microsoft.Dynamics.GP.BusinessIntelligence.Homepage.dll
  • Microsoft.Dynamics.GP.BusinessIntelligence.Homepage.Framework.dll

However, the error will still occur as GP 2015 now also requires the following file to be copied:

  • GPIcons.dll

Note: GPIcons.dll is also needed for Dexterity for GP 2010, GP 2013 (& R2) and GP 2015 (& R2) to allow the toolbar and area page icons to show correctly.


Finally, you will also need to copy the following file to the folder where your development dictionary resides to avoid warnings when compiling:

  • Microsoft.Dynamics.GP.BusinessObjects.dll

Depending on your scripts you might also need the following files copied to the development dictionary folder to allow compilation without errors:

  • Microsoft.Dynamics.GP.ManagementReporterServices.dll
  • Microsoft.Dynamics.GP.Svc.Application.dll

Now you should be good to go. Good luck.

 

For more information, see these previous articles from my old blog:

 

Hope this article helps make your life easier.

David

This article was originally posted on http://www.winthropdc.com/blog.

01-Oct-2015: Added note about copying GPIcons.dll so that icons show correctly.

Advertisements

13 thoughts on “Developing using Dexterity for Microsoft Dynamics GP 2015

  1. Dave,
    You’re a treasure. I don’t know what the GP developer community would do without you. So please, no skydiving, free climbing, base jumping, bull running, hang gliding, big wave surfing, or helicopter skiing.

    Jeff

    Like

  2. Great article – thanks! To get rid of the test mode launching error, I had to copy GPIcons.dll into the folder where the development dictionary resides rather than into the Dexterity application folder.

    Like

      • I just discovered that I have 2 instances of Dexterity v16 installed and was copying the files to the one that my launch shortcut was not pointing at. Oops, my mistake. For what it’s worth, copying all of the files to the dictionary folder and none to the application folder also seems to eliminate the error.

        Like

      • Hi Chuck

        That is a lot of file duplication that is not needed when you have lots of different project folders under you Dexterity folder.

        Just saying …

        David

        Like

  3. Absolutely amazing. Thank you so much for this you are a life saver. I’m now getting a “Cannot access this form because the dictionary containing it is not loaded.” when I try to access the employee maintenance screen in test mode. Any thoughts? My project dictionary is a copy of the dynamics.dic just renamed for this project so everything should be there I would think.

    Like

    • Hi Bill

      The security settings for that window must be pointing to an alternate version in another dictionary.

      It is expected that most lookups would give this error as they are alternate windows in the Smartlist dictionary.

      To fix, while in test mode create a new Alternate Modified Forms and Reports ID and change the user security to use the new ID.

      David

      Like

Please post feedback or comments

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s