Sign Up Now!Log In



When choosing the PO import in IM, I got a message that states it requires an additional install.  This error indicates that eConnect is not installed on the workstation.


Adding a custom field to the Dynamics RM report "Historical Aged Trial Balance" to filter the results. 

On a recent integration I needed to be able to change the decimal places for non inventoried items. This post shows how to do that

In this article, we discuss steps to handle this error:

Sql procedure error codes returned:

Error Number = 537 Stored Procedure= taRMTransaction Error Description = An error occurred in the taMCCurrencyValidate proc

Error Number = 9389 Stored Procedure= taMCCurrencyValidate Error Description = A valid Exchange Rate could not be found for the Document Date specified Node Identifier Parameters: taMCCurrencyValidate DOCDATE = 11/4/2014 Related Error Code Parameters for Node : taMCCurrencyValidate EXGTBLID = Note: This parameter was not passed in, no value for the parameter will be returned.
DOCDATE = 11/4/2014


This article discusses fixes for this error: 

Sql procedure error codes returned:

Error Number = 4646 Stored Procedure= taSopLineIvcInsert Error Description = Decimal Places passed in on UNITPRCE does not match setup Node Identifier Parameters: taSopLineIvcInsert
Related Error Code Parameters for Node : taSopLineIvcInsert UNITPRCE = 54.363330


 This article discusses this eConnect error:

Sql procedure error codes returned:

Error Number = 1339  Stored Procedure= taRMDistribution  Error Description = Invalid Distribution Type
Node Identifier Parameters: taRMDistribution
DOCNUMBR = SUM5021-002

  <ACTNUMST>2205-     -     -                                                                                                                </ACTNUMST>

If you have any interest in VBA and Dynamics GP, this is worth reading. It's a technique that I have not seen any documentation on.

The task is to default the Territory ID field in the Customer Maintenance form in Dynamics GP.

Normally, we'd trap the CHANGED event on the CUSTNMBR field and populate the Territory ID field, but the CHANGED event occurs before the form is populated so the default value gets wiped out when the form populates.


Recently, a client asked us to add an additional filter field to the standard GL Trial Balance Summary SSRS report for Dynamics GP.  

This tutorial contains the report and the custom SQL that you will need to implement this for yourself. The object is to add an additional filtering field (in our case the User Defined 1 in the Account card) to a report.

The script and report can be further altered without too much effort.

