Service Connect Mapping issue

Very cool...definitely above my experience!



Rob Bucek

Manufacturing Engineer

PH: (715) 284-5376 ext 3111

FAX: (715)284-4084

<http://www.dsmfg.com/>

(Click the logo to view our site) <http://www.dsmfg.com/>





From: vantage@yahoogroups.com [mailto:vantage@yahoogroups.com] On Behalf
Of isaac_dah@...
Sent: Tuesday, March 30, 2010 10:52 AM
To: vantage@yahoogroups.com
Subject: [Vantage] Re: Service Connect Mapping issue





I just fixed this yesterday. I handled it by going into the XSLT and
adding a for-each for the OrderDtl node. This allowed for the order to
have one Order Header row and multiple detail lines.

Here's a snippet of what I did:

<xsl:element name="dta:SalesOrderData">
<xsl:element name="SalesOrderDataSet">
<xsl:for-each
select="msg:dta/ext_UserSchema:CustomSubmitNewOrderRequest/ext_UserSchem
\
a:OrderDtl">
<xsl:element name="OrderDtl">
<xsl:if test="ext_UserSchema:VoidLine">
<xsl:element name="VoidLine">
<xsl:value-of
select="ext_UserSchema:VoidLine"></xsl:value-of>
</xsl:element>
</xsl:if>
<xsl:if test="ext_UserSchema:OrderNum">
<xsl:element name="OrderNum">
<xsl:value-of
select="ext_UserSchema:OrderNum"></xsl:value-of>
</xsl:element>
</xsl:if>
...
</xsl:for-each>

The tricky part was getting the user schema portion correct. I had to
drag over the links for each line in the XML mapper view after adding
the for-each tags in the XSLT but everything works great now.

I think the issue I was having was somehow related to my custom schema.
I am using C# to fill a dataset and write to XML the orderHed and
OrderDtl tables which have all the same fields as the Epicor
SalesOrderDataSet. I will try and use the actual Epicor datasets in the
future since this issue went away when I used that as my basis for
capturing inbound data.

--- In vantage@yahoogroups.com <mailto:vantage%40yahoogroups.com> , "Rob
Bucek" <rbucek@...> wrote:
>
> If you are trying to create multiple order releases, I assume the
input
> file you are using has multiple lines as well. This needs to be
> processed through a sub workflow using cycling to process each line.
> Your linking is probably just fine.
>
>
>
> Rob Bucek
>
> Manufacturing Engineer
>
> PH: (715) 284-5376 ext 3111
>
> FAX: (715)284-4084
>
> <http://www.dsmfg.com/>
>
> (Click the logo to view our site) <http://www.dsmfg.com/>
>
>
>
>
>
> From: vantage@yahoogroups.com <mailto:vantage%40yahoogroups.com>
[mailto:vantage@yahoogroups.com <mailto:vantage%40yahoogroups.com> ] On
Behalf
> Of isaac_dah@...
> Sent: Friday, March 26, 2010 4:29 PM
> To: vantage@yahoogroups.com <mailto:vantage%40yahoogroups.com>
> Subject: [Vantage] Service Connect Mapping issue
>
>
>
>
>
> I am trying to create a new workflow to call SubmitNewOrder request I
> was able to get things working to a degree. I had set up direct links
to
> each field in the Order header and the Order dtl in the XMl
translation
> and orders went into Epicor great. The only problem was that orders
with
> more than one line item only took the first line.
>
> I changed the mapping linking the parent node for OrderDtl and
OrderHed
> then the workflow Manager throws an error:
>
> Client Proxy error occurred when calling
> SalesOrderServices.SubmitNewOrder Exception of type
> System.Web.Services.Protocols.SoapException: Invalid Sold To
>
> Also the OrderDtl instead of having 2 rows, it has one with both items
> crammed in with out an </orderdtl><orderdtl> tag in between.
>
> Then when I try mapping SalesOrderDataSet to SalesOrderDataSet,
> translated xml had both OrderDtl rows but the Manager throws an error:
> Client Proxy error occurred when calling
> SalesOrderServices.SubmitNewOrder Exception of type
> System.Web.Services.Protocols.SoapException: No order header info sent
>
> What am I doing wrong?
>
> [Non-text portions of this message have been removed]
>
>
>
>
>
> [Non-text portions of this message have been removed]
>





[Non-text portions of this message have been removed]
I am trying to create a new workflow to call SubmitNewOrder request I
was able to get things working to a degree. I had set up direct links to
each field in the Order header and the Order dtl in the XMl translation
and orders went into Epicor great. The only problem was that orders with
more than one line item only took the first line.

I changed the mapping linking the parent node for OrderDtl and OrderHed
then the workflow Manager throws an error:

Client Proxy error occurred when calling
SalesOrderServices.SubmitNewOrder Exception of type
System.Web.Services.Protocols.SoapException: Invalid Sold To

Also the OrderDtl instead of having 2 rows, it has one with both items
crammed in with out an </orderdtl><orderdtl> tag in between.

Then when I try mapping SalesOrderDataSet to SalesOrderDataSet,
translate dxml had both OrderDtl rows but the Manager throws an error:
Client Proxy error occurred when calling
SalesOrderServices.SubmitNewOrder Exception of type
System.Web.Services.Protocols.SoapException: No order header info sent


