96 lines
3.0 KiB
SQL
96 lines
3.0 KiB
SQL
-- 【1_report_多径回款情况】
|
|
|
|
|
|
SELECT
|
|
business_code -- 业务域code
|
|
,organ_code -- erp片区code
|
|
,organ_name -- erp片区名称
|
|
,comm_id -- 项目id
|
|
,comm_name -- 项目名称
|
|
,index_type -- 多经类别(社商/ 新零售、美居、附属资源/ 空间运营、资产运营/ 资产租售)
|
|
,index_receivable -- 应收值
|
|
,index_receipts -- 实收值
|
|
,index_not_receipts -- 未回款数
|
|
,collection_rate -- 回款率
|
|
FROM dw.ods_caiwu_profit
|
|
WHERE (index_receivable <> 0 OR index_receipts <> 0 OR index_not_receipts <> 0)
|
|
AND `year_month` = '${REPLACE(p_ym,"-","")}'
|
|
${IF(LEN(p_area)>0," AND organ_code IN ('"+JOINARRAY(p_area,"','")+"')", "")}
|
|
${if(left(fine_role,2)=="项目","and comm_name = '"+GETUSERDEPARTMENTS(3)+"'","")}
|
|
${IF(LEN(p_type)>0," AND index_type IN ('"+JOINARRAY(p_type,"','")+"')", "")}
|
|
|
|
|
|
-- 【2_业务条线】
|
|
SELECT
|
|
DISTINCT
|
|
index_type
|
|
FROM dw.ods_caiwu_profit
|
|
;
|
|
|
|
-- 【1_report_欠费下钻明细】
|
|
SELECT
|
|
A.OrganCode AS OrganCode -- 片区编码
|
|
,A.OrganName AS OrganName -- 片区名称
|
|
,A.CommID AS CommID -- 项目id
|
|
,A.CommName AS CommName -- 项目名称
|
|
,A.CustName AS CustName -- 客户姓名 商户
|
|
,SUM(A.recev_amount) AS recev_amount-- 应收金额
|
|
,A.AccountsDueDate AS AccountsDueDate -- 应收日期
|
|
,SUM(A.paid_amount) AS paid_amount -- 实收金额 回款金额
|
|
,SUM(A.recev_amount) - SUM(A.paid_amount) AS Arrears_amount -- 欠费金额
|
|
,IF(SUM(A.recev_amount) = 0,0,SUM(A.paid_amount) /SUM(A.recev_amount)) AS PAID_AMOUNT_RATE
|
|
FROM
|
|
(
|
|
SELECT
|
|
OrganCode -- 片区编码
|
|
,OrganName -- 片区名称
|
|
,CommID -- 项目id
|
|
,CommName -- 项目名称
|
|
,CustName -- 客户姓名 商户
|
|
,SUBSTR(AccountsDueDate,1,10) AS AccountsDueDate -- 应收日期
|
|
,CorpCostID
|
|
,CASE WHEN BussType IN('新增','删除') THEN DealAmount ELSE 0 END AS recev_amount -- 应收金额
|
|
,CASE WHEN BussType IN('实收','撤销实收') THEN DealAmount ELSE 0 END AS paid_amount -- 实收金额
|
|
FROM dw.ods_erp_tb_hspr_feesserial_${p_comm_id}_d
|
|
WHERE left(AccountsDueDate,7) = '${p_ym}'
|
|
${IF(LEN(p_area)>0," AND organ_code IN ('"+JOINARRAY(p_area,"','")+"')", "")}
|
|
${if(left(fine_role,2)=="项目","and comm_name = '"+GETUSERDEPARTMENTS(3)+"'","")}
|
|
)A
|
|
JOIN
|
|
(
|
|
SELECT
|
|
a.CorpCostID
|
|
,a.CostName
|
|
FROM
|
|
(
|
|
select
|
|
CorpCostID
|
|
,CostCode
|
|
,CostName
|
|
from dw.dim_corp_cost_item_d -- 总部费用科目
|
|
where length(CostCode) != 4
|
|
) a
|
|
left join
|
|
(
|
|
select
|
|
CorpCostID
|
|
,CostCode
|
|
from dim_corp_cost_item_d
|
|
where length(CostCode) = 4
|
|
) b
|
|
on left(a.CostCode,4) = b.CostCode
|
|
where b.CostCode = '0007'
|
|
)B
|
|
ON A.CorpCostID = B.CorpCostID
|
|
GROUP BY
|
|
A.OrganCode
|
|
,A.OrganName
|
|
,A.CommID
|
|
,A.CommName
|
|
,A.CustName
|
|
,A.AccountsDueDate
|
|
|
|
|
|
|
|
|