Page 3 of 3012345678910...202530...Last »

Display Specific Line in Sales Order Processing

Patrick Roth - Click for blog homepageThis will be a 2-for-1 post today as the example given solves a frequently asked question and was used to solve a customer issue.

The question I’ve seen a number of times before and been meaning to write about is: “How can I fill the Sales Order Processing scrolling window to a specific line?”.  With Dexterity it isn’t terribly difficult but is it possible with Visual Studio Tools?

The answer turns out to be “yes” by using a feature that Dynamics GP added with GP 10 or maybe 2010 (It is the Find Item feature – Drop Down bar | Find Item.  Anybody use this?).

The Problem

The problem that my customer was concerned about came about due to the Suggest Items feature for GP 2013.

When this feature is activated for an item, after you enter an item in Sales Transaction Entry, the “Suggest Sales Item Entry” window will open and allow the user to select any number of items from that list.   After selecting the items and hitting “OK”, the window will enter the items in the back end, update the document totals, and then refill the scrolling window.

The concern was that in doing so, Dynamics GP moves focus to the Customer PO Number field and then refills the scrolling window from the top.  This forces the user to scroll back to the bottom of the list and re-select the Item Number and start entering data again which slows their users down.

The Reason Why

Before clearing & refilling the SOP scrolling window, the code moves focus to the Customer PO Number and then calls the Refill_Scroll of form SOP_Entry procedure.  In this case that wouldn’t have been necessary but it would still refill the scrolling window which would remove focus from the window.  So either way, the customer finds this annoying.

The Solution

The obvious solution is that after the scrolling window is refilled (from the top), we should come behind and then have the window refilled again to the bottom on a new line so as to be able to quickly add the next item.

From Dexterity, we can use the “fill window” statement..  But for this to work right, we need it to be the SOP_LINE_WORK from the Sales Transaction Entry window.  Not a huge problem but one that typically often takes a trick to do.

From Visual Studio Tools, we don’t have the same equivalent – it cannot fill a scrolling window.  Perhaps development will read my post and throw it in for the next version…

So thinking about the “Find Item” feature, I took a look to see how we did that.  And the function is:

GetLineItemSequenceReturn() of form SOP_Entry

function returns integer GetLineItemSequenceReturn;
 in   integer     nCallerID;
 in   ‘SOP Type’    nSOPType;
 in   ‘SOP Number’   sSOPNumber;
 in   ‘Component Sequence’ nComponentSequence;
 in   ‘Line Item Sequence’ nLineItemSequence;
 inout  table      SOP_LINE_WORK;


To be honest, it looks exactly like I’d expect.  The key fields for the table and the table buffer itself (with the range already set).

With Visual Studio Tools, using the right table buffer is a piece of cake – I love the feature that it allows us to specify the table buffer instance of a form!

So to refill the scroll window as we want, all we need to do is use a focus trigger when the Suggest Sales Item Entry window closes and call the procedure above.

Trigger Handling Script

void SopSuggestSalesItemEntry_CloseAfterOriginal(object sender, EventArgs e)       

       Microsoft.Dexterity.Applications.Dynamics.Forms.SopEntry.SopEntry.SopTypeDatabase.Value, //The SOP Type = the real one vs how it shows in the SOP Type DDL
       Microsoft.Dexterity.Applications.Dynamics.Forms.SopEntry.SopEntry.SopNumber.Value,//SOP Number
       0, //component sequence, always 0 since we don’t show component lines in SOP UI
       Microsoft.Dexterity.Applications.Dynamics.Forms.SopEntry.SopEntry.LineItemSequence.Value,//line item sequence to display, in this case we want to show the “next” line          
       Microsoft.Dexterity.Applications.Dynamics.Forms.SopEntry.Tables.SopLineWork);//the SOP_LINE_WORK table.  We want to use the one from SOP Entry itself which vstools allows us to do
    //lastly, focus to the item number

In the example above, we pull the Line Item Sequence value from SOP Entry as that will be the “next line sequence number” for the next item entered.

The SopLineWork table is passed using the form table buffer.

After I wrote and tested the solution in VSTools, I thought it would be interesting to use the Support Debugging Tool.  This actually might have been difficult trying to get the SOP Entry table buffer to pass to the procedure.  But as it turns out, there is a trick to that as well.

