0

我有一个数据集:

select * from table1 --approximately 100 fields
join table2
on...
join table3
on...

当我在 SSMS 中测试它时,该查询有效。

但是,当我尝试将此查询作为数据集运行报表时,我得到:

在此处输入图像描述

我认为也许我错误地捕获了字段的名称,所以select *我没有这样做,select field1, field2...field100 但仍然得到相同的结果。

我究竟做错了什么?

请注意,我确实通过在 excel 中执行唯一过滤器来确保所有字段名称都是唯一的。

4

1 回答 1

0

我遇到了同样的问题。这是我的解决方案。
1)首先测试您的报告边界,尝试确定您可以显示的最大字段数量。

2)把你的主报告做成一个子报告。

3)通过参数将剩余值作为连接字符串传递

4)使用您的新子报告来解析参数字符串。

这里有一些 VB 代码可以提供帮助。将此粘贴到您的报告属性代码部分。'****************************************************** ****************************************************** ************************

Public Function ListToString(myList As String, Delimiter As String, Optional index As Integer = 0) As String
    '-----------------------------------------------------------------------------------
    'Purpose:
    '----This function splits a list and allows one to access the split list like a programmable array
    'Description:
    '----Input: 
    '--------myList: String containing the list created in SSRS
    '--------Delimiter: what you used to seperate/ delimit each element
    '--------index: the index you want you access
    '----Output:
    '--------ReturnString: returns Name in the format of "FirstName LastName"
    'Version Control log: (Date - Name: Description)
    '----xx/xx/xxxx     Adrian Williams     Creation of function
    '-----------------------------------------------------------------------------------

    Dim returnString As String = ""
    Dim myArray As String()

    myArray = myList.split(delimiter)
    returnString = trim(myArray(index))


    Return returnString
End Function

'****************************************************** ****************************************************** ************************

于 2015-02-09T23:04:06.327 回答