From d79abbc3d7d4ac90bc429e201e94a61dad16bd82 Mon Sep 17 00:00:00 2001 From: yangkunan Date: Thu, 17 Oct 2024 16:07:01 +0800 Subject: [PATCH] =?UTF-8?q?=E8=B4=A2=E5=8A=A1=E4=B8=8B=E9=92=BB=E6=8A=A5?= =?UTF-8?q?=E8=A1=A8=E5=8F=8A=E7=A8=8E=E9=87=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .idea/sqldialects.xml | 1 + .../财务主题/报表/税金/2_税金汇总表.sql | 109 ++++++++++++++++++ .../财务主题/报表/费用/1_1_1OA表单下钻.sql | 54 ++++----- .../财务主题/报表/费用/1_1财务凭证下钻.sql | 81 ++++++------- 4 files changed, 178 insertions(+), 67 deletions(-) create mode 100644 FineReport/财务主题/报表/税金/2_税金汇总表.sql diff --git a/.idea/sqldialects.xml b/.idea/sqldialects.xml index 8f57eb9..73eea4e 100644 --- a/.idea/sqldialects.xml +++ b/.idea/sqldialects.xml @@ -5,6 +5,7 @@ + diff --git a/FineReport/财务主题/报表/税金/2_税金汇总表.sql b/FineReport/财务主题/报表/税金/2_税金汇总表.sql new file mode 100644 index 0000000..5661940 --- /dev/null +++ b/FineReport/财务主题/报表/税金/2_税金汇总表.sql @@ -0,0 +1,109 @@ +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(sCorpCode)!=0," AND corp_code IN ('"+JOINARRAY(sCorpCode,"','")+"')", "")} +), + base_info AS ( + SELECT + LEFT(t1.subject_code,6) AS subject_code, + SUM(t1.begin_debit_blc) AS "期初借方余额", + SUM(t1.begin_credit_blc) AS "期初贷方余额", + SUM(t1.credit_amt) AS "贷方发生额", + SUM(t1.debit_amt) AS "借方发生额", + SUM(t1.begin_credit_blc) - SUM(t1.begin_debit_blc) AS "期初贷正借负" + FROM + "dwr"."fact_fim_subject_balance" t1 + JOIN corp t2 ON t1.corp_code = t2.corp_code + WHERE + t1.acnt_year = '${YEAR(sQueryDate)}' + AND t1.acnt_mon = '${FORMAT(sQueryDate,"MM")}' + AND t1.subject_code LIKE '2221%' + GROUP BY + LEFT(subject_code,6) + ), + subject_result AS ( + SELECT + t1.subject_code AS "科目编号", + ABS(SUM(t1."期初贷正借负")) AS "期初余额", + + ABS(SUM(t1."贷方发生额")) AS "本期应交" + FROM + base_info t1 + WHERE + t1.subject_code IN ('222102','222105','222104','222113','222114','222106','222107','222110','222108','222109','222112','222118','222125','222121') + GROUP BY + t1.subject_code + + UNION ALL + + SELECT + '其他税' AS "科目编号", + + ABS(SUM(t1."期初贷正借负") - (SUM(IF(t1.subject_code IN ('222101','222102','222104','222105','222106','222107','222108','222109','222110','222112','222113','222114','222116','222121','222123','222125'),t1."期初贷正借负",0)))) AS "期初余额", + + ABS(SUM(t1."贷方发生额") - SUM(IF(t1.subject_code IN ('222101','222102','222104','222105','222106','222107','222108','222109','222110','222112','222113','222114','222116','222121','222123','222125'),t1."贷方发生额",0))) AS "本期应交" + FROM + base_info t1 + + UNION ALL + + SELECT + '增值税' AS "科目编号", + + ABS(SUM(IF(LEFT(t1.subject_code,6) IN ('222101','222116','222123'),t1.begin_credit_blc,0)) - SUM(IF(LEFT(t1.subject_code,6) IN ('222101','222116','222123'),t1.begin_debit_blc,0))) AS "期初余额", + + ABS(SUM(IF(LEFT(t1.subject_code,8) IN ('22210105','22210116','22210117'),t1.credit_amt,0)) + SUM(IF(LEFT(t1.subject_code,6) IN ('222123'),t1.credit_amt,0)) - SUM(IF(LEFT(t1.subject_code,8) IN ('22210101','22210104','22210108','22210110','22210112','22210118'),t1.debit_amt,0))) AS "本期应交" + FROM + "dwr"."fact_fim_subject_balance" t1 + JOIN corp t2 ON t1.corp_code = t2.corp_code + WHERE + t1.acnt_year = '${YEAR(sQueryDate)}' + AND t1.acnt_mon = '${FORMAT(sQueryDate,"MM")}' + AND t1.subject_code LIKE '2221%' + ) +SELECT + fin0."税种", + IFNULL(fin1."期初余额",0) AS "期初余额", + IFNULL(fin1."本期应交",0) AS "本期应交" +FROM + ( SELECT 1 AS seq, '增值税' AS "科目编号",'增值税' AS "税种" + UNION ALL + SELECT 2 AS seq, '222102' AS "科目编号",'消费税' AS "税种" + UNION ALL + SELECT 3 AS seq, '222105' AS "科目编号",'企业所得税' AS "税种" + UNION ALL + SELECT 4 AS seq, '222104' AS "科目编号",'城市维护建设税' AS "税种" + UNION ALL + SELECT 5 AS seq, '222113' AS "科目编号",'教育费附加' AS "税种" + UNION ALL + SELECT 6 AS seq, '222114' AS "科目编号",'地方教育费附加' AS "税种" + UNION ALL + SELECT 7 AS seq, '222106' AS "科目编号",'个人所得税' AS "税种" + UNION ALL + SELECT 8 AS seq, '222107' AS "科目编号",'房产税' AS "税种" + UNION ALL + SELECT 9 AS seq, '222110' AS "科目编号",'土地使用税' AS "税种" + UNION ALL + SELECT 10 AS seq, '222108' AS "科目编号",'车船税' AS "税种" + UNION ALL + SELECT 11 AS seq, '222109' AS "科目编号",'印花税' AS "税种" + UNION ALL + SELECT 12 AS seq, '222112' AS "科目编号",'资源税' AS "税种" + UNION ALL + SELECT 13 AS seq, '222118' AS "科目编号",'契税' AS "税种" + UNION ALL + SELECT 14 AS seq, '222125' AS "科目编号",'环境保护费' AS "税种" + UNION ALL + SELECT 15 AS seq, '222121' AS "科目编号",'文化事业建设费' AS "税种" + UNION ALL + SELECT 16 AS seq, '其他税' AS "科目编号",'其他税' AS "税种" + ) fin0 + LEFT JOIN subject_result fin1 ON fin0."科目编号" = fin1."科目编号" +ORDER BY + fin0.seq \ No newline at end of file diff --git a/FineReport/财务主题/报表/费用/1_1_1OA表单下钻.sql b/FineReport/财务主题/报表/费用/1_1_1OA表单下钻.sql index 470193a..911c07c 100644 --- a/FineReport/财务主题/报表/费用/1_1_1OA表单下钻.sql +++ b/FineReport/财务主题/报表/费用/1_1_1OA表单下钻.sql @@ -5,34 +5,34 @@ WITH corp AS ( FROM dwr.dim_corp WHERE corp_type = '实体' AND (parent_corp_code LIKE '02%' OR corp_code = '0301') - ${IF(LEN(sCorpCode)!=0," AND corp_code IN ('"+JOINARRAY(sCorpCode,"','")+"')", "")} + ${IF(LEN(sCorpCode)!=0," AND corp_code IN ('"+JOINARRAY(sCorpCode,"','")+"')", "")} ) SELECT - bill_date -- 制单日期 - ,audit_date -- 终审日期 - ,pay_time -- 付款时间 - ,bill_code -- 单据号 - ,bill_status -- 单据状态 - ,budget_code -- 预算编号 - ,plan_code -- 资金计划编号 - ,corp_code -- 公司编码 - ,dept_code -- 部门编码 - ,fund_year -- 资金年度 - ,fund_month -- 资金月度 - ,fee_type -- 费用类型 - ,plan_item_code -- 资金项目编号 - ,plan_item_name -- 资金项目名称 - ,fund_item -- 支出项目 - ,owner_bank_account -- 本方帐号 - ,opp_account_name -- 对方户名 - ,opp_bank_account -- 对方帐号 - ,opp_name -- 对方名称 - ,amt -- 金额 - ,remark -- 备注 - ,budget_type -- 预算类型 - ,fund_content -- 支出内容 + bill_date -- 制单日期 + ,audit_date -- 终审日期 + ,pay_time -- 付款时间 + ,bill_code -- 单据号 + ,bill_status -- 单据状态 + ,budget_code -- 预算编号 + ,plan_code -- 资金计划编号 + ,corp_code -- 公司编码 + ,dept_code -- 部门编码 + ,fund_year -- 资金年度 + ,fund_month -- 资金月度 + ,fee_type -- 费用类型 + ,plan_item_code -- 资金项目编号 + ,plan_item_name -- 资金项目名称 + ,fund_item -- 支出项目 + ,owner_bank_account -- 本方帐号 + ,opp_account_name -- 对方户名 + ,opp_bank_account -- 对方帐号 + ,opp_name -- 对方名称 + ,amt -- 金额 + ,remark -- 备注 + ,budget_type -- 预算类型 + ,fund_content -- 支出内容 FROM dwi.dwi_fim_oa_payment WHERE corp_code in(SELECT corp_code FROM corp) -AND bill_date >= '${sQueryStartDate}' -AND bill_date <= '${FORMAT(sQueryDate,"MM-01")}' - + AND bill_date >= CONCAT('${sQueryStartDate}','-01') + AND bill_date <= CONCAT('${sQueryDate}','-01') + ${if(len(sBillcode)=0,"","AND bill_code = '" + sBillcode +"'")} \ No newline at end of file diff --git a/FineReport/财务主题/报表/费用/1_1财务凭证下钻.sql b/FineReport/财务主题/报表/费用/1_1财务凭证下钻.sql index 5714aa4..84de981 100644 --- a/FineReport/财务主题/报表/费用/1_1财务凭证下钻.sql +++ b/FineReport/财务主题/报表/费用/1_1财务凭证下钻.sql @@ -8,46 +8,47 @@ WITH corp AS ( ${IF(LEN(sCorpCode)!=0," AND corp_code IN ('"+JOINARRAY(sCorpCode,"','")+"')", "")} ) 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 -- 借方金额 -,credit_amt -- 贷方金额 -,src_bill_codes -- 来源单据号 -,acnt_date -- 记账日期 -FROM dwi.dwi_fim_voucher WHERE src_bill_codes = 'BR08020240302938' + 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 -- 借方金额 + ,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) + and corp_code in(SELECT corp_code FROM corp) + ${if(len(sBillcode)=0," ","AND src_bill_codes = '" + sBillcode +"'")} -- AND acnt_year = '${YEAR(sQueryDate)}' -- AND acnt_mon <= '${FORMAT(sQueryDate,"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 + "'" -)} -${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 +"%'")} + ${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 + "'" + )} + ${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 +"%'")} \ No newline at end of file