2014-03-03 41 views
1

我在Active Reports(.rpx文件)中創建了一個包含chartcontrol'ChartControl1'的報表。 報告數據源是包含'ItemLabel'和'ItemValue'字段的列表 腳本文件包含以下代碼行。Active Reports圖表控件給出錯誤

public void ActiveReport_ReportStart() 
{ 
    this.ChartControl1.DataSource = rpt.DataSource; 
    this.ChartControl1.Series[0].ValueMemberX = "ItemLabel"; 
    this.ChartControl1.Series[0].ValueMembersY = "ItemValue"; 
} 

顯然,我得到它說

「不支持System.String類型的數據源。參數名: genericDataSource」 錯誤

和這條線是造成問題。

this.ChartControl1.Series[0].ValueMembersY = "ItemValue"; 

因爲如果我刪除這一行,沒有錯誤,但報告不會呈現。 我已經閱讀,由於不正確的綁定發生此錯誤,但它不是這種情況,因爲我已經doublechecked它。

可能是什麼問題?

回答

0

當字符串值被分配給圖表系列的ValueMemebersY屬性時,通常會出現此錯誤,其中字符串值不是綁定到圖表的表中的有效字段/列名稱,因爲它是數據源。

請參閱介紹如何在運行時創建與SectionReports(基於RPX以及代碼)未綁定的條形圖

你還可以指的是與沿ActiveReports中附帶的charting samplewalkthrough

您也可以參考下面的論壇上發帖,其中一個樣品已經附呈現出類似的實現: http://our.componentone.com/groups/topic/chart-control-throwing-a-binding-error/

問候, Mohita

+0

我有雙重檢查,以確認附加的字符串值是數據源中的有效字段。請問您可以在以下鏈接中查看lat帖子 [link] http://our.componentone.com/groups/topic/datasource-of-type-system-string-is-not-supported-on-bar-chart/ – NewtonCode

+0

DataTable table = new DataTable(); table.Columns.Add(「ItemLabel」,typeof(string)); table.Columns.Add(「ItemValue」,typeof(double)); table.Rows.Add(「Won」,5.0); table.Rows.Add(「Lost」,7.0); this.chartControl1.DataSource = table; this.chartControl1.Series [0] .ValueMemberX =「ItemLabel」; this.chartControl1.Series [0] .ValueMembersY = ItemValue「; 我已經添加了相同的代碼在rpx和基於代碼的報告中包含chart.but rpx每次拋出錯誤,而基於codeb的sample.why沒有問題嗎? – NewtonCode

0

NewtonCode

您使用的是什麼版本的產品?版本7或8?它是一個錯誤。我們將解決它。

+0

We正在使用版本7 – NewtonCode

+0

我們發現一個特定的節點被寫出是不正確的。您是如何生成rpx的? 此節點: 但是一般地,如果我們創建了一個圖表,該DataSourceDirect應寫成這樣, 即special-value =「null」屬性/值對缺失。有一些特殊的處理是基於該屬性的存在或不存在而完成的。 讓我知道。謝謝。 –

+0

我從visual studio生成rpx(addnew-> sectionreportxmlbased).i還沒有編輯rpx文件來刪除該屬性。需要調查屬性消失的條件。 我現在編輯了rpx以包含屬性'special-value = null'到DataSourceDirect節點(在我測試中,我上傳了),它仍然顯示相同的錯誤。 – NewtonCode