【发布时间】:2019-04-12 07:26:55
【问题描述】:
所以,几天前我发布了一个问题here,其中我有一个@Sem_ID 参数,我必须传递多个用分隔符分隔的ID。我找到了解决方案,但它仅在我有一个数据集时才有效。现在的问题是我的报告有 3 个 tablix 和 3 个数据集,每个 tablix 一个数据集。
我尝试了什么:我创建了一个 tablix 并在行内插入了一个矩形元素。我在矩形内移动了一个网格,然后尝试运行报告,但在预览时收到 SSRS 错误:文本框“Textbox10”的值表达式引用字段“Kondition”。报表项表达式只能引用当前数据集范围内的字段,或者如果在聚合内,则只能引用指定的数据集范围。字段名称中的字母必须使用正确的大小写。
例如,这两个查询中的每一个都代表一个数据集,所以两个数据集:
SELECT Sem_ID, Sem_KW, Sem_Jahr, Sem_SemNrKata, Sem_von, Sem_bis, h.chr_name, h.chr_ort
FROM acc_seminar.t_Seminar
JOIN dbo.tbl_hotel h ON Sem_Ht_ID=h.pk_hotel
WHERE Sem_ID IN (SELECT value
FROM fn_Split(@Sem_ID, ';')
WHERE RTRIM(value) <> '') AND (Sem_SemTh_ID != 76 AND Sem_Sto = 0)
第二个数据集:
SELECT tu.TU_Name AS Name, tu.TU_Vorname AS Vorname, ParkgebuehrBrutto AS Preis
FROM acc_seminar.t_Teiluber_Ext tux
JOIN acc_seminar.t_Teiluber tu ON tux.TeiluberId = tu.TU_ID
JOIN acc_seminar.t_Seminar s ON tu.TU_Sem_ID = s.Sem_ID WHERE s.Sem_ID IN (SELECT value
FROM fn_Split(@Sem_ID, ';')
WHERE RTRIM(value) <> '') AND ParkgebuehrBrutto IS NOT NULL
因此,如果我通过 @Sem_Id = 123;456 ,那么如何为 Id=123 和 Id=456 显示两个网格?
【问题讨论】:
-
您收到的错误与您在此处显示的数据集无关。该错误与名为
Kondition的字段有关,该字段未在任一查询中显示。您在哪里有一个名为Kondition的字段?