In SOP Entry,  there are actually references to the SOP_HDR_WORK & SOP_LINE_WORK tables on the UI.  Table References are typically colored Dark Green on the UI.

SDT Code

out boolean OUT_Condition;

OUT_Condition = false;

if isopen(form SOP_Suggest_Sales_Item_Entry) then
  ‘SOP Type Database’ of window SOP_Entry of form SOP_Entry,
  ‘SOP Number’ of window SOP_Entry of form SOP_Entry,
  0, component seq
  ‘Line Item Sequence’ of window SOP_Entry of form SOP_Entry,
  table(SOP_SOLineState:’Table Reference’ of window SOP_Entry of form SOP_Entry)
 ) of form SOP_Entry;
 focus ‘Item Number’ of window Line_Scroll of form SOP_Entry;
end if;


The SDT Dexterity code above uses the same call as VSTools naturally.  The only real difference is the table buffer for the SOP_LINE_WORK table.

Notice that we use the SOP_SOLineState object to de-reference the table buffer and then pass it into the function. 

Getting the Code

Attached  to this post is a zip file that contains another zip file that holds the Visual Studio 2010 solution( with source) and the compiled assembly for GP 2013.  Just copy the SOPSuggestItemsFocus.dll into the GPAddins folder and it should start working for you.

Also in that same zip file is the Script Debugger Tool xml that does the same thing.  So if you are using SDT, you can just import this solution and it will perform the same as the VSTools assembly solution.

PS: If GP crashes after you install the dll, refer to my recent blog post that explains why this happens and how to fix it.


Patrick Roth
Senior Escalation Engineer, Dynamics GP

// Copyright © Microsoft Corporation.  All Rights Reserved.
// This code released under the terms of the
// Microsoft Public License (MS-PL, 


See the original post:
Display Specific Line in Sales Order Processing

February 20, 2014 · Patrick Roth · No Comments
Tags: , , , , , , ,  · Posted in: Blogs I Follow Total Views: 257

Mark Polino’s Dynamics GP Dashboards

In the Dynamics GP world, Mark Polino is the gift that keeps on giving. About 5 years back Mark had posted a few SQL scripts which provided great insight into Dynamics GP  data. I requested Mark to share them, and the next day he compiled and emailed them all. Last year Mark wrote a book around building great dashboards on top of Dynamics GP. Again, people have been requesting Mark to share these goodies. Mark’s worked hard to build generic dashboards that you can plug with your Dynamics GP install. Naturally, something like this takes an incredible amount of time – so please support Mark by purchasing these beautiful dashboards.

For more details check out

Simplicity is a key driver in this prebuilt, sales dashboard designed for Microsoft Dynamics GP. The dashboard is plug and play with a very straightforward connection to your company’s data. The dashboard includes:            

● Top Customers with corresponding costs               
● Top Items with corresponding costs               
● Top Salespeople, Territories and Sites               
● Sales over time with forward looking projection               
● Sales mix over time by item class               
● A full range of data filters to control information


Read more here:
Mark Polino’s Dynamics GP Dashboards

January 15, 2014 · Jivtesh Singh · No Comments
Tags: , , , , , , , , , , ,  · Posted in: Blogs I Follow Total Views: 155

RapidStart Services for Microsoft Dynamics GP 2013–Training Course

I have written about RapidStart Services for Dynamics GP before. Its a powerful set of tools which allows you to speed up implementations by providing –

  • RapidStart Services for Microsoft Dynamics GP Migration
  • RapidStart Services for Microsoft Dynamics GP Configuration 

Gloria has written a book on Rapid Implementation which covers these tools – check it out at

Microsoft has also published a 45 minute training course – 80577AE RapidStart Services for Microsoft Dynamics GP 2013. Its available via Microsoft Dynamics eLearning or as a separate purchase. An hour spend learning about these tools will save you days during implementation.

For more details check out : RapidStart Services for Microsoft Dynamics GP


