Anitha
04-07-2008, 08:08 AM
Hi all,
here iam using flex3.I want to populate the datagrid control with a webservice result.Here iam using automatic serialization concept for returning webservice results.But when i run the flex application it shows some error report.Here under i give my source.Anybody please direct me?
my webservice result:
<?xml version="1.0" encoding="utf-8" ?>
- <DataTable xmlns="http://tempuri.org/">
- <xs:schema id="NewDataSet" xmlns="" xmlns:xs="http://www.w3.org/2001/
XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
- <xs:element name="NewDataSet" msdata:IsDataSet="true"
msdata:MainDataTable="annualresult" msdata:UseCurrentLocale="true">
- <xs:complexType>
- <xs:choice minOccurs="0" maxOccurs="unbounded">
- <xs:element name="annualresult">
- <xs:complexType>
- <xs:sequence>
<xs:element name="year" type="xs:decimal" minOccurs="0" />
<xs:element name="projected" type="xs:decimal" minOccurs="0" />
<xs:element name="achieved" type="xs:decimal" minOccurs="0" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:choice>
</xs:complexType>
</xs:element>
</xs:schema>
- <diffgr:diffgram xmlns:msdata="urn:schemas-microsoft-com:xml-msdata"
xmlns:diffgr="urn:schemas-microsoft-com:xml-diffgram-v1">
- <DocumentElement xmlns="">
- <annualresult diffgr:id="annualresult1" msdata:rowOrder="0">
<year>2001</year>
<projected>50000</projected>
<achieved>30000</achieved>
</annualresult>
- <annualresult diffgr:id="annualresult2" msdata:rowOrder="1">
<year>2002</year>
<projected>60000</projected>
<achieved>80000</achieved>
</annualresult>
- <annualresult diffgr:id="annualresult3" msdata:rowOrder="2">
<year>2003</year>
<projected>50000</projected>
<achieved>40000</achieved>
</annualresult>
- </DocumentElement>
</diffgr:diffgram>
</DataTable>
//My script
[Bindable]
public var arrayData:Array;
private function remotingHandler(event:ResultEvent):void
{
// Convert result to array
var diffgr:Namespace = new
Namespace("urn:schemas-microsoft-com:xml-diffgram-v1");
arrayData =
event.result.diffgr::diffgram.DocumentElement.annu alresult;
}
///the flex data grid code
<mx:DataGrid id="dg" dataProvider="{arrayData}">
<mx:columns>
<mx:DataGridColumn dataField="year"/>
<mx:DataGridColumn dataField="projected"/>
<mx:DataGridColumn dataField="achieved"/>
</mx:columns>
</mx:DataGrid>
//My error report is:
Referrence error:Property urn:schemas-microsoft-com:xml-diffgram-v1.
diffgram not found on object and there is no defalt value.
Thannnnnnks in advance,
Anitha.
here iam using flex3.I want to populate the datagrid control with a webservice result.Here iam using automatic serialization concept for returning webservice results.But when i run the flex application it shows some error report.Here under i give my source.Anybody please direct me?
my webservice result:
<?xml version="1.0" encoding="utf-8" ?>
- <DataTable xmlns="http://tempuri.org/">
- <xs:schema id="NewDataSet" xmlns="" xmlns:xs="http://www.w3.org/2001/
XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
- <xs:element name="NewDataSet" msdata:IsDataSet="true"
msdata:MainDataTable="annualresult" msdata:UseCurrentLocale="true">
- <xs:complexType>
- <xs:choice minOccurs="0" maxOccurs="unbounded">
- <xs:element name="annualresult">
- <xs:complexType>
- <xs:sequence>
<xs:element name="year" type="xs:decimal" minOccurs="0" />
<xs:element name="projected" type="xs:decimal" minOccurs="0" />
<xs:element name="achieved" type="xs:decimal" minOccurs="0" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:choice>
</xs:complexType>
</xs:element>
</xs:schema>
- <diffgr:diffgram xmlns:msdata="urn:schemas-microsoft-com:xml-msdata"
xmlns:diffgr="urn:schemas-microsoft-com:xml-diffgram-v1">
- <DocumentElement xmlns="">
- <annualresult diffgr:id="annualresult1" msdata:rowOrder="0">
<year>2001</year>
<projected>50000</projected>
<achieved>30000</achieved>
</annualresult>
- <annualresult diffgr:id="annualresult2" msdata:rowOrder="1">
<year>2002</year>
<projected>60000</projected>
<achieved>80000</achieved>
</annualresult>
- <annualresult diffgr:id="annualresult3" msdata:rowOrder="2">
<year>2003</year>
<projected>50000</projected>
<achieved>40000</achieved>
</annualresult>
- </DocumentElement>
</diffgr:diffgram>
</DataTable>
//My script
[Bindable]
public var arrayData:Array;
private function remotingHandler(event:ResultEvent):void
{
// Convert result to array
var diffgr:Namespace = new
Namespace("urn:schemas-microsoft-com:xml-diffgram-v1");
arrayData =
event.result.diffgr::diffgram.DocumentElement.annu alresult;
}
///the flex data grid code
<mx:DataGrid id="dg" dataProvider="{arrayData}">
<mx:columns>
<mx:DataGridColumn dataField="year"/>
<mx:DataGridColumn dataField="projected"/>
<mx:DataGridColumn dataField="achieved"/>
</mx:columns>
</mx:DataGrid>
//My error report is:
Referrence error:Property urn:schemas-microsoft-com:xml-diffgram-v1.
diffgram not found on object and there is no defalt value.
Thannnnnnks in advance,
Anitha.