UI(在报告显示之前)显示了一个查找(组合),它具有
- (ID = 0).所有组织单位
- (ID =4).HR
- (ID = 5).DEV
我需要:
- 如果选择 (0),则能够显示 (4) + (5) 的数据。
- 如果选择 HR 或 DEV,则只有 (4) 或 (5)。
查找组合代码(在以下查询中选择提供参数。)
Select 0 AS ID,'All Org' AS Name from DP_ORG_OrganizationUnit
where DP_ORG_OrganizationUnit.Code IN {AccessData}
Union
SELECT
DP_ORG_OrganizationUnit.ID,
DP_ORG_OrganizationUnit.Name
FROM DP_ORG_OrganizationUnit where DP_ORG_OrganizationUnit.Code IN ('HR','DEV')
报表数据行查询
SET CONCAT_NULL_YIELDS_NULL OFF
DECLARE @EmpID as int;
DECLARE @OrganizationUnit as int;
DECLARE @StartDate as datetime;
DECLARE @EndDate as datetime;
SET @EmpID = ?;
SET @StartDate = ?;
SET @EndDate = ?;
SET @OrganizationUnit = ?;
SELECT
Employee.Code,
Employee.Name1+' '+Employee.Name2+' '+Employee.Name3+' '+Employee.Name4+' '+Employee.Name5 AS FullName,
Employee.OrganizationUnit,
ContractType.Name,
EmployeeContract.StartDate,
EmployeeContract.EndDate
FROM Employee INNER JOIN (ContractType INNER JOIN EmployeeContract
ON ContractType.ID = EmployeeContract.ContractType)
ON Employee.ID = EmployeeContract.Employee
WHERE (Employee.ID = @EmpID OR @EmpID=0)
AND
(Employee.OrganizationUnit = @OrganizationUnit OR @OrganizationUnit=0)
AND NOT((EndDate < @StartDate or StartDate > @EndDate));
有什么办法可以从它的外观上实现它?0=0 也会显示其他部门的所有数据..
任何人:-o?