根据 table 中的数据和每个标签的具体数量在 SSRS 2008 中打印标签页

Printing sheets of labels in SSRS 2008 based on data in a table and specific quantities per label

我需要在 SSRS 2008 中创建一个表单,该表单根据存储在 table 或 table 中的信息打印标签。到目前为止,我的在线搜索一直没有成功。我如何告诉 SSRS 我想要为每件商品打印 KitOrder.QuantityCommitted 数量的标签? (每件商品都有自己的数量)我可能会一次打印 20-30 件商品的标签。如果知道有帮助,每个 sheet.

有 18 个空白标签

已于 2015 年 10 月 1 日编辑 抱歉,我试过您提供的示例,但无法让我的报告发挥作用。我不是 SSRS 专家。 我有 2 个 table 用于获取标签所需的信息,此时只需要 table 名称下方列出的列。

KitOrder        INNER JOIN      Item
KitOrderNumber                ItemNumber
Quantity                      ItemDescription

我正在使用下拉框中的 KitOrderNumber - IN(@KitOrderNumber) - 作为我的参数。 ItemNumber 和 ItemDescription 打印在标签上。当 KitOrder.Quantity = 3 而不是只有 1 个标签时,我可以使用一些自定义代码 return 3 个标签吗?

编辑于 2015 年 10 月 5 日 - 我终于能够根据需要使用我的报告。非常感谢你的帮助。 sqlfiddle 对我很有帮助。

我讨厌人们在没有必要的情况下提出这个建议,但我认为这是您需要在报告之前 SQL 中处理数据的情况之一。

我想不出一种使用 SSRS 且不涉及大量代码的简单方法。

您使用可能的数量创建临时 table,然后交叉连接 table 以根据您的数量字段中的数字为每个产品创建单独的记录。

;WITH Quantities AS (
SELECT 1 AS Num
UNION ALL
SELECT 1 + Num
FROM Quantities
WHERE Num <=  30
)

Select * from Products 
CROSS JOIN Quantities 
WHERE Num <= Quantity

这假设您的数据位于名为 Products 的 table 中。

如果您有查询,您可以 SELECT 您的字段进入 #Temp table 并在 Select 语句中使用它。

对于报表,您可以将报表上的列属性设置为使用与标签 sheet 一样多的列。

这是我制作的一个 SQL小提琴,您可以用它来玩: http://www.sqlfiddle.com/#!3/bb413/2