SELECT
MAX(parent.FNAME) AS '科目名称',
CASE
WHEN CHARINDEX('.', tba.FNUMBER) > 0 AND
CHARINDEX('.', tba.FNUMBER, CHARINDEX('.', tba.FNUMBER) + 1) > 0
THEN LEFT(tba.FNUMBER, CHARINDEX('.', tba.FNUMBER, CHARINDEX('.', tba.FNUMBER) + 1) - 1)
ELSE tba.FNUMBER
END AS '科目编码',
CAST(COALESCE(SUM(CASE WHEN MONTH(tgv.FDATE) = 1 AND dept.FMASTERID IS NOT NULL THEN tgve.FDEBIT ELSE 0 END), 0) AS DECIMAL(18,3)) AS '一月',
CAST(COALESCE(SUM(CASE WHEN MONTH(tgv.FDATE) = 2 AND dept.FMASTERID IS NOT NULL THEN tgve.FDEBIT ELSE 0 END), 0) AS DECIMAL(18,3)) AS '二月',
CAST(COALESCE(SUM(CASE WHEN MONTH(tgv.FDATE) = 3 AND dept.FMASTERID IS NOT NULL THEN tgve.FDEBIT ELSE 0 END), 0) AS DECIMAL(18,3)) AS '三月',
CAST(COALESCE(SUM(CASE WHEN MONTH(tgv.FDATE) = 4 AND dept.FMASTERID IS NOT NULL THEN tgve.FDEBIT ELSE 0 END), 0) AS DECIMAL(18,3)) AS '四月',
CAST(COALESCE(SUM(CASE WHEN MONTH(tgv.FDATE) = 5 AND dept.FMASTERID IS NOT NULL THEN tgve.FDEBIT ELSE 0 END), 0) AS DECIMAL(18,3)) AS '五月',
CAST(COALESCE(SUM(CASE WHEN MONTH(tgv.FDATE) = 6 AND dept.FMASTERID IS NOT NULL THEN tgve.FDEBIT ELSE 0 END), 0) AS DECIMAL(18,3)) AS '六月',
CAST(COALESCE(SUM(CASE WHEN MONTH(tgv.FDATE) = 7 AND dept.FMASTERID IS NOT NULL THEN tgve.FDEBIT ELSE 0 END), 0) AS DECIMAL(18,3)) AS '七月',
CAST(COALESCE(SUM(CASE WHEN MONTH(tgv.FDATE) = 8 AND dept.FMASTERID IS NOT NULL THEN tgve.FDEBIT ELSE 0 END), 0) AS DECIMAL(18,3)) AS '八月',
CAST(COALESCE(SUM(CASE WHEN MONTH(tgv.FDATE) = 9 AND dept.FMASTERID IS NOT NULL THEN tgve.FDEBIT ELSE 0 END), 0) AS DECIMAL(18,3)) AS '九月',
CAST(COALESCE(SUM(CASE WHEN MONTH(tgv.FDATE) = 10 AND dept.FMASTERID IS NOT NULL THEN tgve.FDEBIT ELSE 0 END), 0) AS DECIMAL(18,3)) AS '十月',
CAST(COALESCE(SUM(CASE WHEN MONTH(tgv.FDATE) = 11 AND dept.FMASTERID IS NOT NULL THEN tgve.FDEBIT ELSE 0 END), 0) AS DECIMAL(18,3)) AS '十一月',
CAST(COALESCE(SUM(CASE WHEN MONTH(tgv.FDATE) = 12 AND dept.FMASTERID IS NOT NULL THEN tgve.FDEBIT ELSE 0 END), 0) AS DECIMAL(18,3)) AS '十二月',
CAST(COALESCE(SUM(CASE WHEN MONTH(tgv.FDATE) BETWEEN 1 AND 12 AND dept.FMASTERID IS NOT NULL THEN tgve.FDEBIT ELSE 0 END), 0) AS DECIMAL(18,3)) AS '年度合计'
FROM
T_BD_ACCOUNT tba
LEFT JOIN
T_BD_ACCOUNT_L tbal ON tba.FACCTID = tbal.FACCTID
LEFT JOIN
T_GL_VOUCHERENTRY tgve ON tba.FACCTID = tgve.FACCOUNTID
LEFT JOIN
T_GL_VOUCHER tgv ON tgve.FVOUCHERID = tgv.FVOUCHERID AND tgv.FACCTORGID = '101041' AND tgv.FYEAR = '2025'
LEFT JOIN
T_BD_FLEXITEMDETAILV tbf ON tgve.FDETAILID = tbf.FID
LEFT JOIN
(SELECT tbd.FMASTERID FROM T_BD_DEPARTMENT tbd
JOIN T_BD_DEPARTMENT_L tbdl ON tbd.FDEPTID = tbdl.FDEPTID
WHERE tbdl.FNAME = '冷柜中小业态' AND tbd.FUSEORGID = '101041') dept
ON tbf.FFLEX5 = dept.FMASTERID
LEFT JOIN
-- 获取上级科目名称
(
SELECT
tba.FNUMBER,
tbal.FNAME
FROM
T_BD_ACCOUNT tba
JOIN
T_BD_ACCOUNT_L tbal ON tba.FACCTID = tbal.FACCTID
WHERE
tba.FUSEORGID = '101041'
AND tba.FNUMBER IN ('6601.02','6601.06','6601.07','6601.09','6601.12','6601.13','6601.14','6601.15','6601.18','6601.20','6601.22','6601.23')
) parent ON
CASE
WHEN CHARINDEX('.', tba.FNUMBER) > 0 AND
CHARINDEX('.', tba.FNUMBER, CHARINDEX('.', tba.FNUMBER) + 1) > 0
THEN LEFT(tba.FNUMBER, CHARINDEX('.', tba.FNUMBER, CHARINDEX('.', tba.FNUMBER) + 1) - 1)
ELSE tba.FNUMBER
END = parent.FNUMBER
WHERE
tba.FUSEORGID = '101041'
AND (
tba.FNUMBER LIKE '6601.02%' OR
tba.FNUMBER LIKE '6601.06%' OR
tba.FNUMBER LIKE '6601.07%' OR
tba.FNUMBER LIKE '6601.09%' OR
tba.FNUMBER LIKE '6601.12%' OR
tba.FNUMBER LIKE '6601.13%' OR
tba.FNUMBER LIKE '6601.14%' OR
tba.FNUMBER LIKE '6601.15%' OR
tba.FNUMBER LIKE '6601.18%' OR
tba.FNUMBER LIKE '6601.20%' OR
tba.FNUMBER LIKE '6601.22%' OR
tba.FNUMBER LIKE '6601.23%'
)
GROUP BY
CASE
WHEN CHARINDEX('.', tba.FNUMBER) > 0 AND
CHARINDEX('.', tba.FNUMBER, CHARINDEX('.', tba.FNUMBER) + 1) > 0
THEN LEFT(tba.FNUMBER, CHARINDEX('.', tba.FNUMBER, CHARINDEX('.', tba.FNUMBER) + 1) - 1)
ELSE tba.FNUMBER
END
ORDER BY
CASE
WHEN CHARINDEX('.', tba.FNUMBER) > 0 AND
CHARINDEX('.', tba.FNUMBER, CHARINDEX('.', tba.FNUMBER) + 1) > 0
THEN LEFT(tba.FNUMBER, CHARINDEX('.', tba.FNUMBER, CHARINDEX('.', tba.FNUMBER) + 1) - 1)
ELSE tba.FNUMBER
END
最新发布