Files
GateDge2023_ljy/05.长园/CYG/销售合同金额计算_20240723.sql
PastSaid 5472714e30 aa
2024-08-29 09:42:49 +08:00

35 lines
1.2 KiB
SQL

WITH # AS (
SELECT
t0.FID,t0.FBILLNO AS 'FNumber'
,t0.FNAME as FName
,t0.FDOCUMENTSTATUS
,t0.F_CYG_ContractNoDL
,'A' AS 'FFORBIDSTATUS'
,t0f.FCONTRACTAMOUNT
FROM T_CRM_CONTRACT t0
INNER JOIN T_CRM_CONTRACTFIN t0f on t0f.FID = t0.FID
WHERE t0.FDOCUMENTSTATUS = 'C'
)
, # AS (
SELECT t0.FID AS 'CONTRACT_ID'
,t1.FID AS 'SALID'
,t1.FBILLNO
,t1f.FBILLAMOUNT
FROM # t0
INNER JOIN T_SAL_ORDER t1 on t1.FCRMContractId = t0.FID
INNER JOIN T_SAL_ORDERFIN t1f on t1f.FID = t1.FID
)
, # AS (
SELECT SUM(t2e_f.FAMOUNT) AS DEBILLAMOUNT,t0.CONTRACT_ID
FROM # t0
INNER JOIN T_SAL_DELIVERYNOTICEENTRY_LK t1e_lk --发货通知单关系表
ON t0.SALID = t1e_lk.FSBILLID AND t1e_lk.FSTABLENAME = 'T_SAL_ORDERENTRY'
INNER JOIN T_SAL_OUTSTOCKENTRY_LK t2e_lk --销售出库单关系表
ON t1e_lk.FENTRYID = t2e_lk.FSID AND t2e_lk.FSTABLENAME = 'T_SAL_DELIVERYNOTICEENTRY'
INNER JOIN T_SAL_OUTSTOCKENTRY_F t2e_f on t2e_f.FENTRYID = t2e_lk.FENTRYID
GROUP BY t0.CONTRACT_ID
)
SELECT t0.*,ISNULL(t1.FBILLNO,''),ISNULL(t1.FBILLAMOUNT,0),ISNULL(t2.DEBILLAMOUNT,0)
FROM # t0
LEFT JOIN # t1 on t0.FID = t1.CONTRACT_ID
LEFT JOIN # t2 on t0.FID = t2.CONTRACT_ID