存货核算报表的后台数据表

导读
存货模块的报表都是动态表单,比如存货收发存汇总表/明细表,动态表单都没有固定的SQL查询脚本,需要用SQL Server Profiler来跟踪报表的取数语句,跟踪方法见https://vip.kingdee.com/link/s/MCtzW。附件有脚本示例供参考。
确认是否启用成本分表功能,启用与不启用查询的后台表有差异。
确认方法1:在客户端右上方的应用菜单栏搜索“启用成本拆分表”,有已启用的拆分期间,就是启用了。

确认方法2:在数据库查询,有结果显示,就是启用了。
SELECT * FROM T_HS_SPLITTABLEENTRY WHERE FSPLITTABLENAME LIKE 'T_HS_INIVBAL%'

一、没有启用成本分表功能的情况
方法1、用接口查询
接口文档:https://openapi.open.kingdee.com/ApiDoc?operateId=916002926564657152
方法2、在数据库查询
准备条件:按会计核算体系+会计政策+核算组织+会计核算年度+核算期间 查到期间内码
SELECT A.FID ,HSTX.FNAME '会计核算体系名称' , KJZC.FNAMe'会计政策名称' , HSZZ.FNAME '核算组织名称' , A.FYEAR '年' , A.FPERIOD '期',A.FID '期间内码',HSTX.FACCTSYSTEMID '会计核算体系内码',KJZC.FACCTPOLICYID '会计政策内码',HSZZ.FORGID '核算组织内码' FROM T_HS_OUTACCTG A INNER JOIN T_HS_CALDIMENSIONS B ON A.FDIMENSIONID =B.FDIMENSIONID INNER JOIN T_ORG_ACCOUNTSYSTEM_L HSTX ON B.FACCTSYSTEMID=HSTX.FACCTSYSTEMID and HSTX.FLOCALEID =2052 ---T_ORG_ACCOUNTSYSTEM_L 核算体系名称 INNER JOIN T_FA_ACCTPOLICY_L KJZC ON B.FACCTPOLICYID=KJZC.FACCTPOLICYID and KJZC.FLOCALEID =2052 --T_FA_ACCTPOLICY_L 会计政策名称 INNER JOIN T_ORG_ORGANIZATIONS_L HSZZ ON B.FFINORGID=HSZZ.FORGID and HSZZ.FLOCALEID =2052 ---T_ORG_ORGANIZATIONS_L 核算组织名称 WHERE A.FYEAR ='2022' AND A.FPERIOD BETWEEN '1' AND '5' and HSTX.FNAME ='财务会计核算体系' AND KJZC.FNAME='中国准则会计政策' AND HSZZ.FNAME='柴油机公司'
开始,存货收发存汇总表取数过程(详细过程见附件)
步骤1:按会计核算体系+核算组织+会计政策,获取物料的维度信息,后台表T_HS_INIVSTOCKDIMENSION
步骤2:从视图V_HS_INIVBALANCE_RPT获取期初数量和金额,单价=金额除以数量
补充:V_HS_INIVBALANCE_RPT是从8.1.0.20230608版本才有的视图,低于这个版本的是用视图V_HS_INIVBALANCE。
SELECT FQTY,FAMOUNT,FDIMEENTRYID FROM V_HS_INIVBALANCE_RPT WHERE FENDINITKEY = '0' --注释:FENDINITKEY = '0'为期初,=1 为期末
步骤3:从视图V_HS_OUTINSTOCKSEQ获取收入数量、发出数量
SELECT FDIMEENTRYID , CASE WHEN FINOUTINDEX = '1' THEN FQTY ELSE 0 END FRECEIVEQTY, CASE WHEN FINOUTINDEX = '0' THEN FQTY ELSE 0 END FSENDQTY FROM V_HS_OUTINSTOCKSEQ 注释:FINOUTINDEX = '1' 为收入,= '0'为发出
步骤4:从视图V_HS_OUTINSTOCKSEQ 和 成本调整T_HS_AdjustmentBillEntry获取收入金额、发出金额。
步骤5:通过公式计算,结存数量=期初数量+收入数量-发出数量,结存金额=期初金额+收入金额-发出金额,结存单价=结存金额除以结存数量。
二、启用成本分表功能的情况
方法1、用接口查询
成本模块水平分表https://vip.kingdee.com/link/s/MeEVh,第四点
方法2、在数据库查询的方法
准备条件:查询拆分后的表名
参照没有启用成本分表功能的步骤,只需要将视图V_HS_INIVBALANCE_RPT和V_HS_OUTINSTOCKSEQ改成拆分后的表名(这两个视图对应的表分别是T_HS_INIVBALANCE和T_HS_OUTINSTOCKSEQ)。
补充:V_HS_INIVBALANCE_RPT是从8.1.0.20230608版本才有的视图,低于这个版本的是用视图V_HS_INIVBALANCE。
第1步:按会计核算体系+会计政策+核算组织+会计核算年度+核算期间 查到期间内码,比如查到某期的内码是100014
SELECT A.FID ,HSTX.FNAME '会计核算体系名称' , KJZC.FNAMe'会计政策名称' , HSZZ.FNAME '核算组织名称' , A.FYEAR '年' , A.FPERIOD '期',A.FID '期间内码',HSTX.FACCTSYSTEMID '会计核算体系内码',KJZC.FACCTPOLICYID '会计政策内码',HSZZ.FORGID '核算组织内码' FROM T_HS_OUTACCTG A INNER JOIN T_HS_CALDIMENSIONS B ON A.FDIMENSIONID =B.FDIMENSIONID INNER JOIN T_ORG_ACCOUNTSYSTEM_L HSTX ON B.FACCTSYSTEMID=HSTX.FACCTSYSTEMID and HSTX.FLOCALEID =2052 ---T_ORG_ACCOUNTSYSTEM_L 核算体系名称 INNER JOIN T_FA_ACCTPOLICY_L KJZC ON B.FACCTPOLICYID=KJZC.FACCTPOLICYID and KJZC.FLOCALEID =2052 --T_FA_ACCTPOLICY_L 会计政策名称 INNER JOIN T_ORG_ORGANIZATIONS_L HSZZ ON B.FFINORGID=HSZZ.FORGID and HSZZ.FLOCALEID =2052 ---T_ORG_ORGANIZATIONS_L 核算组织名称 WHERE A.FYEAR ='2022' AND A.FPERIOD BETWEEN '1' AND '5' and HSTX.FNAME ='财务会计核算体系' AND KJZC.FNAME='中国准则会计政策' AND HSZZ.FNAME='柴油机公司'
第2步:根据拆分前表名,找到拆分后表名,再加上步骤1的核算内码 ,组成完整的拆分后表名
SELECT FNUMBER 拆分后表名前缀,FSOURCETABLE 拆分前表名,* FROM T_HS_SPLITTABLE WHERE FSOURCETABLE = 'T_HS_OUTINSTOCKSEQ' SELECT FNUMBER 拆分后表名前缀,FSOURCETABLE 拆分前表名,* FROM T_HS_SPLITTABLE WHERE FSOURCETABLE = 'T_HS_INIVBALANCE'

1)比如拆分前表名T_HS_INIVBALANCE,拆分后就是T_HS_INIVBAL
存货核算报表的后台数据表
声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。如若本站内容侵犯了原著者的合法权益,可联系本站删除。



