I have created a web service that returns a dataset that I manually fill with data. When I start the service and get results this is the XML that I get returned.
<DataSet>
<xs:schema id="Results">
<xs:element name="Results" msdata:IsDataSet="true" msdata:UseCurrentLocale="true">
<xs:complexType>
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="BillInfo">
<xs:complexType>
<xs:sequence>
<xs:element name="AccountType" type="xs:string" minOccurs="0"/>
<xs:element name="AccountNumber" type="xs:string" minOccurs="0"/>
<xs:element name="AmountDue" type="xs:decimal" minOccurs="0"/>
<xs:element name="BillDescription" type="xs:string" minOccurs="0"/>
<xs:element name="DaysTilDue" type="xs:int" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:choice>
</xs:complexType>
</xs:element>
</xs:schema>
<diffgr:diffgram>
<Results>
<BillInfo diffgr:id="BillInfo1" msdata:rowOrder="0" diffgr:hasChanges="inserted">
<AccountType>PP</AccountType>
<AccountNumber>1</AccountNumber>
<AmountDue>307.6500</AmountDue>
<BillDescription>Bill Number 20121</BillDescription>
<DaysTilDue>-362</DaysTilDue>
</BillInfo>
<BillInfo diffgr:id="BillInfo2" msdata:rowOrder="1" diffgr:hasChanges="inserted">
<AccountType>PP</AccountType>
<AccountNumber>1</AccountNumber>
<AmountDue>307.6500</AmountDue>
<BillDescription>Bill Number 20121</BillDescription>
<DaysTilDue>-362</DaysTilDue>
</BillInfo>
</Results>
</diffgr:diffgram>
</DataSet>
If I set no element path and try to set my SSRS DataSet equal to the results I get the schema returned as the information. Anytime I try to enter an elementpath I get no results. I am not sure what I am doing wrong. Below I show the query I am using including the ElementPath to load my SSRS DataSet
<Query>
<SoapAction>http://tempuri.org/GetBillData</SoapAction>
<Method Namespace="http://tempuri.org/" Name="GetBillData" />
<Parameters>
<Parameter Name="PartyID">
<DefaultValue>0</DefaultValue>
</Parameter>
</Parameters>
<ElementPath IgnoreNamespaces="True"> DataSet {}/ diffgram {}/ Results {}/BillInfo</ElementPath>
</Query>
If anyone has any idea what I am doing wrong I would love to hear it.
Thanks
If I remember correctly, the “ElementPath” must start something like this:
GetBillDataResponse{}/GetBillDataResult{}/DataSet{}/diffgram{}…
Fiddler can help you find out about the datastructure.