请上传宽度大于 1200px,高度大于 164px 的封面图片
    调整图片尺寸与位置
    滚轮可以放大缩小图片尺寸,按住图片拖动可调整位置,多余的会自动被裁剪掉
取消
帆软用户PoN24uZLlw(uid:3319442)
职业资格认证:尚未取得认证
  • finereport如何实现异步加载或者其他可以加快查询速度的办法,随着时间的推移数据量增大查询速度变得越来越慢。。。。
  • 以下是我数据集的代码: WITH 部门信息 AS (    SELECT a.职工编号, b.部门名称    FROM dbo. a    LEFT JOIN dbo. b ON a.部门编号 = b.部门编号    WHERE a.离厂日期 IS NULL),a AS (    SELECT         Number_Employee AS 职工编号,         职工姓名,         SUM(CASE             WHEN Payment_General IS NULL THEN 0            WHEN ISNUMERIC(Payment_General) = 1 AND Payment_General NOT LIKE '%%'                 THEN CAST(Payment_General AS DECIMAL(10,2))            ELSE 0         END) AS 合计金额,         CONVERT(varchar(100), Date, 23) AS 日期,        Number_Order AS 订单编号,        SUM(Amount) AS 数量    FROM dbo. a    WHERE CONVERT(varchar(100), Date, 23) = '${finddate}'     GROUP BY Number_Employee, 职工姓名, CONVERT(varchar(100), Date, 23), Number_Order     UNION ALL     SELECT         职工编号,         职工姓名,         SUM(CASE             WHEN 合计金额 IS NULL THEN 0            WHEN ISNUMERIC(合计金额) = 1 AND 合计金额 NOT LIKE '%%'                 THEN CAST(合计金额 AS DECIMAL(10,2))            ELSE 0         END) AS 合计金额,        CONVERT(varchar(100), 日期, 23) AS 日期,        订单编号 AS 订单编号,        SUM(计件数量) AS 数量    FROM dbo. a    WHERE CONVERT(varchar(100), 日期, 23) = '${finddate}'     GROUP BY 职工编号, 职工姓名, CONVERT(varchar(100), 日期, 23), 订单编号     UNION ALL     SELECT         Number_Employee AS 职工编号,         职工姓名,         SUM(CASE             WHEN Payment_Total IS NULL AND Payment_General IS NULL THEN 0            WHEN ISNUMERIC(Payment_Total) = 1 AND Payment_Total NOT LIKE '%%'                 THEN CAST(Payment_Total AS DECIMAL(10,2))            WHEN ISNUMERIC(Payment_General) = 1 AND Payment_General NOT LIKE '%%'                 THEN CAST(Payment_General AS DECIMAL(10,2))            ELSE 0         END) AS 合计金额,        CONVERT(varchar(100), Date, 23) AS 日期,        Number_Order AS 订单编号,        SUM(Amount_Fitting) AS 数量    FROM dbo. a    WHERE CONVERT(varchar(100), Date, 23) = '${finddate}'     GROUP BY Number_Employee, 职工姓名, CONVERT(varchar(100), Date, 23), Number_Order        UNION ALL     SELECT         Number_Employee AS 职工编号,         职工姓名,         SUM(CASE             WHEN Payment_Total IS NULL AND Payment_General IS NULL THEN 0            WHEN ISNUMERIC(Payment_Total) = 1 AND Payment_Total NOT LIKE '%%'                 THEN CAST(Payment_Total AS DECIMAL(10,2))            WHEN ISNUMERIC(Payment_General) = 1 AND Payment_General NOT LIKE '%%'                 THEN CAST(Payment_General AS DECIMAL(10,2))            ELSE 0         END) AS 合计金额,        CONVERT(varchar(100), Date, 23) AS 日期,        Number_Order AS 订单编号,        SUM(Amount_Fitting) AS 数量    FROM dbo. a    WHERE CONVERT(varchar(100), Date, 23) = '${finddate}'     GROUP BY Number_Employee, 职工姓名, CONVERT(varchar(100), Date, 23), Number_Order     UNION ALL     SELECT         职工编号,         职工姓名,         SUM(CASE             WHEN 金额 IS NULL THEN 0            WHEN ISNUMERIC(金额) = 1 AND 金额 NOT LIKE '%%'                 THEN CAST(金额 AS DECIMAL(10,2))            ELSE 0         END) AS 合计金额,        CONVERT(varchar(100), 日期, 23) AS 日期,        订单编号 AS 订单编号,        SUM(数量) AS 数量    FROM dbo. a    WHERE CONVERT(varchar(100), 日期, 23) = '${finddate}'     GROUP BY 职工编号, 职工姓名, CONVERT(varchar(100), 日期, 23), 订单编号     UNION ALL     SELECT         Number_Employee AS 职工编号,         Name_Employee AS 职工姓名,         CONVERT(varchar(100), Date, 23) AS 日期,        Number_Order AS 订单编号,        SUM(Amount) AS 数量,         SUM(CASE             WHEN Wage IS NULL THEN 0            WHEN ISNUMERIC(Wage) = 1 AND Wage NOT LIKE '%%'                 THEN CAST(Wage AS DECIMAL(10,2))            ELSE 0         END) AS 合计金额    FROM dbo. a    WHERE CONVERT(varchar(100), Date, 23) = '${finddate}'     GROUP BY Number_Employee, Name_Employee, CONVERT(varchar(100), Date, 23), Number_Order     UNION ALL     SELECT         EmployeeNumber AS 职工编号,         职工姓名,         SUM(CASE             WHEN Wage IS NULL THEN 0            WHEN ISNUMERIC(Wage) = 1 AND Wage NOT LIKE '%%'                 THEN CAST(Wage AS DECIMAL(10,2))            ELSE 0         END) AS 合计金额,        CONVERT(varchar(100), Date, 23) AS 日期,        OrderNumber AS 订单编号,        SUM(Quantity) AS 数量    FROM dbo. a    WHERE CONVERT(varchar(100), Date, 23) = '${finddate}'     GROUP BY EmployeeNumber, 职工姓名, CONVERT(varchar(100), Date, 23), OrderNumber     UNION ALL     SELECT         Number_Employee AS 职工编号,         Name_Employee AS 职工姓名,         SUM(CASE             WHEN Wage1 IS NULL THEN 0            WHEN ISNUMERIC(Wage1) = 1 AND Wage1 NOT LIKE '%%'                 THEN CAST(Wage1 AS DECIMAL(10,2))            ELSE 0         END) AS 合计金额,        CONVERT(varchar(100), Date, 23) AS 日期,        Number_Order AS 订单编号,        SUM(Amount1) AS 数量    FROM dbo. a    WHERE CONVERT(varchar(100), Date, 23) = '${finddate}'     GROUP BY Number_Employee, Name_Employee, CONVERT(varchar(100), Date, 23), Number_Order     UNION ALL     SELECT         职工编号,         职工姓名,         SUM(CASE             WHEN 合计金额 IS NULL THEN 0            WHEN ISNUMERIC(合计金额) = 1 AND 合计金额 NOT LIKE '%%'                 THEN CAST(合计金额 AS DECIMAL(10,2))            ELSE 0         END) AS 合计金额,        CONVERT(varchar(100), 日期, 23) AS 日期,        a.订单编号 AS 订单编号,        SUM(计件数量) AS 数量    FROM dbo. a    WHERE CONVERT(varchar(100), 日期, 23) = '${finddate}'     GROUP BY 职工编号, 职工姓名, CONVERT(varchar(100), 日期, 23), a.订单编号)SELECT a.*, d.部门名称FROM aLEFT JOIN 部门信息 d ON a.职工编号 = d.职工编号WHERE     ${if(len(department) == 0, '1=1', "d.部门名称 IN ('" + replace(department, ",", "','") + "')")}
  • 是我自己写的数据集查询代码有问题吗?应该当天考勤和工资都是一人对应一个,为什么会一人会对应多个?
  • 通过选择不同部门,以达到输出所选部门出勤却无工资的总数,但现在选择了两个部门,输出的结果是两个部门数量的加和,并不是单个部门的个数

10

0

10

10

没有更多
个人成就
内容被浏览293
加入社区46天
返回顶部