What am I doing wrong?



[Non-text portions of this message have been removed]
If you are trying to create multiple order releases, I assume the input
file you are using has multiple lines as well. This needs to be
processed through a sub workflow using cycling to process each line.
Your linking is probably just fine.



Rob Bucek

Manufacturing Engineer

PH: (715) 284-5376 ext 3111

FAX: (715)284-4084

<http://www.dsmfg.com/>

(Click the logo to view our site) <http://www.dsmfg.com/>





From: vantage@yahoogroups.com [mailto:vantage@yahoogroups.com] On Behalf
Of isaac_dah@...
Sent: Friday, March 26, 2010 4:29 PM
To: vantage@yahoogroups.com
Subject: [Vantage] Service Connect Mapping issue





I am trying to create a new workflow to call SubmitNewOrder request I
was able to get things working to a degree. I had set up direct links to
each field in the Order header and the Order dtl in the XMl translation
and orders went into Epicor great. The only problem was that orders with
more than one line item only took the first line.

I changed the mapping linking the parent node for OrderDtl and OrderHed
then the workflow Manager throws an error:

Client Proxy error occurred when calling
SalesOrderServices.SubmitNewOrder Exception of type
System.Web.Services.Protocols.SoapException: Invalid Sold To

Also the OrderDtl instead of having 2 rows, it has one with both items
crammed in with out an </orderdtl><orderdtl> tag in between.

Then when I try mapping SalesOrderDataSet to SalesOrderDataSet,
translate dxml had both OrderDtl rows but the Manager throws an error:
Client Proxy error occurred when calling
SalesOrderServices.SubmitNewOrder Exception of type
System.Web.Services.Protocols.SoapException: No order header info sent

What am I doing wrong?

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





[Non-text portions of this message have been removed]
I just fixed this yesterday. I handled it by going into the XSLT and
adding a for-each for the OrderDtl node. This allowed for the order to
have one Order Header row and multiple detail lines.

Here's a snippet of what I did:

<xsl:element name="dta:SalesOrderData">
<xsl:element name="SalesOrderDataSet">
<xsl:for-each
select="msg:dta/ext_UserSchema:CustomSubmitNewOrderRequest/ext_UserSchem\
a:OrderDtl">
<xsl:element name="OrderDtl">
<xsl:if test="ext_UserSchema:VoidLine">
<xsl:element name="VoidLine">
<xsl:value-of
select="ext_UserSchema:VoidLine"></xsl:value-of>
</xsl:element>
</xsl:if>
<xsl:if test="ext_UserSchema:OrderNum">
<xsl:element name="OrderNum">
<xsl:value-of
select="ext_UserSchema:OrderNum"></xsl:value-of>
</xsl:element>
</xsl:if>
...
</xsl:for-each>

The tricky part was getting the user schema portion correct. I had to
drag over the links for each line in the XML mapper view after adding
the for-each tags in the XSLT but everything works great now.

I think the issue I was having was somehow related to my custom schema.
I am using C# to fill a dataset and write to XML the orderHed and
OrderDtl tables which have all the same fields as the Epicor
SalesOrderDataSet. I will try and use the actual Epicor datasets in the
future since this issue went away when I used that as my basis for
capturing inbound data.

--- In vantage@yahoogroups.com, "Rob Bucek" <rbucek@...> wrote:
>
> If you are trying to create multiple order releases, I assume the
input
> file you are using has multiple lines as well. This needs to be
> processed through a sub workflow using cycling to process each line.
> Your linking is probably just fine.
>
>
>
> Rob Bucek
>
> Manufacturing Engineer
>
> PH: (715) 284-5376 ext 3111
>
> FAX: (715)284-4084
>
> <http://www.dsmfg.com/>
>
> (Click the logo to view our site) <http://www.dsmfg.com/>
>
>
>
>
>
> From: vantage@yahoogroups.com [mailto:vantage@yahoogroups.com] On
Behalf
> Of isaac_dah@...
> Sent: Friday, March 26, 2010 4:29 PM
> To: vantage@yahoogroups.com
> Subject: [Vantage] Service Connect Mapping issue
>
>
>
>
>
> I am trying to create a new workflow to call SubmitNewOrder request I
> was able to get things working to a degree. I had set up direct links
to
> each field in the Order header and the Order dtl in the XMl
translation
> and orders went into Epicor great. The only problem was that orders
with
> more than one line item only took the first line.
>
> I changed the mapping linking the parent node for OrderDtl and
OrderHed
> then the workflow Manager throws an error:
>
> Client Proxy error occurred when calling
> SalesOrderServices.SubmitNewOrder Exception of type
> System.Web.Services.Protocols.SoapException: Invalid Sold To
>
> Also the OrderDtl instead of having 2 rows, it has one with both items
> crammed in with out an </orderdtl><orderdtl> tag in between.
>
> Then when I try mapping SalesOrderDataSet to SalesOrderDataSet,
> translated xml had both OrderDtl rows but the Manager throws an error:
> Client Proxy error occurred when calling
> SalesOrderServices.SubmitNewOrder Exception of type
> System.Web.Services.Protocols.SoapException: No order header info sent
>
> What am I doing wrong?
>
> [Non-text portions of this message have been removed]
>
>
>
>
>
> [Non-text portions of this message have been removed]
>