Thursday, April 9, 2015

Dexterity - Test Mode

1."You need to run Dex Utilities", then clicking on OK does nothing
Add this to your Dex.ini
Synchronize=False
https://community.dynamics.com/gp/f/32/t/47585.aspx

2. Missing table syUserDefaults 
Add this to your Dex.ini
Pathname=DYNAMICS/dbo/


3. EXCEPTION_CLASS_SCRIPT_MISSING 'SQL Login l_Login_CHG
I removed Dexterity and reinstalled it.

4. Missing table "CustomizationMaintenance" or something similar
Make the Startup script not try to create tables 


5.  Could not load file or assembly 'Microsoft.Dynamics.GP.BusinessIntelligence.Homepage' or one of its dependencies. The system cannot find the file specified.
Copy these two files from the GP folder to the Dexterity folder:
Microsoft.Dynamics.GP.BusinessIntelligence.Homepage.Framework.dll
Microsoft.Dynamics.GP.BusinessIntelligence.Homepage.dll

http://blogs.msdn.com/b/developingfordynamicsgp/archive/2012/08/15/could-not-load-file-or-assembly-microsoft-dynamics-gp-businessintelligence-homepage-dll.aspx

6. Any cross dictionary errors
Use isTestMode() of form LibSystem to conditionally call cross dictionary scripts, and triggers.

7. GP Lookup windows result in "Cannot access this form because the dictionary containing it is not loaded"
In Alternate/Modified Forms and Reports find the lookup. It should have neither Dynamics.dic or your.dic radio buttons selected (it resides in the SmartList dic), so select your.dic and save. Voila, you can now open the lookups.

8. Unhandled script exception: SCRIPTS - data area EXCEPTION_CLASS_SCRIPT_MEMORY
Copy GPDWin32.dll from Dynamics GP folder to your Dexterity folder 
https://community.dynamics.com/gp/f/32/t/146623 

9. EXCEPTION_CLASS_SCRIPT_ADDRESSING 'SQL Login l_Login_CHG
The error message isn't helpful at all. In my case there were missing base/Globals variables in my dictionary. Not sure how that happened. To fix this I did the following:
    a. Open up the source control project
    b. Locate Base/globals.global
    c. Check out and edit with notepad
    d. Find and fix the missing variables. In my case I had two missing variables, AuthenticationType and SQLLoginID. Before fixing them they looked like this:
       - SystemVariable "AuthenticationType"
      I looked in a working dictionary's globals and saw it should be this:
        = SystemVariable "AuthenticationType"
{
Position "00353"
}
     e. Check in the change
     f. Fetch base/Globals in the dictionary

Startup
In my Startup script i have the following trigger registered:
call checkTriggerError,  Trigger_RegisterFunction(function OK_Click of form 'Switch Company',

    TRIGGER_AFTER_ORIGINAL, script InitTestMode), "InitTestMode";

InitTestMode launches a testing form and sets globals needed for testing.

No comments:

Post a Comment

There was an error in this gadget