Developing for Dynamics GP
by David Musgrave (Perth, WA, Australia) and the Microsoft Dynamics GP Developer Support Team (Fargo, ND, USA)
Search this blog
Search all blogs
Email Blog Author
GP 2010 R2
GP 2013 R2
Menus for Visual Studio Tools
Notes & OLE Attachments
Source Code Control
Source Code Program
Support Debugging Tool
Visual Studio Tools
Dates of Interest
11-Jul-2008: Blog Created by David Musgrave.
03-Oct-2008: Syndicated to the
10-Oct-2008: First Post by Scott Stephenson.
04-Nov-2008: First Post by Dave Dusek.
11-Nov-2008: First Post by Beth Gardner.
28-Nov-2008: First Post by Chris Roehrich.
30-Dec-2008: First Post by Patrick Roth.
24-Feb-2009: First Post by Greg Willson.
22-Apr-2009: First Post by David Clauson.
04-May-2009: First Post by Ryan Wigestrand.
19-Jun-2009: First Post by Dawn Langlie.
03-Jul-2009: First Post by Emily Halvorson.
with blog feed.
20-Nov-2009: First Post by Alice Newsam.
21-Apr-2010: First Post by Allan Cahill.
19-May-2010: First Post by Marian Verzosa.
24-May-2010: Blog Migrated to new Platform.
with blog feed.
15-Aug-2011: First Post by Development team.
15-Sep-2012: First Post by Aaron Donat.
27-Sep-2012: First Post by Jason Lech.
23-Jul-2013: First Post by Lee Butenhoff.
16-May-2014: First Post by Tracy Steere.
30-May-2014: First Post by Kevin Racer.
18-Aug-2014: First Post by Lucas Miller.
Social Networking & Syndication
Follow David Musgrave and the blog on:
This blog at
Inside GP Blog:
GP Support Blog:
Menus for VST:
This blog is provided "AS IS" with no warranties, and confers no rights.
The links in this blog may lead to third-party Web sites. Microsoft provides third-party resources to help you find customer service and/or technical support resources. Information at these sites may change without notice. Microsoft is not responsible for the content at any third-party Web sites and does not guarantee the accuracy of third-party information.
WorldMaps Statistics since 24-Feb-2009:
Click for WorldMaps Stumbler
Translate this page
General Articles & Links
Modifier & VBA Articles & Links
Dexterity Articles & Links
Developer Toolkit Articles & Links
Modifier & VBA Samples
Developer & Consultant Articles & Links
Report Writer Articles & Links
Developer Toolkit Samples
Microsoft Dynamics GP Blogs
Support Debugging Tool Portal
Menus for Visual Studio Tools Portal
Newsgroups & Forums Links
Microsoft Dynamics GP Community Forum
Great Plains Tek Tips Forum
Microsoft Dynamics GP Blogs at Dynamics Communities
Microsoft Dynamics GP Partner Forum
GPUG Member Forum
Dynamics GP Support and Services Blog
DynamicAccounting.net (Mark Polino's Blog)
The Dynamics GP Blogster (Mariano Gomez's Blog)
Microsoft Dynamics GP UK Blog
Microsoft Dynamics GP (Duke DelPrado's Blog)
Microsoft Dynamics GP Blogs Page
VSToolsForum.com (Steve Gray's Blog)
About Dynamics, Development and Life (Jivtesh Singh's Blog)
DynExtra (Habib Salim's Blog)
The Death of Reason (Dwight Specht's Blog)
BlogMS - Official Microsoft Team Blogs
Dynamics GP Land (Christina Phillips & Steve Endow's Blog)
Victoria Yudin's Blog
Dynamics GP Learn & Discuss (Vaidy Mohan's Blog)
Mohammad Daoud's Blog
Catherine Eibner's Blog
Rose Business Solutions Blog
Merit Matters Blog
GP2theMax (Frank Hamelly's Blog)
Dynamics Confessor Blogspot (Leslie Vail's Blog)
Interesting Findings & Knowledge Sharing (Sivakumar Venkataraman's Blog)
Dynamics GP Middle East (Feradh Zain's Blog)
MBS Guru (Michael Johnson's Blog)
Inside Microsoft Dynamics GP (Official Blog)
ComputerationDynamics (Gloria Braunschweig's Blog)
Microsoft Dynamics Partner Community Blog
Q Factor's Blog (Constance Gilleland's Blog)
Dynamics Small Business (Matt Landis' Blog)
DynamicsBlogger (Janakiram M.P.'s Blog)
DynamicsGP.ie (Ian Stewart's Blog)
Armanino Dynamics Blog
Great Plains Guy (David Patrick's Blog)
Dynamics Financial Reporting
Waqas Butt's Microsoft Dynamics GP Blog
eOne Business Solutions Blog
Real Life Dynamics User (Ron Wilson's Blog)
In Touch with Dynamics GP (Touchstone Group's Blog)
Dynamics GP - Knowledge Share (Sandip Jadhav's Blog)
Andy Nifong's Blog
Dynamics GP Builders & Reporting (Devon Southall's Blog)
Summit Group Software Blog
Belinda, the GP CSI (Belinda Allen's Blog)
GPWindow.com - Your window into Dynamics GP Resources
Dynamics Latam Blog
Dynamics for Distribution (Todd McDaniel's Blog)
Omar H. Kloub's Blog
Kuntz Consulting Blog (Jen Kuntz's Blog)
Aaron Berquist - High Dynamic Range
Dynamics GP Blog (Imtiaz Ahmed's blog)
Dynamics GP Help (Rubalpal Kaur's Blog)
Inside Dynamics GP Blog
Microsoft Dynamics GP Discussion (Samuel Mathew's Blog)
BKD Dynamics GP Insights Blog
Andrew Karasev's Blog
MonzerOsama.com (Monzer Osama's Blog)
azurecurve (Ian Grieve's Blog)
Microsoft Dynamics GP DBA (John Lowther's Blog)
Accidental Administrator (John Lowther's other Blog)
Dynamics GP Essentials (Mahmoud M. AlSaadi's Blog)
Dynamics Tips (Venugopal G.A.'s Blog)
Connector -- Integrating Dynamics ERP with Dynamics CRM
The Dynamics GP Geek Blog (Beat Bucher's Blog)
Create Support Incident
Search Knowledge Base
Microsoft Dynamics GP Developer Center
Microsoft Connect: Add a Product Suggestion
Microsoft Dynamics GP Demo Site
Microsoft Dynamics Partner Solutions
Microsoft Dynamics Partner Community
Microsoft Dynamics ISV Solutions (PartnerSource)
Microsoft Dynamics GP Solution Center (PartnerSource)
GPWindow.com - Your window into Dynamics GP Resources
Microsoft Dynamics GP Community
GP Logos through the years
Menus for Visual Studio Tools for Microsoft Dynamics GP 10.0
Support Debugging Tool for Microsoft Dynamics GP
Cross Dictionary Dexterity Development
How to get started with Dexterity
Support Debugging Tool - The wait is over
Choosing a Development Tool
Microsoft Dynamics GP Technical Airlift 2008
Menus for Visual Studio Tools - The wait is over
Finding Table and Field Information in Microsoft Dynamics GP
Microsoft Dynamics GP Application Level Security Series
Useful SQL Scripts Series
Support Debugging Tool Build 10 released
Translating Dexterity Applications Series
Why does Microsoft Dynamics GP encrypt passwords?
Support Debugging Tool Build 11 released
Automating Distribution of Customizations
Installing the Support Debugging Tool for Microsoft Dynamics GP FAQ
Understanding Cross Dictionary Dexterity Development
Microsoft Dynamics GP Technical Conference 2009 Wrap Up
Support Debugging Tool Build 12 released
Support Debugging Tool for Microsoft Dynamics GP 2010 Beta
Microsoft Dynamics Convergence Atlanta 2010 Wrap Up
Support Debugging Tool Build 13 released
Menus for Visual Studio Tools Build 9 Released
Getting the most out of your Microsoft Dynamics GP Community
Why can't I run Microsoft Dynamics GP via ODBC over a WAN?
Support Debugging Tool Build 14 released
Microsoft Dynamics GP Technical Conference 2011 - Wrap Up
The Great West Australian Bike Ride - Wrap Up
Microsoft Convergence 2011 Atlanta - Wrap Up
Support Debugging Tool Build 15 released
Support Debugging Tool Build 16 released
Microsoft Convergence 2012 Houston - Wrap Up
Understanding the Support Debugging Tool Series
Support Debugging Tool Build 16 Hotfix released
Support Debugging Tool Build 17 released
Menus for Visual Studio Tools Build 9 for Microsoft Dynamics GP 2013 Released
Support Debugging Tool Build 17 hotfix released
Microsoft Convergence 2013 New Orleans - Wrap Up
Microsoft Dynamics GP Technical Airlift 2013 Wrap Up
Support Debugging Tool Build 18 released
Microsoft Convergence 2014 Atlanta - Wrap Up
Support Debugging Tool Build 18 hotfix released
Browse by Tags
Developing for Dynamics GP
Tagged Content List
Customising the Company Login window series Part 3 - Dexterity
Following on from my previous posts: Customising the Company Login window series Part 1 - Introduction and Customising the Company Login window series Part 2 - Visual Basic for Applications , here is the method to create a solution using Dexterity. As discussed in the earlier posts, the problem we...
27 Jul 2014
Customising the Company Login window series Part 2 - Visual Basic for Applications
Following on from my previous post: Customising the Company Login window series Part 1 - Introduction , here is the method to create a solution using Visual Basic for Applications (VBA). As discussed in the earlier post, the problem we are trying to overcome is that the company drop down list on the...
20 Jul 2014
Customising the Company Login window series Part 1 - Introduction
Recently a comment from David M (not me) was posted on the Support Debugging Tool Portal ( http://aka.ms/SDT ) page asking: "We have some fairly long names for our GP companies. Well, when logging onto GP, the second "Company Login" screen cuts off the company names too short for us. The entry field...
22 Jun 2014
Troubleshooting the Microsoft Dynamics GP 2013 Web Client Series
My friend, Mariano Gomez aka The Dynamics GP Blogster , has been busy writing a fantastic series of articles about troubleshooting the Microsoft Dynamics GP 2013 Web Client. Mariano was one of the early adopters of the technology and worked closely with Microsoft support and development teams to provide...
6 Aug 2013
Developing with the Microsoft Dynamics GP 2013 Named System Database
Microsoft Dynamics GP 2013 introduced another long sought after feature.... The Named System Database. Instead of the System database being hardcoded to DYNAMICS, a different name can be selected when installing GP. So what does that mean? Well, it means that more than one Dynamics GP system can...
25 Jul 2013
Quick Tip: Handling scripts that use old() when using triggers to set default values
This Quick Tip comes to you after I faced this issue in a recent customisation project. I had seen this issue before and knew the approach required to solve it, but I don't think it has been documented publicly till now. The Scenario The customisation required is fairly common. The customer...
10 Mar 2013
How to create Dexterity Cross Dictionary Lookups
As you may know, I was one of the pioneers of Cross Dictionary Dexterity Development and have posted about it a number of times (also see Can I customise a 3rd party form with Dexterity? and Understanding Cross Dictionary Dexterity Development ). I am currently involved as a technical advisor on a...
16 Dec 2012
Update: Resizing SmartList TreeView and ListView panes using the Support Debugging Tool
As promised in my post Quick Tip: Creating a Splitter control between panes of a window with Dexterity , I have updated the concept of my previous post: Resizing SmartList TreeView and ListView panes using the Support Debugging Tool to use a Splitter control rather than selecting a percentage via a menu...
4 Dec 2012
Quick Tip: Creating a Splitter control between panes of a window with Dexterity
For many years Dexterity developers have wanted to be able to add a splitter control to windows with "panes" created with lists, treeviews or listviews. Using the window Object property Resizeable set to True-Per Field, developers have created windows which can be resized but the join between the...
2 Dec 2012
Quick Tip: How to remove an alternate window from your Dexterity development environment
One great thing about doing the job I do as an Escalation Engineer on the Asia Pacific Microsoft Dynamics GP support team is I have no end of support cases from which to draw ideas for blog posts from. So here a Dexterity case I helped with recently. The Problem The question from the Dexterity...
30 Oct 2012
Further Update: Obscuring Table Data Fields using the Support Debugging Tool
A while back, I posted some articles which used the Support Debugging Tool and non-logging Automatic Debugger Mode triggers to " encrypt " data. The use of the word " encrypt " was unwise as it has connotations about providing a level of security and possible compliance with various standards. ...
9 Oct 2012
Update: Adding Window Size and Position Memory using the Support Debugging Tool
While I am updating examples, I have made some changes to the Adding Window Size and Position Memory using the Support Debugging Tool sample code. The original version used the Dex.ini to store the window size and position as a setting, for example: MBS_Win_POP_PO_Entry_POP_PO_Entry=-400,-118,664...
20 Aug 2012
Update: Obscuring Table Data Fields using the Support Debugging Tool
A little while ago, I posted an example of Obscuring Table Data Fields using the Support Debugging Tool . During my recent Dexterity Training class , I showed this example to the attendees and was asked about how the obscuring worked with reports. So, as a test, we printed the RM Customer Report...
19 Aug 2012
Determine Company_Options from DYNAMICS.dbo.SY01500 (Reading a Multi-Select List Box)
A recent post on DynDeveloper.com caught my eye as I have faced a similar problem before and had to work quite hard to get the correct answer. The post was titled: Determine Company_Options from DYNAMICS.dbo.SY01500 and asked how to figure out how to interpret the binary(4) field. I realised that...
5 Aug 2012
Obscuring Table Data Fields using the Support Debugging Tool
My colleague, Allan, had a case recently where the customer had noticed that the Credit Card Number field stored on the Customer Master table at the SQL Server level was not encrypted or obscured and could be seen by anyone who could access the data. Before, you say that this is a huge security risk...
31 Jul 2012
Resizing SmartList TreeView and ListView panes using the Support Debugging Tool
This article is another Support Debugging Tool Non-Logging Trigger example and is a follow up to two previous articles: From this blog: Adding Window Size and Position Memory using the Support Debugging Tool From Mark Polino: Dynamic Future - Vote - Resize the Left Pane on Smartlists...
19 Jul 2012
Adding Window Size and Position Memory using the Support Debugging Tool
As a follow on to the article: Using Support Debugging Tool Non-Logging Triggers , I thought I would post a few small examples of how Non-Logging Triggers can be used for simple customizations. There have been some other examples posted in the past on this and other blogs. If you are interested have...
17 Jul 2012
How to calculate Aging Buckets based on documents shown on a Receivables Statement
I had a case a couple of weeks back, where the customer wanted to filter the transactions shown on a Receivables Management Statement. There was one type of transaction that they did not want included on the statements sent out to the customers. The transactions to be excluded could be identified by...
12 Jul 2011
How to access data from other companies from Dexterity
Have you ever had to develop Dexterity code that needs to read data from a company other than the current Microsoft Dynamics GP company? Well, with my latest updates to the Support Debugging Tool , I came across this requirement. While developing the support for the Extender security objects, I realised...
23 Jun 2011
How to add Item Category Long Descriptions to reports using the Support Debugging Tool
I am currently working on a support case where the customer is making use of the six user defined categories for items. That in itself is nothing remarkable or worth blogging about. However, they are using Long Description field on the Item Category Setup window and wished to include the data from this...
23 May 2011
How to read a Dexterity Script Profile to solve Performance Issues
Today, I thought I would spend a little time explain how to read a Dexterity Script Profile to resolve a performance issue. To demonstrate this I will use a support case I had where the customer was intermittent long delays when clicking on the checkbox on the Apply Sales Document window. The customer...
12 May 2011
Quick Tip: How to create conditional Triggers in Dexterity
Here is another Quick Tip article. This time I wanted to discuss the best practices for making conditional triggers in Dexterity. There are times where we might want to have a trigger which only runs under certain circumstances. There are a number of methods of handling these situations. This post...
9 May 2011
Quick Tip: Understanding the Dexterity Reject Script command
This is a Quick Tip post to explain how the Dexterity Reject Script command works. The Reject Script command is designed to be used in trigger scripts to stop the original code from running. However, it only works in specific situations: The trigger MUST be a Focus trigger on a user interface...
27 Apr 2011
Working with Temporary Files in Dexterity
Keeping with the theme of my previous post , I have another "Temporary" topic to discuss. Dexterity developers sometimes need to write out files (usually text files) to a location. This could be for a variety of purposes, including: to create a file for integration into an external application...
27 Oct 2010
Working with Temporary Tables in Dexterity
Dexterity developers often need to use temporary tables to perform tasks, such as displaying data in a different order, consolidating or totalling data, to store data while it is being edited, or to combine data from tables so it can be sorted using an index using fields from multiple tables. Working...
25 Oct 2010
Page 1 of 2 (39 items)
Social Media Sharing
© 2014 Microsoft Corporation.
Privacy & Cookies