I did a backup and restore today of a Dynamics GP database to a test company (like I've done many times before) and got this message:


The Selected Company is not configured as a company of the current Microsoft Dynamics GP system database. Grrr. My friend Steve Groh from S2Technology helped me with the answer.

I get to see quite a bit of XML, and my path in the past has always been to use LINQ to iterate through the document and read it into a class. Then I’d use the class to do whatever work I need to do.

This code takes advantage of the XmlSerializer.Deserialize method. It will take the XML document an turn it into a .NET class.

To run this code, create a Windows Forms application and drop this code into the form code behind. It is complete and should run unmodified.

Note that the OrderedItem class and the getXMLDoc function both make use of namespaces for two of the elements, so we show how to code this both with and without namespace references.

 Recently a customer asked us to build a report to give them visibility to their item sales. The report needed to have quantity, cost, extended price and Gross Margin.

This article contains the SSRS .rdl file and the stored procedure to power it. The finished report looks like this.

Cannot import package because the required customization tools are not registered. We document how to fix this this issue



On a recent job we were asked to insert Deferred Revenue lines into Dynamics GP because the current integration was not doing it.

This article includes the trigger that we used to do the trick.


Our client have requested to setup AR for them but they want to know the difference between Sales batches and invoicing batches i the SOP module. I have researched but have not come up with concrete difference. Can I please get a little insight in this...Thanks

Due to a huge project on our contracts I have been asked to update the data on contracts what I am trying to do is insert a load of data into SVC00601

Everything works and the SSIS Package has all Success except for 1...


Error 0xc0202009: Data Flow Task 1: SSIS Error Code DTS_E_OLEDBERROR. An OLE DB error has occurred. Error code: 0x80004005.
An OLE DB record is available. Source: "Microsoft SQL Server Native Client 10.0" Hresult: 0x80004005 Description: "The statement has been terminated.".
An OLE DB record is available. Source: "Microsoft SQL Server Native Client 10.0" Hresult: 0x80004005 Description: "Cannot insert the value NULL into column 'DEX_ROW_ID', table 'SCH.dbo.SVC00601'; column does not allow nulls. INSERT fails.".
(SQL Server Import and Export Wizard)

DEX_ROW_ID is not in my spreadsheet and I have ticket

Enable  identity insert


Any ideas how to overcome this?


Many thanks

Good Afternoon...

I am looking to pull in some tables for Job costing.  From what I can see, our parts are found in table #10601 (job is still active).  In testing against actual BOM's I can see that the PO's that we purchased against "appear" to be identical to PO's that were cancelled, causing variances...  Is there a field that shows me the PO was cancelled?  I still see both the units and pricing/unit for the cancelled PO.

Any help would be greatly appreciated,

Regards, Tom

Edit 9/16/15 View the main article for this error here 

hello, I am trying post below xml for creating Sales Invoice but getting Document ID is invalid, I tried to create the same invoice in GP and it works fine.. I tried changing various Document ID but no success. any idea would be great help?


Error Number = 68  Stored Procedure= taSopHdrIvcInsert  Error Description = Document ID is invalid
Node Identifier Parameters: taSopHdrIvcInsert
SOPNUMBE = JW-1106-339
Related Error Code Parameters for Node : taSopHdrIvcInsert
DOCID = 28166

 ---> Microsoft.Dynamics.GP.eConnect.eConnectException: Error Number = 68 Stored Procedure taSopHdrIvcInsert  Error Description = Document ID is invalid  

   --- End of inner exception stack trace ---
   at Microsoft.Dynamics.GP.eConnect.EntityMessageProcessor.ExecuteSqlCommands(XElement transactionNode, EntityMessage message)
   at Microsoft.Dynamics.GP.eConnect.eConnectMethods.ProcessMessageImport(EntityMessage message)
   at Microsoft.Dynamics.GP.eConnect.eConnectMethods.EntityImportImplementation(String connectionString, String sXML, Boolean isTransaction)
   at Microsoft.Dynamics.GP.eConnect.eConnectMethods.CreateTransactionEntity(String connectionString, String sXML)
   at DLCGP.Connection.SendMessage() in d:\DLC\DLCGP\DLCGP\Connection.cs:line 61
2014-11-06 15:27:34,765 [36] DEBUG DLCGP.Logger                                       - DLCGP : Leaving the Sales Invoice Create


XML Message:

<eConnect xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <eConnectProcessInfo xsi:nil="true" />
    <taRequesterTrxDisabler_Items xsi:nil="true" />
    <taUpdateCreateItemRcd xsi:nil="true" />
    <taUpdateCreateCustomerRcd xsi:nil="true" />
    <taCreateCustomerAddress_Items xsi:nil="true" />
    <taSopSerial_Items xsi:nil="true" />
    <taSopLineIvcInsertComponent_Items xsi:nil="true" />
    <taSopTrackingNum_Items xsi:nil="true" />
    <taSopCommissions_Items xsi:nil="true" />
    <taSopLineIvcTaxInsert_Items xsi:nil="true" />
    <taCreateSopPaymentInsertRecord_Items xsi:nil="true" />
    <taSopUserDefined xsi:nil="true" />
    <taSopDistribution_Items xsi:nil="true" />
    <taAnalyticsDistribution_Items xsi:nil="true" />
    <taSopMultiBin_Items xsi:nil="true" />
    <taSopToPopLink xsi:nil="true" />
    <taSopUpdateCreateProcessHold xsi:nil="true" />
    <taCreateSOPTrackingInfo xsi:nil="true" />
    <taMdaUpdate_Items xsi:nil="true" />

we would like to change our all items unitcost to 4 digit decimal place however when we trying GP is saying we have PO existing for item, is there any alternate solution to resolve this without closing PO and any other open transactions?


We changed the custom interface code to use GpConnection since we wanted to use the same login for all databases involved in the interface as described in the document: DatabaseConnDynGPNet.doc.   Our process also uses eConnect to transfer data.  The A/R batch transfer runs correctly but when we click on the "Post" on the GP "Receivables Batch Entry" dialog, the posting process won't start.  It seems to mark the batch as posting in process and then waits forever. The application needs to be terminated with task manager because posting is in progress.   If GP is restarted after A/R batch transfer and prior to post everything works correctly and also small batches work correctly. I was able to make it work using the SA account if I only use GPConnection for the GP database access but this doesn't work for NON-SA accounts, I get a password mismatch.   Doing a database compare, there is no difference in the data after a GP restart versus no restart.  I have dexterity log data showing where we are in the posting process when it stalls.

 In the DEX log the unsuccessful post is showing the last entry being:

/*  Date: 10/01/2014  Time: 13:48:02


BEGIN DECLARE @num int EXEC DYNAMICS.dbo.zDP_SY00800SI 2, 'sa', 'Test Company', 'RM_Sales', 'DGPI_RBL15', 1, '', @num OUT SELECT @num END

The successful post shows more activity:

/*  Date: 10/01/2014  Time: 14:44:07


BEGIN DECLARE @num int EXEC DYNAMICS.dbo.zDP_SY00800SI 2, 'sa', 'Test Company', 'RM_Sales', 'DGPI_RBL15', 1, '', @num OUT SELECT @num END

 /*  Date: 10/01/2014  Time: 14:44:08


{CALL X3_56.dbo.zDP_RM40101F_1(NULL,NULL)}

I have spent a lot of time on this and it needs to be resolved.  Any help will be appreciated.

Randy Leidich

Calling UpdateSalesOrder removes ALL line feeds from the Note associated with the document no.  

My code does not change notes at all.  I tested just getting the order and updating without changing anything and the line feeds are still gone.

The notes for the batch and site ID are fine.

Hello, I am struggling to find the field mapping taSopLineIvcInsert type for "Fixed price" which show in "Sales Transaction entry--> Invoice pricing details" form, appreciate your help? currently I am using UNITPRCE to populate the price of item however any idea on Fixed would be great?

I am creating POPReceivingType transaction using econnect and sending lot information in taPopRcptLotInsert type to create the lot however when I go in GP and see lot Attribute Inquire. the following fields are not populating

1. PO Receipt

2. PO number

3 .Date Received


I am not sure why these values are not populating and I dont see these fields allocated to taPopRcptLotInsert. here is my sample xml that I m using to send the data Receipt.


<eConnect xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">



Hi Guys

I'm posting a PM batch to GP2010 via scribe insight. I create the PM distributions then AP then transaction header then batch header, In the step where I create the batch header, I set the posting date, but I never get that date in the purchasing batch. On a previous integration I used an SP to set the posting date, etc. (see end).

The problem with doing this is that I lose the transaction options to commit repeating rows together. No Problems, I thought, I'll just update the SY00500 table directly from Scribe, but when I try to add an update step, I get a message saying it's not updateable. Does anyone have any suggestions for how I can keep the repeating row transactions AND get the correct posting date?





ALTER PROCEDURE [dbo].[SetBatchPostingDate]
    @BatchNo AS VARCHAR(15)
   ,@Series AS TINYINT 
   ,@PostingDate AS DATE
    -- SET NOCOUNT ON added to prevent extra result sets from
    -- interfering with SELECT statements.
        DECLARE @CheckBookID AS VARCHAR(15)
        SET @CheckBookID = (
                                CASE WHEN LEFT([BSSI_Facility_ID],1) = 1 THEN 'BA REGULAR     '
                                     ELSE 'COLE TAYLOR OP '
                                RTRIM([BACHNUMB]) = @BatchNo
    -- Insert statements for procedure here
            [GLPOSTDT] = @PostingDate
           ,[CHEKBKID] = @CheckBookID
            RTRIM([BACHNUMB]) = @BatchNo
            AND [SERIES] = @Series
        IF @@ROWCOUNT = 0
            OR @@ERROR != 0
            RETURN 1
            RETURN 0


If I have a serialized item, and create an order and assign a serial number that is not the "default" next serial number from Sales Transaction Entry, then update the sales transaction* via web services (wsDynamicsGP.UpdateSalesOrder) the selected serial number is changed to the default next one.   

Any idea why its losing the selected serial number when I call UpdateSalesOrder?

*I modified PO number as a test, but probably don't have to modfiy anything



In order to do our Bank Rec, we upload the information with Integration manager from our University campus system but we can't find the reason why

some of the data is missing and  then we have to enter  JE  manually, in order to perform the Bank Rec.

Where I can look what is wrong.... 

I was checking around and I cant find anything about Frx, eventually we are going to move to GP 2013 but

now we have problems with Frx, with the year, we want to print BS for 2013 and the BS is 2013 but for any particular reason the YTD show 2010,

we were checking around but we can find anything.

I am developing a VST AddIn that voids a payment on the Void Historical Payables Transactions window.  The process works fine, and I'm able to get past a few modal dialogs on the window using BeforeModalDialog.

But after the payment is voided, several posting report dialogs are displayed that do not trigger the BeforeModalDialog event.

I can temporarily disable the two posting reports related to Purchasing - Void Historical Trx via SQL, but there is also the potential for the Apply To Posting Journal and General Posting Journal to print.  I'd rather not disable those via SQL, since those are not specific to the Void process.

Is there any way for VS Tools to detect the posting report dialogs and natively click the Cancel button?

If not VS Tools, how about Continuum?


I am receiving the following msg


The Storeprocedure glpBatchCleanup retuned DBMS 0, Microsoft Dynamics GP 20488    

CellValueChanged fires after the user LEAVES THE FIELD.

We don't used the 'sender' object, we get the values that we need through e.row and e.column

The ValueChanged event fires while the editor is still open, after every key stroke.

Normally we'd use CellValueChanged