langjiu-project/FineReport/财务主题/报表/费用/1_1财务凭证下钻.sql

60 lines
2.6 KiB
SQL

WITH corp AS (
SELECT
corp_code -- 公司编码
,corp_name -- 公司名称
FROM dwr.dim_corp
WHERE corp_type = '实体'
AND (parent_corp_code LIKE '02%' OR corp_code = '0301')
${IF(LEN(sCorp)!=0," AND corp_code IN ('"+ sCorp +"')", "")}
)
SELECT
bill_date -- 制单日期
,bill_emp_code -- 制单人工号
,corp_code -- 公司编码
,acnt_book_name -- 主体账簿
,vouch_type -- 凭证类别
,vouch_code -- 凭证号
,acnt_year -- 账期年度
,acnt_mon -- 账期月度
,main_abstract -- 主表摘要
,entry_code -- 分录号
,sub_abstract -- 子表摘要
,subject_code -- 科目编码
,subject_name -- 科目名称
,subject_full_name -- 科目全称
,aux_content -- 辅助核算
,debit_amt / 10000 AS debit_amt -- 借方金额
,credit_amt / 10000 credit_amt -- 贷方金额
,src_bill_codes -- 来源单据号
,acnt_date -- 记账日期
FROM dwi.dwi_fim_voucher
where subject_code like '6601%'
and corp_code in(SELECT corp_code FROM corp)
${if(len(sBill)=0," ","AND src_bill_codes = '" + sBill +"'")}
-- AND acnt_year = '${YEAR(sStart_mon)}'
-- AND acnt_mon <= '${FORMAT(sStart_mon,"MM")}'
-- ${switch(sCalcType
-- ,"m","AND concat(acnt_year,'-',acnt_mon) <= '" + sQueryDate + "' AND concat(acnt_year,'-',acnt_mon) >= '" + sQueryStartDate + "'"
-- ,"y","AND concat(acnt_year,'-',acnt_mon) <= '" + sQueryDate + "' AND concat(acnt_year,'-',acnt_mon) >= '" + sQueryStartDate + "'"
-- )}
${switch(sCalcType
,"m","AND acnt_year = '" + YEAR(sStart_mon) + "' AND acnt_mon = '" + FORMAT(sStart_mon,"MM") + "'"
,"y","AND acnt_year = '" + YEAR(sStart_mon) + "' AND acnt_mon = '" + FORMAT(sStart_mon,"MM") + "'"
)}
${nvl(switch(sSubject
,"0000","AND subject_code like '6601%' AND (subject_code not like '660114%'
AND subject_code not like '660127%'
AND subject_code NOT like '660150%'
AND subject_code NOT like '660115%'
AND subject_code NOT like '660117%'
AND subject_code NOT like '660136%'
AND subject_code NOT like '660130%'
AND subject_code NOT like '660125%'
AND subject_code NOT like '660167%'
AND subject_code NOT like '660121%'
AND subject_code NOT like '660164%'
)"
,"660114,660127","AND (subject_code like '660114%' or subject_code like '660127%')")
,"and subject_code like '" + sSubject +"%'")}