一、业务场景:
希望从个别报表中,将利润表中的收入、成本、利润总额。以及资产负债表中的资产总额取值到轻分析报表中。
(前提条件:要取值的报表单元格中,必须有项目公式。)
二、实现方案:
--先查询利润表中主营业务收入单元格,项目公式写的2005报表项目。那2005对应的就是主营业务收入
1、先查询出来这些报表项目在哪个实体数据表中存在
select ri.fname_l2,ifm.ftablename, ifm.ffieldname
from T_CSL_RptItem ri
inner join t_csl_itemfieldmapped ifm on ifm.fitemid=ri.fid
where ri.fnumber in ('2005','2004','200101','200102','200201','200202')
结果是F105\F104中存在
2、然后将步骤1查询出的结果,放到下面的SQL中
select idata.F104 销售费用, idata.F105 管理费用, idata.F98 主营业务收入, idata.F99 其他业务收入, idata.F101 主营业务成本, idata.F102 其他业务成本
from (
SELECT cr.fid FROM T_CSL_CslReport AS cr
inner join t_org_company AS bu ON cr.FOrgUnitID = bu.FID
WHERE
cr.fyear=2021 -- 年份
and cr.fperiod=1 --月份
and bu.fnumber='10201' --公司编码
) report
inner join t_csl_itemdata id on report.fid=id.fReportId
inner join t_csl_itemdataEntry ide on id.fid=ide.fItemDataId
inner join T_CSL_DataElement de on ide.fDataElement=de.fInterSeq
inner join T_CSL_ItemDataEntry001 idata on ide.fid=idata.fid
where de.fnumber='AMOUNT' --本期发生额、余额等和这里有关系