BizTalk Server Orchestration - Return schema from webservice-references port

This is Interesting: Free IT Magazines  
Home > Archive > BizTalk Server Orchestration > December 2004 > Return schema from webservice-references port





You are viewing an archived Text-only version of the thread. To view this thread in it's original format and/or if you want to reply to this thread please [click here]

Author Return schema from webservice-references port
David

2004-12-09, 2:48 am

I call this webservice-references-port from Biztalk's Orchestration.
But I want return like "Master-Detail" schema, a [root] include many
[InvoiceDetail],
like this:
<root>
<InvoiceNumber>xxx</InvoiceNumber>
<ConfirmTime>xxx</ConfirmTime>
<InvoiceDetail>
<ConfirmQty>xx</ConfirmQty>
<ConfirmMessage>xx</ConfirmMessage>
</InvoiceDetail>
<InvoiceDetail>
<ConfirmQty>xx</ConfirmQty>
<ConfirmMessage>xx</ConfirmMessage>
</InvoiceDetail>
<InvoiceDetail>
<ConfirmQty>xx</ConfirmQty>
<ConfirmMessage>xx</ConfirmMessage>
</InvoiceDetail>
<root>

This is my asmx.cs:

// Inbound Schema
[System.Xml.Serialization.XmlTypeAttribute(Namespace="http://callws.InboundPO")]
[System.Xml.Serialization.XmlRootAttribute(Namespace="http://callws.InboundPO",
IsNullable=false)]
public class InboundPO
{
[System.Xml.Serialization.XmlElementAttribute(Form=System.Xml.Schema.XmlSchemaForm.Unqualified)]
public string po_date;

[System.Xml.Serialization.XmlElementAttribute("PO",
Form=System.Xml.Schema.XmlSchemaForm.Unqualified)]
public PODetail[] PO;
}

[System.Xml.Serialization.XmlTypeAttribute(Namespace="http://callws.InboundPO")]
public class PODetail
{
[System.Xml.Serialization.XmlElementAttribute(Form=System.Xml.Schema.XmlSchemaForm.Unqualified)]
public string pno;

[System.Xml.Serialization.XmlElementAttribute(Form=System.Xml.Schema.XmlSchemaForm.Unqualified)]
public string pname;

[System.Xml.Serialization.XmlElementAttribute(Form=System.Xml.Schema.XmlSchemaForm.Unqualified)]
public int pqty;

[System.Xml.Serialization.XmlElementAttribute(Form=System.Xml.Schema.XmlSchemaForm.Unqualified)]
public int pprice;
}

// Outbound Schema
[System.Xml.Serialization.XmlTypeAttribute(Namespace="http://callws.InboundPO")]
[System.Xml.Serialization.XmlRootAttribute(Namespace="http://callws.InboundPO",
IsNullable=false)]
public class ReturnInvoiceRoot
{
[System.Xml.Serialization.XmlElementAttribute()]
public string InvoiceNumber;

[System.Xml.Serialization.XmlElementAttribute()]
public string ConfirmTime;

[System.Xml.Serialization.XmlElementAttribute("InvoiceDetail",
Form=System.Xml.Schema.XmlSchemaForm.Unqualified)]
public InvoiceDetailItem[] InvoiceDetail;
}

[System.Xml.Serialization.XmlTypeAttribute(Namespace="http://callws.InboundPO")]
public class InvoiceDetailItem
{

[System.Xml.Serialization.XmlElementAttribute()]
public int ConfirmQty;

[System.Xml.Serialization.XmlElementAttribute()]
public string ConfirmMessage;

}

[WebMethod]
public ReturnInvoiceRoot submitPO (InboundPO PODocument)
{

ReturnInvoiceRoot inDM = new ReturnInvoiceRoot();
inDM.InvoiceNumber = PODocument.po_date.ToString();
string tt = DateTime.Now.ToString();
inDM.ConfirmTime = tt;

inDM.InvoiceDetail[0].ConfirmQty = PODocument.PO[0].pqty;
inDM.InvoiceDetail[0].ConfirmMessage =
PODocument.PO[0].pname.ToString();

return inDM;

}

But I get error message in HAT:
ServiceInstance/ErrorInfo
How can I get the outbound-Schema data from Inbound-Schema data?
Thank you for your Advance!!

David

David

2004-12-10, 2:46 am

It worked after I add this line // :

// inDM.InvoiceDetail[0].ConfirmQty = PODocument.PO[0].pqty;
//
inDM.InvoiceDetail[0].ConfirmMessage=PODocument.PO[0].pname.ToString();

I guess something wrong in:
inDM.InvoiceDetail[0].ConfirmQty

But I do not know how to correct it...
how can I insert data into sub-class?

><


David

David

2004-12-10, 2:46 am

It worked after I add this line // :

//inDM.InvoiceDetail[0].ConfirmQty = PODocument.PO[0].pqty;
//inDM.InvoiceDetail[0].ConfirmMessage=PODocument.PO[0].pname.ToString();

I guess something wrong in:
inDM.InvoiceDetail[0].ConfirmQty

But I do not know how to correct it...
how can I insert data into sub-class?

><



David

David

2004-12-10, 7:47 am

It worked after I add this line // :

//inDM.InvoiceDetail[0].ConfirmQty = PODocument.PO[0].pqty;
//inDM.InvoiceDetail[0].ConfirmMessage=PODocument.PO[0].pname.ToString();

I guess something wrong in:
inDM.InvoiceDetail[0].ConfirmQty

But I do not know how to correct it...
how can I insert data into sub-class?

><



David

Sponsored Links






Free braindumps | Software forum | Database administration forum

Copyright 2003 - 2008 webservertalk.com