当我在商业智能测试我的SSRS报告(33000条记录)时,我没有任何问题,参数过滤器也运行良好。 根据日期范围,它会自动过滤Itemgroup,Itemcode,TestType,Batch.And根据Itemgroup值,它是过滤Itemcode,Testtype和Batch等等...... 但是,在部署之后,一旦我选择了所有'值,在我单击查看报告,即使没有加载时,Internet Explorer中没有显示任何记录。但如果我在多值选择中选择有限数量(少于5个值)的项目组值,它工作正常。但如果我当我点击查看报告时,在多值选择中选择多于5个值没有响应(参见图2)。 1.为什么没有加载并且没有显示任何选择所有值的结果? 2.当我更改项目组值时,为什么没有为Itemcode,Test Type,BatchNo默认选择所有值? (在参数中,我修复了可用值的数据集值,已经为itemcode,itemgrup,testtype,batchNo的默认值)。 (注意:我的上一个参数(batchNumber)有10000个不同的值)。
My_Stored Procedure
-------------------
ALTER PROCEDURE [dbo].[SIVA_ControlLimitGenerator]
@frmdat as date,
@todat as date
AS
drop table SIVA_ControlLimit
if (@frmdat is not null or @frmdat<>'') and (@todat is not null or @todat<>'')
begin
select * into SIVA_ControlLimit from (SELECT
[dbo].[INVENTQUALITYORDERTABLE].[QUALITYORDERID] AS 'QC_NO',
[dbo].[INVENTQUALITYORDERTABLE].[ITEMID] AS 'ITEM_FULLID',
[dbo].[INVENTQUALITYORDERTABLE].[TESTGROUPID] AS 'ITEM_CODE',
[dbo].[INVENTQUALITYORDERTABLE].[QTY],
[dbo].[INVENTQUALITYORDERTABLE].[INVENTDIMID],
[dbo].[INVENTQUALITYORDERTABLE].[VALIDATEDDATETIME] AS 'VALIDATE_DATE',
[dbo].[INVENTQUALITYORDERLINE].[TESTID] AS 'TEST_TYPE',
[dbo].[INVENTQUALITYORDERLINE].[STANDARDVALUE],
[dbo].[INVENTQUALITYORDERLINE].[LOWERLIMIT] AS 'MIN',
[dbo].[INVENTQUALITYORDERLINE].[UPPERLIMIT] AS 'MAX',
[dbo].[INVENTQUALITYORDERLINE].[TESTUNITID] AS 'TEST_UNIT',
[dbo].[INVENTQUALITYORDERLINE].[PM_ORDERRESULT] AS 'ORDER_RESULT',
[dbo].[INVENTQUALITYORDERLINE].[PM_ORDERSTATUS]AS 'ORDER_STATUS',
[dbo].[INVENTDIM].[INVENTBATCHID] AS 'BATCH_NO',
[dbo].[INVENTTABLE].[ITEMGROUPID] AS 'ITEM_GROUP'
FROM [dbo].[INVENTQUALITYORDERTABLE]
INNER JOIN [dbo].[INVENTQUALITYORDERLINE] ON [dbo].[INVENTQUALITYORDERTABLE].[QUALITYORDERID]=[dbo].[INVENTQUALITYORDERLINE].[QUALITYORDERID]
LEFT OUTER JOIN [dbo].[INVENTDIM] ON [dbo].[INVENTQUALITYORDERTABLE].[INVENTDIMID] =[dbo].[INVENTDIM].[INVENTDIMID]
LEFT OUTER JOIN [dbo].[INVENTTABLE] ON [dbo].[INVENTQUALITYORDERTABLE].[ITEMID]=[dbo].[INVENTTABLE].[ITEMID]
WHERE [dbo].[INVENTQUALITYORDERTABLE].[DATAAREAID] = N'adk'
AND YEAR([dbo].[INVENTQUALITYORDERTABLE].[VALIDATEDDATETIME])>=2014 and YEAR([dbo].[INVENTQUALITYORDERTABLE].[VALIDATEDDATETIME])<=YEAR(GETDATE())
and [dbo].[INVENTTABLE].[DATAAREAID] =N'adk' and [dbo].[INVENTQUALITYORDERTABLE].[VALIDATEDDATETIME]>=@frmdat and [dbo].[INVENTQUALITYORDERTABLE].[VALIDATEDDATETIME]<=@todat)n
end
else
begin
select * into SIVA_ControlLimit from (SELECT
[dbo].[INVENTQUALITYORDERTABLE].[QUALITYORDERID] AS 'QC_NO',
[dbo].[INVENTQUALITYORDERTABLE].[ITEMID] AS 'ITEM_FULLID',
[dbo].[INVENTQUALITYORDERTABLE].[TESTGROUPID] AS 'ITEM_CODE',
[dbo].[INVENTQUALITYORDERTABLE].[QTY],
[dbo].[INVENTQUALITYORDERTABLE].[INVENTDIMID],
[dbo].[INVENTQUALITYORDERTABLE].[VALIDATEDDATETIME] AS 'VALIDATE_DATE',
[dbo].[INVENTQUALITYORDERLINE].[TESTID] AS 'TEST_TYPE',
[dbo].[INVENTQUALITYORDERLINE].[STANDARDVALUE],
[dbo].[INVENTQUALITYORDERLINE].[LOWERLIMIT] AS 'MIN',
[dbo].[INVENTQUALITYORDERLINE].[UPPERLIMIT] AS 'MAX',
[dbo].[INVENTQUALITYORDERLINE].[TESTUNITID] AS 'TEST_UNIT',
[dbo].[INVENTQUALITYORDERLINE].[PM_ORDERRESULT] AS 'ORDER_RESULT',
[dbo].[INVENTQUALITYORDERLINE].[PM_ORDERSTATUS]AS 'ORDER_STATUS',
[dbo].[INVENTDIM].[INVENTBATCHID] AS 'BATCH_NO',
[dbo].[INVENTTABLE].[ITEMGROUPID] AS 'ITEM_GROUP'
FROM [dbo].[INVENTQUALITYORDERTABLE]
INNER JOIN [dbo].[INVENTQUALITYORDERLINE] ON [dbo].[INVENTQUALITYORDERTABLE].[QUALITYORDERID]=[dbo].[INVENTQUALITYORDERLINE].[QUALITYORDERID]
LEFT OUTER JOIN [dbo].[INVENTDIM] ON [dbo].[INVENTQUALITYORDERTABLE].[INVENTDIMID] =[dbo].[INVENTDIM].[INVENTDIMID]
LEFT OUTER JOIN [dbo].[INVENTTABLE] ON [dbo].[INVENTQUALITYORDERTABLE].[ITEMID]=[dbo].[INVENTTABLE].[ITEMID]
WHERE [dbo].[INVENTQUALITYORDERTABLE].[DATAAREAID] = N'adk'
AND YEAR([dbo].[INVENTQUALITYORDERTABLE].[VALIDATEDDATETIME])>=2014 and YEAR([dbo].[INVENTQUALITYORDERTABLE].[VALIDATEDDATETIME])<=YEAR(GETDATE()))n
end
*Dataset*
------------
Execute SIVA_ControlLimitGenerator @FromDate,@ToDate
select * from SIVA_ControlLimit where
((VALIDATE_DATE>=@FromDate and VALIDATE_DATE<=@ToDate) or (@FromDate is null and @ToDate is null))
and ITEM_CODE in (@ITEM_CODE) and TEST_TYPE in (@TEST_TYPE) and ITEM_GROUP in (@ITEM_GROUP) and BATCH_NO in (@BATCH_NO) order by BATCH_NO
Filter DataSet(Parameters)
---------------------------
*1.Item group*
--------------
SELECT distinct ITEM_GROUP from SIVA_ControlLimit
WHERE ((VALIDATE_DATE>=@FromDate and VALIDATE_DATE<=@ToDate) or (@FromDate is null and @ToDate is null)) order by ITEM_GROUP
*2.Item code*
-------------
SELECT distinct ITEM_CODE from SIVA_ControlLimit
WHERE
((VALIDATE_DATE>=@FromDate and VALIDATE_DATE<=@ToDate) or (@FromDate is null and @ToDate is null)) and ITEM_GROUP in (@ITEM_GROUP) order by ITEM_CODE
*3.Test Type*
-------------
SELECT distinct TEST_TYPE from SIVA_ControlLimit
WHERE ((VALIDATE_DATE>=@FromDate and VALIDATE_DATE<=@ToDate) or (@FromDate is null and @ToDate is null)) and ITEM_CODE in (@ITEM_CODE) and ITEM_GROUP in (@ITEM_GROUP) order by TEST_TYPE
*4.Batch*
--------
SELECT distinct BATCH_NO from SIVA_ControlLimit
WHERE ((VALIDATE_DATE>=@FromDate and VALIDATE_DATE<=@ToDate) or (@FromDate is null and @ToDate is null)) and ITEM_CODE in (@ITEM_CODE) and TEST_TYPE in (@TEST_TYPE) and ITEM_GROUP in (@ITEM_GROUP)
order by BATCH_NO
任何人都可以建议我一个好的解决方案吗?...
感谢......