SSRS 2008 R2 Sparkline基于CSV字符串值

时间:2013-02-09 17:03:18

标签: charts ssrs-2008-r2

我想知道是否可以基于逗号分隔的值列表创建图表/图表。只有1个系列,这将是一个迷你图,所以我真的不想看到任何一个轴...只是一条线向上或向下。

数据库表的示例输入:1,2,3,4,5 这个例子应该产生1行,它从左到右增加值。

如果需要,我愿意接受SSRS中的自定义代码来完成此任务。

谢谢!

1 个答案:

答案 0 :(得分:0)

在SSRS中,您只能将图表指向数据集。 我建议您将逗号分隔的数据转换为xml,然后将xml数据切碎为关联数据,如下所示:

WITH ChartData AS
(
    SELECT '1,3,5,4' AS YValues
),
ShrededChartData AS
(
    SELECT Y.value('.','int') AS YValues
    FROM 
    (
        SELECT CAST(N'<root><r>' + REPLACE(YValues,',','</r><r>') + '</r></root>' AS XML) XMLValues
        FROM ChartData 
    ) AS XMLChartData 
    CROSS APPLY XMLValues.nodes('//root/r') AS XmlTable(Y)
)
SELECT YValues
FROM ShrededChartData

然后根据此查询创建数据集,并将此数据集指向您的图表。