The Rapid Implementation Tools for Microsoft Dynamics GP 10.0 and Microsoft Dynamics GP 2010 and RapidStart Services for Microsoft Dynamics GP 2013 include two tools designed to shorten deployment time and enable greater Partner productivity by reducing the time required for routine implementation tasks. These tools are also designed to work with the Microsoft Dynamics Sure Step Methodology.

The Rapid Configuration Tool for Microsoft Dynamics GP quickly configures core application setup data to meet specific business needs. By using one of thirteen available industry templates, or a customized configuration template created in Microsoft Office Excel 2010 and/or Microsoft Office Excel 2013, a new Microsoft Dynamics GP company can be configured easily within the intuitive user interface. Settings and data such as the chart of accounts, fiscal years, payment terms, shipping methods, taxes, core financial and distribution module setup, and more can be quickly set up using this tool. New to this release is the ability to select individual Setup Areas allowing configurations to proceed in a phased approach rather than an all or none approach when importing configuration data from another Microsoft Dynamics GP company.

RapidStart Migration Tool for Microsoft Dynamics GP 2013 supports –

  • QuickBooks Pro (2003 – 2013), Premier (2003 – 2013) and Enterprise (3.0 – 13.0) Peachtree (2009 – 2012) versions of Pro, Complete and Premium, Sage 50 2013

View post:
RapidStart Services for Microsoft Dynamics GP 2013–Training Course

January 14, 2014 · Jivtesh Singh · No Comments
Tags: , , , , , , , , ,  · Posted in: Blogs I Follow Total Views: 174

Please Enter A Valid Tax Registration Number | azurecurve

In this case, the client operates only in the UK and doesn’t need to have Tax Registrations recorded in GP, so they were able to just stop setting the Country Code field on the addresses. What should we write about next?

More here:
Please Enter A Valid Tax Registration Number | azurecurve

December 18, 2013 · Ian Grieve · No Comments
Tags: , , , , , , , , ,  · Posted in: Blogs I Follow Total Views: 118

Management Reporter Login Error

I thought I had posted this a while ago, but searching my blog I can’t find it. A client contacted me recently to report the following error message: Management Reporter – Can’t connect to the Management Reporter server. Do you … Continue reading

Read More:
Management Reporter Login Error

December 11, 2013 · Ian Grieve · No Comments
Tags: , , , , , , , ,  · Posted in: Blogs I Follow Total Views: 216

Which countries have the most Dynamics GP Users ?

When introducing new users to Dynamics GP I often discuss the countries where Dynamics GP is popular. I had been using an old graphic, and after talking to people like Mariano Gomez – I know there are a lot of additional countries which use Dynamics GP. Mariano himself has implemented GP in over 20 countries. I knew David Musgrave had adding a map graphic 4 years back on his website, and a few of us other bloggers had followed. The graphics show from where people are accessing the Dynamics GP websites.  I think the graphics below pretty much sum up the countries and regions where a lot of people are using for Dynamics GP.

Lots of Dynamics GP users in

    • USA, and Canada
    • Europe
    • Middle East
    • South East Asia
    • Australia and NZ
    • South Africa
    • South America

Pretty much all over the world! By the way, if you are wondering why Dynamics GP is only on the coasts of Australia –  well, that’s where 95% of Aussies live.

Developing for Dynamics GP

by David Musgrave (Perth, WA, Australia) and the Microsoft Dynamics GP Developer Support Team (Fargo, ND, USA)


The Dynamics GP Blogster by Mariano Gomez
 by Mark Polino


View article:
Which countries have the most Dynamics GP Users ?

December 11, 2013 · Jivtesh Singh · No Comments
Tags: , , , , , , , ,  · Posted in: Blogs I Follow Total Views: 106

Review of Microsoft Dynamics GP 2013 Implementation by Victoria Yudin

Victoria Yudin, the longest serving Microsoft(R) Most Valuable Professional for Microsoft Dynamics GP, has just released Microsoft Dynamics GP 2013 Implementation via Packt Publishing. This is an update of the Microsoft Dynamics GP 2010 book she wrote a few years … Continue reading

Continue reading here:
Review of Microsoft Dynamics GP 2013 Implementation by Victoria Yudin

December 2, 2013 · Ian Grieve · No Comments
Tags: , , , , , , , , ,  · Posted in: Blogs I Follow Total Views: 112