Epicor Service Connect 10.0.700 simple update

Hi Rob,

Thanks again for your previous help. Just wanted to say I got it working.

For reference for everyone, here is what I found to be the cause of my secondary issue:

It was deep-copying the wfl/usr node, and as such wasn't mapping the data from my schema to the wfl/usr nodes. When you map the user schema to the wfl/usr node, it creates a deep-copy (solid green line) node mapping. I removed this mapping, then dragged the user schema and dragged it over the wfl/usr, and by holding [CTRL] it mapped the fields without any issues. This then enabled that data to be used in the update request.

It's probably common knowledge for alot, but still good to have this info as a reference for people starting out (such as myself).

Kind regards,

Dave.

Hi everybody,


Just wondering if there was a chance someone could assist in getting a simple update working in ESC 10.0.700.


Here's a basic rundown of our system/integration into Epicor. We have a front-end ERP system that uses Epicor more as a back-end ERP system to handle the financial side of things as our company is very production-driven, and therefore required branching out to design packages such as SolidWorks, Altium, etc. Each job has a jobcode created in our front-end system, which in turn creates a project in Epicor.


This is done using the .dll's through visual studio. Now, we've made the decision to move over to using Epicor Service Connect to handle these project updates/creations. We create an XML into a folder that an input channel monitors, that is then converted to an XSD and a workflow is triggered from that point.


For this example, let's just assume we're updating an existing project. My workflow is as follows:


1. Start

2. GetProjectByOurJobcode (conversion)

3. ProjectImpl.GetByID (method)

4. CheckThatProjectExists (condition)

5. UpdateProject (conversion)

6. ProjectImpl.UpdateExt (method)

7. Finish


Please understand that I am aware that the UpdateExt is for multiple result updates, and the Update is for a single result. However, for reasons unknown even by support staff, it seems that only UpdateExt works in our case.


Now, this is where I'm unaware what I'm supposed to do. If I set a literal value in step 5 then I have no issues with it updating with said literal values. However, I need the data that's in the jobcode.XSD to be mapped to the update request xsd before the update. This is where I begin to trip up. Here is what I've tried:

  • Converting from our XSD to Update Request XSD using conversion in between steps 5 and 6.
  • Converting from our XSD to GetByID Response, then mapping the GetByID Response to Update Request XSD, after step 4 and in place of step 5.
These quite clearly result in errors because the fields that Epicor requires are blank in our XSD, however if we had received a project dataset back from Epicor, then it would have all it's fields mapped correctly. Here are the problems I presume exist with the examples:
  • Update Request hasn't had any fields mapped to it since service connect doesn't see it as a continuation of the chain but the start of a new one
  • GetByID response hasn't been pushed through as an input and therefore, as with the previous attempt, it is seen as a new chain.
Any assistance in this matter is greatly appreciated, I've google'd endlessly, and have read through the manual more times than I can count.

Kind regards,

Dave.
Are you defining an user schema as a container under the wfl/user node to hold your data for use between BO calls?

Rob Bucek
Production Control Manager
PH: (715) 284-5376 ext 311
Mobile: (715)896-3119
FAX: (715)284-4084
[cid:1.234354861@...]<http://www.dsmfg.com/>
(Click the logo to view our site)<http://www.dsmfg.com/>

From: vantage@yahoogroups.com [mailto:vantage@yahoogroups.com]
Sent: Sunday, March 15, 2015 8:08 PM
To: vantage@yahoogroups.com
Subject: [Vantage] Epicor Service Connect 10.0.700 simple update



Hi everybody,



Just wondering if there was a chance someone could assist in getting a simple update working in ESC 10.0.700.



Here's a basic rundown of our system/integration into Epicor. We have a front-end ERP system that uses Epicor more as a back-end ERP system to handle the financial side of things as our company is very production-driven, and therefore required branching out to design packages such as SolidWorks, Altium, etc. Each job has a jobcode created in our front-end system, which in turn creates a project in Epicor.



This is done using the .dll's through visual studio. Now, we've made the decision to move over to using Epicor Service Connect to handle these project updates/creations. We create an XML into a folder that an input channel monitors, that is then converted to an XSD and a workflow is triggered from that point.



For this example, let's just assume we're updating an existing project. My workflow is as follows:



1. Start

2. GetProjectByOurJobcode (conversion)

3. ProjectImpl.GetByID (method)

4. CheckThatProjectExists (condition)

5. UpdateProject (conversion)

6. ProjectImpl.UpdateExt (method)

7. Finish



Please understand that I am aware that the UpdateExt is for multiple result updates, and the Update is for a single result. However, for reasons unknown even by support staff, it seems that only UpdateExt works in our case.



Now, this is where I'm unaware what I'm supposed to do. If I set a literal value in step 5 then I have no issues with it updating with said literal values. However, I need the data that's in the jobcode.XSD to be mapped to the update request xsd before the update. This is where I begin to trip up. Here is what I've tried:

* Converting from our XSD to Update Request XSD using conversion in between steps 5 and 6.
* Converting from our XSD to GetByID Response, then mapping the GetByID Response to Update Request XSD, after step 4 and in place of step 5.
These quite clearly result in errors because the fields that Epicor requires are blank in our XSD, however if we had received a project dataset back from Epicor, then it would have all it's fields mapped correctly. Here are the problems I presume exist with the examples:

* Update Request hasn't had any fields mapped to it since service connect doesn't see it as a continuation of the chain but the start of a new one
* GetByID response hasn't been pushed through as an input and therefore, as with the previous attempt, it is seen as a new chain.
Any assistance in this matter is greatly appreciated, I've google'd endlessly, and have read through the manual more times than I can count.

Kind regards,

Dave.



[Non-text portions of this message have been removed]
Hi Rob,

Thank you for your reply.

After working around with the XSLT mapping, I realised that I wasn't using the wfl/usr node at all. I've now mapped my "jobcode" schema to the wfl/user node, and now the structure resembles as such - wfl/usr/Jobcode.

Now when I get to the mapping of the GetByID_Response to the UpdateExt_Request, I can map the wfl/usr/Jobcode/Comment field to the UpdateExtRequest/Project/Comment field.

However I've now encountered a new issue. Although it says that the workflow has completed successfully, the UpdateExt_Response data doesn't corroborate this, nor does the project in Epicor 10. Would you perhaps know what could be causing this false positive result?

Thank you very much again, I greatly appreciate your help.

Kind regards,

Dave.