对来自 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 + '%'

或类似的东西...