It’s inevitable that when creating an integration to Dynamics GP there are going to be errors returned at some point in the process due source data differences, mapping data incorrectly or differences in eConnect business logic. We might have missing vendors or customers or distributions amounts don’t match documents amounts or we haven’t provided a required piece of data. Looking at the error message that is returned can be a bit overwhelming until you break it down. In this article I will break down those error messages into their simple components making them easier to understand.
Let’s start with a simple example where we get one error.
We are trying to create Payables Transactions but the vendor doesn’t exist so we will get the following error.
In the SmartConnect Progress window, we can double-click on the error message to get a dialog box that allows us to review the information provided.
The first thing we will note is the Error Number, which on this particular data run is 372, comes directly from eConnect.
We are also displaying the stored procedure which generated the error, taPMTransactionInsert, which is the Create Payables Transaction node, helping to determine where to begin troubleshooting or reviewing the mapping to see why this error occurred. On this node we will first validate we have the right source column mapped or right calculation.
As a side note, if you want to see a list of the eConnect errors by running the following query (where DYNAMICS is the Dynamics GP System Database).
SELECT * from DYNAMICS..taErrorCode
This table is populated when installing Microsoft eConnect from the Dynamics GP installation media or the SmartConnect Install.
Next we can look at the error description provided by eConnect, which also exists in the taErrorCode table referenced above. The error description provides the detail of why we received this error. In this case, the Vendor does not exist in the PM00200 table. We could check that by executing a query using SQL Server Management Studio.
The data immediately below the error description, Node Identifier Parameters, gives us the key data used by eConnect during processing of this integration. This will be the data that is either missing or incorrect along with the fields required for integrating to this node. Here we can see VENDORID = SKOL0001, which is the value in our data source that we mapped to the Vendor ID field. I can say for certain, this vendor does not exist in my Dynamics GP system. Since we know the vendor does not exist, we need to create it or change our data source values to make this integration work.
The last piece of information is the XML that was generated and sent for the specific Dynamics GP eConnect node. This provides the final data that SmartConnect sent so you can review any other data elements that may cause an issue down the road. We can take each data element in this XML to see how we mapped the source data to each destination field.
It is possible there may be more than one eConnect error generated by a specific integration run since eConnect continues to validate each data element. Some errors may occur because of a missing data element as we note below. Each error encountered will be displayed in window so we need to walk through each error in the same manner as described to see if we have a mapping issue or it’s a business logic issue.
In this example, I am integrating SOP documents but for one of the line items, the Item Number is missing which is the first error received. We will note the Related Error Code Parameters shows that for the NONINVEN node, we did not specify a value in our mapping. In this case, that parameter is related since we could specify the Item as Non-Inventoried and this error would not happen.
Two additional errors, 5313 and 11454, are a result of the item number not existing in Dynamics GP so eConnect is unable to default or validate the required values for that item such as Unit of Measure and Decimal Places Quantity.
All Dynamics GP eConnect errors that appear during SmartConnect integrations are logged in the SmartConnect Event Log and in the Dynamics GP eConnect Event Log. This allows for troubleshooting further if the integration is being run on a schedule or the user did not keep a screen shot of the specific error.
SmartConnect Event Log
eConnect Event Log
In this article I have focused strictly on errors that are returned from Dynamics GP eConnect since it can be a lot of information to digest. Troubleshooting these errors does take understanding of how Dynamics GP works and what it may be expected or defaulted with the understanding that eConnect does not work 100% the same as Dynamics GP user interface.
The best troubleshooting method is to review each error individually. Determine what data is being sent to eConnect to see if it is what was expected or do we have a transformation issue in our mapping. If the data is correct, meaning it’s not a transformation issue, then we need to determine why eConnect returned an error. Is data missing? Were defaults not available for eConnect? Is our Dynamics GP setup not correct? Is the eConnect logic different than the User Interface? Once we know why we get the error we can change our data or our transformation until we get the desired results.
The most recent Dynamics GP eConnect documentation can be found here.