More and more, I'm seeing the value of calling the eConnect stored procedures directly. There's a lot of overhead in spooling up the .NET code. 

I only do this in lower risk areas... I probably would not normally do a SOP Document because you have to handle so many errors and be sure to back out any lines that you create if there is an error. 

But a SOP Void is easy and painless. I had to do this today for a client, so here it is for your enjoyment. 



Below are some sample formulas for SSRS fields. I've found that they're not all that intuitive. I know that you can Google them, but it's easier for me to blog them here, and then look on the menu for them when I'm developing. 

Included below are formulas for bolding and changing fore/background color. I'll add more if I need to code them. 

Take a second and look on the menu above: Knowledge Base > SQL Reporting Svcs, then search for (CTRL + F) 'sample formulas'. Easy Peasy.

Read this requirement carefully:

Write a trigger writes lines to an audit table ONLY WHEN THE RM00101 CUSTNMBR OR CUSTNAME CHANGES

If you've ever written a trigger on RM00101 (or any Dynamics GP table) you know that ALL fields are updated when you save in GP, even if the data is not changed. 

In the past, I've compared the field in the DELETED table to the field in the INSERTED table, but that gets wordy and is not... elegant. 

I have a solution

At 4Penny, we have an overly complicated piece of library code that we import into all projects that need data access (primer for that here) but on quick jobs it's not worth the setup. 

Here is a quick piece of code that will call a stored procedure and return a dataset. 


Okay - I need some general guidance.

Looks like my client will need to upgrade from GP2018 R2 (build 18.00.0628) to latest GP2018 release because Microsoft is changing TLS authentication and therefore, emailing from within GP will require being on latest release.


1. We have two Dexterity customizations. Both pretty complex. Our reseller has the source code for one of the customizations (they wrote it) - the other customization was written by someone a long time ago and reseller says they don't have source code.

2. I asked for a quotation to basically re-compile, test etc. and they quoted minimum $3500 for the customization they wrote and stated unequivocally I could not have the source code and deal with a different developer - against their policy. 

3. They quoted a strict Time and Materials pay as you go and no limit to what it may cost to the second customization that they did not write and say they don't have source code. 

4. This same reseller did our last upgrade from GP2015 to GP2018R2 - 2-3 years ago.


1. My experience says $3500 minimum for a simple update is outrageous. Your thoughts?

2. My experience is the organization that pays for the customization owns the source code. Your thoughts?

3. I thought you had to have the source code to update a dexterity customization. How did this reseller perform the last upgrade without source code? 

I'd be happy to share more details on the two customizations if needed or requested.

Thanks, in advance.

Bron Tamulis



I am using taCreateSopPaymentInsertRecord to create an SOP Payment Record and have a problem when trying to create a payment for a couple of Checkbook ID's

The error #48 missing credit card information is returned, but these are cash accounts.   I am passing an empty char(15) to CardName and the appropriate checkbookID and SOPType = 2 (constant 2 for all entries entered using this method)   What is making the system think this needs credit card information?

The version of GP version is 18.3.1173  (GP 2019)

This is what a valid entry looks like in production.


Client has upgraded their exchange server and now requires authentication that GP2016 cannot do.  So we get the message cannot connect to MAPI server.  We know we need to get them upgraded to GP2018 and the patch that can connect to the upgraded exchange server.  But in the meantime, is there an external service provider that would allow GP2016 to connect and send email statements, ach advices, etc?  Hope somebody else has gone down this road.


Hi all,

Has anyone worked with buttons that have button items in VST?  Looking for a way to identify which button or button item has been clicked.   The example below is a single button that takes on a few different forms from what I can ascertain. 




Table Definition Quick Links
All Tables
SOP Tables
RM Tables
GL Tables
POP Tables
HR Tables
PM Tables
UPR Tables
IV Tables
Olympic Tables