Visual studio 2008 报表中心BIDS报表参数
我正在处理一组设计并转换为VisualStudio2008的报告 我有一个报告执行以下操作,它在SQL代码中没有使用@DistID参数。我有一个DistID参数设置 查看报告时,报告将正常加载,当用户在DistID参数框中输入一个数字时,它将仅使用该DistID重新加载报告Visual studio 2008 报表中心BIDS报表参数,visual-studio-2008,reporting-services,bids,Visual Studio 2008,Reporting Services,Bids,我正在处理一组设计并转换为VisualStudio2008的报告 我有一个报告执行以下操作,它在SQL代码中没有使用@DistID参数。我有一个DistID参数设置 查看报告时,报告将正常加载,当用户在DistID参数框中输入一个数字时,它将仅使用该DistID重新加载报告 SELECT o.Orderid, o.Distid, it.invoicetypedesc, SUM(ol.Volume * ol.Quantity) AS Volu
SELECT o.Orderid,
o.Distid,
it.invoicetypedesc,
SUM(ol.Volume * ol.Quantity) AS Volume,
SUM(ol.Amount) AS Amount,
SUM(retailPrice * quantity) AS Retail,
o.TaxAmt,
o.ShipAmt,
o.PostAmount,
o.Status,
w.WarehouseDesc
FROM Orders o
inner join Orderlines ol on o.orderid = ol.orderid
Inner Join Warehouse w on o.warehouseid = w.warehouseid
inner join invoicetype it on o.invoicetype = it.invoicetype
WHERE o.OrderDate between @fromdate and
@todate + ' 11:59:59 PM' and
o.EnteredBy in (@EnteredBy) AND
o.InvoiceType IN (@InvoiceType)
Group by o.OrderID,
o.DistID,
it.InvoiceTypedesc,
o.taxamt,
o.shipamt,
o.postamount,
o.status,
w.WarehouseDesc
还有其他参数setup@fromDate@toDate等也可以正常工作
我有另一个报告,其中我需要相同的功能,除了DistID我需要ItemId。我已经设置了一个参数,希望它也能正常工作,但报告将始终加载所有项目,即使我在ItemID文本框中输入了项目编号
select ol.itemid,
i.description,
it.invoicetypedesc,
sum(ol.quantity) as quantity,
sum(ol.amount) as amount,
ol.volume,
sum(ol.volume * ol.quantity) as totvolume,
o.warehouseid,
w.warehousedesc,
o.invoicetype,
ol.retailprice,
ol.wholesaleprice,
inv.sku
from orders o
inner join orderlines ol on o.orderid = ol.orderid
left join items i on ol.itemid = i.inventoryid
left join inventory inv on ol.itemid = inv.inventoryID
inner join invoicetype it on o.invoicetype = it.invoicetype
inner join warehouse w on o.warehouseid = w.warehouseid
where o.orderdate between @fromdate and @todate + ' 11:59:59 PM' and
ol.quantity > 0 and
o.EnteredBy in (@EnteredBy)
group by ol.itemid,
i.description,
it.invoicetypedesc,
ol.volume,
o.warehouseid,
w.warehousedesc,
o.invoicetype,
ol.retailprice,
ol.wholesaleprice,
inv.sku
这两份报告都是很久以前写的。我正在修改item报告,使其具有与另一个报告中的distID相同的功能,但我似乎无法使其正常工作
我已经在两份报告中搜索了我遗漏的任何差异,但我找不到任何差异。另一个奇怪之处是,我在DistID报告中添加了另一个参数,以按orderID对其进行进一步细分,这同样不起作用
我在报告的过滤器、变量或代码部分没有找到任何内容。我不确定我在这里遗漏了什么。这里似乎有不止一个问题。我将集中讨论(隐含的)第一个问题:为什么第二个报告选择单个ItemID的方式与第一个报告选择单个DistID的方式不同 我认为根本原因是,第一个报告中发生的事情比之前所述的要多——鉴于到目前为止的描述,当用户在DistID参数框中输入一个数字时,报告不应仅用该DistID重新加载。因此,听起来好像在用于显示输出的table/tablix报表对象上有一个附加的过滤器,或者细节行的可见性可能是以参数值为条件的
如果是这种情况,您可以通过复制第一个报告用于显示单个ID的任何方法,在第二个报告中复制第一个报告的功能。但是,鉴于此方法产生的维护困难(即此问题)我强烈建议您将其添加到查询选择条件中。请您在此处澄清您想问什么问题?对不起,我忘记了这个问题:就是这样。我已经检查了第一份报告中我能想到的每个地方。我找不到DistID正在过滤的任何地方。我试图将DistID的工作方式从第一个报表复制到ItemID,再复制到第二个报表。在第一份报告的报告中,是否有一些地方我没有看到,以了解为什么DistID会以这种方式运行?当您提到Tablix Properties时,它给了我另一个需要检查的区域,我已经看得太多了。我可以在Tablix属性过滤器部分找到这个<代码>=iif(isnumeric(参数!DistID.Value)、cstr(参数!DistID.Value)、cstr(字段!DistID.Value))