2008-11-05 19 views
2

我正在嘗試使用傳遞給report.rdlc的業務對象。我的對象中的屬性不直接暴露。我需要的屬性嵌入頂層對象內的另一個對象中。由於這是一個WCF項目,我無法控制服務器端發生的事情。我只能夠請求這些對象或從數據庫中插入/更新/刪除他們的信息。這是因爲後端可以使用多種數據庫。嵌入另一個對象中的屬性

這裏是我可以加入我的業務對象爲DataSource後看到:

-BusinessObject 
-CustomerInfo 
    -ClientName 
    -ColumnName 
    -DisplayName 
    -FieldName 
    -IsNull 
    -KeyColumn 
    -SenondKeyColumn 
    -StringValue 
    -ClientID 
    -ColumnName 
    -DisplayName 
    -FieldName 
    -IntValue 
    -IsNull 
    -KeyColumn 
    -SenondKeyColumn 
    +ClientAddress 
    +Instrument 
    +Telephone 

等等等等

我需要能夠顯示,例如ClientName.StringValue場。 如果我拖我想要的字段拖到報告中,我得到:

=First(Fields!StringValue.Value) 

在運行報表時,不會顯示任何內容,我假設,因爲它不符合什麼StringValue它在談論,而且有可能很多。

如果我試圖拖動ClientName對象,我得到:

=First(Fields!ContactName.Value) 

但是這給:

#ERROR 

當運行報告。

我還以爲你可以使用:

=First(Fields!ClientName.StringValue.Value) 

但這甚至不會讓我建立。

回答

1

問題是信息不在根目錄。我盡力了。

=First(Fields!ClientName.Value.StringValue, "BusinessObject_CustomerInfo") 

我已經有了ReportViewer組件的相當好的控制,現在歡呼。

+0

有人請將此作爲答案。 – 2008-11-08 14:06:08

0

如果將數據源設置爲從服務返回的CustomerInfo實例(或列表),它應該可以工作。當您開始處理對象層次結構時,ReportViewer控件可能有點複雜,但是如果所有信息都在根級別,則不必做任何瘋狂或特殊的事情。

相關問題