web
You’re offline. This is a read only version of the page.
close
Skip to main content

Notifications

Announcements

No record found.

Community site session details

Community site session details

Session Id :
Microsoft Dynamics GP (Archived)

Appending data to a Transaction Requester document

(0) ShareShare
ReportReport
Posted on by 580

Hello,

I have setup the eConnect outgoing service to monitor table SOP30300 (Sales_History_Transaction/Invoices). This works great, any new invoices get picked up by eConnect and place in MSMQ for me to harvest. I am in the process of adding an extension table that will contain box/container information for each line item (ex. part 123 in box 4). The goal is to have this data appended to the eConnect invoice document that’s delivered to MSMQ currently… I've read the documentation and see how this is accomplished, but I’m still uncertain with my scenario. In the eConnect_Out_Setup I can see my entry to monitor that I initially setup via the eConnect Requester Utility. My problem is that I can’t see where I can enter this extension table I want to join too, the field JOINTABLE is already populated with SOP30200. I would have expected to see something like JOINTABLE1, JOINTABLE2, etc (which supposedly increments the column MAIN)… So the question is, how can I get this same invoice that I’m currently receiving to also have the required box/container information appended in it (anywhere!)? Am I asking the impossible? Do I take the simple route and just query that table manually once an invoice arrives in the MS queue (the relation between the SOP30300 and new box/container extension table will be the invoice/doc number)?  

Thanks

*This post is locked for comments

I have the same question (0)
  • Community Member Profile Picture
    on at
  • Suggested answer
    Donald Leary Profile Picture
    580 on at

    yes, i did read that. Thanks.

    I did a bunch more research on this after i posted this question, apparently there are a few ways to do this, all which are related to the eConnect SDK. I was originally confused with the "Creating a Transaction Requester Document Type" instructions in the eConnect SDK documentation... it is all making sense now an i'm attempting that route first. Thank you for your feedback, it's appreciated.

  • Community Member Profile Picture
    on at

    Donald

    Do post your finding - tip and tricks - attempting similar project - not solved it yet!,

    Cheers!

    Sanjay

  • Donald Leary Profile Picture
    580 on at

    sorry, after looking further into the first link you posted i realized that particular answer does not pertain to my question...

  • Donald Leary Profile Picture
    580 on at

    Sanjay,

    I have come to a conclusion that including a custom extension table in the eConnect outgoing setup table will not produce the desired results if this table is not part of any type of eConnect document class. I followed documentation and had everything setup in eConnect_Out_Setup. I was monitoring SOP30200 (DocType Sales_History_Transaction) with my Requester.OutputType set to 2 (grab the entire sales order transaction). I setup an extension table named "ShippingBoxes" and gave it a docType of  "Sales_History_Transaction" and joining on SOPNUMBR from my box table to SOP30200. After realizing no transactions were passing through to MSMQ i journeyed into event  viewer and noticed that eConnect was failing with an exception:

    ".Net SqlClient Data Provider

    Timeout expired.  The timeout period elapsed prior to completion of the operation or the server is not responding.

    System.Data.SqlClient.SqlException: Timeout expired.  The timeout period elapsed prior to completion of the operation or the server is not responding.

      at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection)

      at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj)

      at System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj)

      at System.Data.SqlClient.SqlDataReader.ConsumeMetaData()

      at System.Data.SqlClient.SqlDataReader.get_MetaData()

      at System.Data.SqlClient.SqlCommand.FinishExecuteReader(SqlDataReader ds, RunBehavior runBehavior, String resetOptionsString)

      at System.Data.SqlClient.SqlCommand.RunExecuteReaderTds(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, Boolean async)

      at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method, DbAsyncResult result)

      at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method)

      at System.Data.SqlClient.SqlCommand.ExecuteXmlReader()

      at Microsoft.Dynamics.GP.eConnect.Outgoing.ExecuteCompanyRequest.Execute_Request(String DocType, DateTime DATE1, String TABLENAME, Int32 DEX_ROW_ID, String INDEX1, String INDEX2, String INDEX3, String INDEX4, String INDEX5, String INDEX6, String INDEX7, String INDEX8, String INDEX9, String INDEX10, String INDEX11, String INDEX12, String INDEX13, String INDEX14, String INDEX15, Int32 Action)"

    I changed the DocType to a custom type of "Boxing" and restarted the service. The transaction was executed to MSMQ, but missing the added box nodes from my extension table.

    Unless there is a way to relate this custom table to a SOP transaction in the eConnect SDK i'm certain that this is not possible. My conclusion rendered that an eConnect to MSMQ transaction had to be a member of the same class (DocType) to be included in the eConnect MSMQ transaction. There is little to no documentation on this (that i could find) to point me in the right direction.

    Fortunately i was not limited to needing this entire transaction in 1 single xml. I had created a windows service that monitors these transactions, once an invoice is delivered i just fire a stored procedure (via my c# windows service) and pass my SOPNUMBR to get the related box information from GP... this will suffice for my task, but i'd like to here from a GP professional to validate my findings...

    Hope that helps  

Under review

Thank you for your reply! To ensure a great experience for everyone, your content is awaiting approval by our Community Managers. Please check back later.

Helpful resources

Quick Links

Responsible AI policies

As AI tools become more common, we’re introducing a Responsible AI Use…

Neeraj Kumar – Community Spotlight

We are honored to recognize Neeraj Kumar as our Community Spotlight honoree for…

Leaderboard > 🔒一 Microsoft Dynamics GP (Archived)

#1
mtabor Profile Picture

mtabor 1

Last 30 days Overall leaderboard

Featured topics

Product updates

Dynamics 365 release plans