How to Save User-Specific DEX.INI Settings to the SQL Database

With the release of the web client in GP 2013, it is now possible to store user-specific DEX.INI settings directly in the DYNAMICS database. Learn how.

Table of Content

    With the release of GP 2013, I was faced with another client choosing to deploy Microsoft Dynamics GP in a Terminal Server environment to save on the overhead of maintaining client installations. With their first request to have their users point to different locations for their Word Template files, I went old school and created an additional DEX.INI file that pointed a few select user’s to their home drive, while the majority continued to point to a shared location.

    But when I was asked to set one thin client to suppress the print dialogs, I started coming across a few blog posts with a different choice.

    With the release of the web client in GP 2013, it is now possible to store user-specific DEX.INI settings directly in the DYNAMICS database. How cool is that?  Now we are able to store data in the database! I’m optimistic that also means that these settings will carry forward with future upgrades and our clients won’t have to remind us to change the settings every time.

    But I digress. Let’s get to the ‘how to’ of the situation.

    The table in the DYNAMICS database that holds the user defaults is the syUserDexIniSettings or SY01405. It has only 4 columns, the USERID, IniKeyName, IniKeyValue and the obligatory DEX_ROW_ID. When I started my testing, this table was completely empty.

    The first new INI switch that has to be added to the traditional DEX.INI tells GP at launch to go look at this table for any rows specific to the current user and swap them out for what is in the traditional DEX.INI file. This new line is as follows:

    EnablePerUserIni=TRUE

    I added this line, and logged into GP. No records were added to the table. However, when I logged out, GP added four records to the table:

    clip_image001

    If we look at the DEX.INI file, we can see these four corresponding lines:

    Dictionary Version=12.00.1538
    RememberUser=FALSE
    ZoomFontUnderline=True
    ZoomFontColor=Blue

    So while I’m not clear on why it only wrote those 4 lines to the table and not the other 50 lines in my DEX.INI, I now have a handle on how to manually edit the SQL table.

    Word of caution – be sure to edit the table when the user is not logged in – otherwise, when then log out, their currently enabled settings will overwrite the records in the SY01405.

    Some additional tips:

    For a full listing of available DEX.INI settings, check out Leslie Vail’s blog

    Two more Terminal Server / Web Client specific settings were added with GP 2013 SP2 (12.00.1482):

    The EnableServerDropDown=FALSE setting disables the ODBC dropdown so that users can not change the Server value.  And lastly, to prevent the last user name from defaulting in the login fields, try DefaultLastUser=FALSE.

    Thanks go out to Darryl Anderson, a Senior Program Manager at Microsoft that replied to a question on GPUG. For any additional technical questions on the topic of GP, feel free to contact us.