对来自 Visual Studio 的数据集应用多个过滤器
Applying multiple filters to dataset from Visual Studio
我需要创建一个报告来查找员工。用户希望能够输入以下内容之一来查找记录:LastName OR FirstName OR Department OR EmplID。
我想使用一个已存在的存储过程,但它已被其他报表使用,因此无法修改。
我正在尝试将参数设置为数据集上的过滤器,并且它适用于一个过滤器。一旦我添加另一个,它就会停止工作。
有什么见解吗?
保留原始 SP 的最简单方法是将 SP 的结果转储到临时文件 table,然后根据您的参数过滤该临时文件 table。
假设您目前的 SP Returns
EmpID, DeptID, EmpFirstName, EmpLastName, EmpDeptID, EmpDept
那么你可以做这样的事情...
CREATE TABLE #t(EmpID int, DeptID int, EmpFirstName varchar(50), EmpLastName varchar(50), DeptName varchar(50))
INSERT INTO #t
EXEC myStoredProc
SELECT * FROM #t
WHERE EmpID LIKE '%' + @EmpID + '%'
OR DeptID LIKE '%' + @DeptID + '%'
OR EmpFirstName LIKE '%' + @FirstName + '%'
OR EmpLastName LIKE '%' + @LastName + '%'
或类似的东西...
我需要创建一个报告来查找员工。用户希望能够输入以下内容之一来查找记录:LastName OR FirstName OR Department OR EmplID。
我想使用一个已存在的存储过程,但它已被其他报表使用,因此无法修改。
我正在尝试将参数设置为数据集上的过滤器,并且它适用于一个过滤器。一旦我添加另一个,它就会停止工作。
有什么见解吗?
保留原始 SP 的最简单方法是将 SP 的结果转储到临时文件 table,然后根据您的参数过滤该临时文件 table。
假设您目前的 SP Returns
EmpID, DeptID, EmpFirstName, EmpLastName, EmpDeptID, EmpDept
那么你可以做这样的事情...
CREATE TABLE #t(EmpID int, DeptID int, EmpFirstName varchar(50), EmpLastName varchar(50), DeptName varchar(50))
INSERT INTO #t
EXEC myStoredProc
SELECT * FROM #t
WHERE EmpID LIKE '%' + @EmpID + '%'
OR DeptID LIKE '%' + @DeptID + '%'
OR EmpFirstName LIKE '%' + @FirstName + '%'
OR EmpLastName LIKE '%' + @LastName + '%'
或类似的东西...