一种受托代销商品存货成本计算方法

文档序号:10726110阅读:518来源:国知局
一种受托代销商品存货成本计算方法
【专利摘要】本发明公开了一种受托代销商品存货成本计算方法,其具体实现过程为:首先构造虚拟时间列,该虚拟时间列由业务日期、流水编号和寄存出入库标识构成;按照虚拟时间列中的业务日期、流水编号和寄存出入库标识列升序排列,该组合列的升序次序标识了受托代销商品出入库的时间先后次序,并以该次序作为后续移动加权平均法计算出库成本的依据。本发明的一种受托代销商品存货成本计算方法与现有技术相比,通过构造“虚拟时间列”制定了对普通商品和受托代销品通用的规则,支持受托代销商品按照移动加权平均法计算当月发出存货成本,使得GS供应链产品能够支持价格波动敏感的受托代销商品的成本核算,扩大了产品的适用范围,实用性强,易于推广。
【专利说明】
一种受托代销商品存货成本计算方法
技术领域
[0001] 本发明涉及计算机技术领域,具体地说是一种通过T-SQL语言实现受托代销品按 照移动加权法计算成本方法。
【背景技术】
[0002] 与普通商品相比,受托代销品业务上的特殊性,决定了在现有的数据结构下,是先 生成出库单再生成入库单,而原有通过业务日期和流水编号标识出入库顺序的规则不适合 于受托代销品的业务,因此无法在原有的规则下按照移动加权法对受托代销品进行成本核 算。对于一个既有普通商品又有受托代销品业务的企业来说,也就无法使用现有的GS产品 按照移动加权法进行存货成本核算。本发明通过构造"虚拟时间列"制定了对普通商品和受 托代销品通用的规则,以扩大了产品的适用范围。

【发明内容】

[0003] 本发明的技术任务是针对以上不足之处,提供一种受托代销商品存货成本计算方 法。
[0004] -种受托代销商品存货成本计算方法,其具体实现过程为:
[0005] 首先构造虚拟时间列,该虚拟时间列由业务日期、流水编号和寄存出入库标识构 成;
[0006] 按照虚拟时间列中的业务日期、流水编号和寄存出入库标识列升序排列,该组合 列的升序次序标识了受托代销商品出入库的时间先后次序,并以该次序作为后续移动加权 平均法计算出库成本的依据。
[0007] 构造虚拟时间列时,将计算成本所需普通商品和受托代销品出入库单据信息一并 插入到该虚拟时间列的中间临时表中。
[0008] 所述虚拟时间列在排序前需要进行赋值,具体赋值过程为:
[0009] 首先将虚拟时间列组合中的业务日期和流水编号列赋值为单据本身的业务日期 和流水编号,寄存入库标识赋值为"Γ ;
[0010] 其次将受托代销品入库单据虚拟时间列组合中业务日期和流水编号更新为其对 应出库单据的流水编号和业务日期,寄存入库标识更新为"〇" ;
[0011] 相对应的,对于重构后的数据,按照虚拟时间列中的业务日期、流水编号和寄存出 入库标识列升序排列,以此顺序按照移动加权法计算出库成本。
[0012] 本发明的一种受托代销商品存货成本计算方法和现有技术相比,具有以下有益效 果:
[0013] 本发明的一种受托代销商品存货成本计算方法,通过构造"虚拟时间列"制定了对 普通商品和受托代销品通用的规则,支持受托代销商品按照移动加权平均法计算当月发出 存货成本,使得GS供应链产品能够支持价格波动敏感的受托代销商品的成本核算,扩大了 产品的适用范围,实用性强,易于推广。
【具体实施方式】
[0014] 下面结合具体实施例对本发明作进一步说明。
[0015] 在供应链的数据结构中,出入库单据上的业务日期代表了日期的前后,而对于业 务日期相同的情况,由于后续生成单据的流水编号要比之前单据的流水编号大,因此业务 日期加流水编号的组合按照升序排列即可代表实际业务的出入库顺序。而受托代销品的入 库日期和出库日期相同,入库单据却是在其对应出库单据之后生成,入库单据流水编号要 比出库单据的编号大,因此原有"业务日期+流水编号"标识出入库顺序的规则无法适用于 受托代销品业务。
[0016] 基于此,本发明提供一种受托代销商品存货成本计算方法,按照"虚拟时间列"升 序排列,可以标识出受托代销商品先入库再出库的业务顺序,此规则也同样适用于普通商 品。移动加权平均法的前提就是要能够正确识别出入库业务顺序,因此此方法的提出使得 受托代销商品按照移动加权法计算成本成为可能。
[0017] 其具体实现过程为:
[0018] 首先构造虚拟时间列,该虚拟时间列由业务日期、流水编号和寄存出入库标识构 成;
[0019] 将计算成本所需普通商品和受托代销品出入库单据信息一并插入到包含"虚拟时 间列"的中间临时表。
[0020] 对"虚拟时间列"字段赋值,本步骤也是该方法的核心之处,其中包含以下两个步 骤:
[0021 ]将临时表中"虚拟时间列"组合中的业务日期和虚拟流水编号列全部赋值为单据 本身的业务日期和流水编号,寄存出入库标识赋值为"Γ。
[0022] 将临时表中受托代销品入库单据的"虚拟时间列"组合中业务日期和流水编号列 更新为其对应出库单据的流水编号和业务日期,寄存出入库标识更新为"〇"。
[0023] 对于重构后的数据,按照"虚拟时间列"中的业务日期、流水编号和寄存出入库标 识列升序排列,以此顺序按照移动加权法计算出库成本。
[0024] 举例说明:
[0025]假如A企业经营的商品P同时存在普通和受托代销品的业务,在2016年1月1号普通 商品入库2个,单价为1元,1月5号正常商品出库1个;1月10受托商品出库1个,同时系统会自 动生成对应的入库1个,入库成本确认为2元,如下表1所示,其中特殊库存列,Z代表普通业 务,K代表受托代销业务。
[0026] 表1 A企业2016年1月份商品出入库情况
[0028]在原有按照业务日期和单据流水排序规则下,我们无法获得准确的先入后出的顺 序,即正确单据顺序:〇〇〇 1-000240004-0003,而只能获得0001-000240004-0003的顺 序,以此顺序的移动加权法计算出流水编号为0003的出库单的发出单价为1元,如下表2所 示。而受托代销商品虽然具有业务上的特殊性,但是在进行成本核算的时候,通用需要是将 入库单据排到出库单据的前面进行计算成本,因此上面顺序计算出来的价格是不准确的。 但是在现有的数据结构下,我们又无法获得一个准确的顺序。
[0029] 表2 A企业2016年1月份商品出入库情况
[0031] 现在在临时表中加入虚拟业务日期、虚拟流水和寄存出入库标识三列,创建表结 构的语句如下,其中加粗部分是本次添加的"虚拟时间列"字段,其中流水编号对应单据流 水编号和分录流水编号。
[0033] 在将所需业务单据插入到上述表中之后,按照我们之前描述的规则:
[0034] 1)将所有单据"虚拟时间列"组合中的虚拟日期和虚拟流水编号列更新为单据本 身的业务日期和流水编号,出入库标识更新为"Γ,此步操作我们在向临时表中插入数据过 程中已经同时做了赋值处理。
[0035] 2)将所有受托代销品入库单据的虚拟日期和虚拟流水编号更新为其出库单据对 应的流水编号和业务日期,出入库标识更新为"0",对应的处理语句如下:
[0036] update#TempYDJQPJ set OrderCreateDate =GoodsMovement.CreateDate from
[0037] GoodsMovement
[0038] where exists(select lfrom BargainGoodsLinks where BargainGoodsLinks.BargainBi11ID =
[0039] GoodsMovement.GoodsMovementID and TempYDJQPJ.GoodsMovementID=
[0040] BargainGoodsLinks.GoodsMovementID and BargainType='2')
[0041] update#TempYDJQPJ set 0rderCode='0',
[0042] OrderGoodsMovementID=goodsmovementitem.GoodsMovementID,
[0043] OrderGoodsMovementItemID=g oodsmovementitem.GoodsMovementItemID
[0044] from GoodsMovementItem where exists(select lfrom BargainGoodsLinks where
[0045] BargainGoodsLinks.BargainBi11ID=GoodsMovementItem.GoodsMovementID and
[0046] BargainGoodsLinks.BargainBi11ItemID=GoodsMovementItem.GoodsMovementI temID
[0047] and#TempYDJQPJ.GoodsMovementID=BargainGoodsLinks.GoodsMovementID
[0048] and#TempYDJQPJ.GoodsMovementItemID=BargainGoodsLinks.GoodsMovementI temID and BargainType=,2,)
[0049] 这样按照虚拟时间列排序之后,就能正确反映单据的出入库顺序,计算出流水号 为0003的出库单的成本为1.5。
[0050] 表3添加"虚拟时间列"后成本计算情况
[0051]
[0052]通过上面【具体实施方式】,所述技术领域的技术人员可容易的实现本发明。但是应 当理解,本发明并不限于上述的【具体实施方式】。在公开的实施方式的基础上,所述技术领域 的技术人员可任意组合不同的技术特征,从而实现不同的技术方案。
[0053]除说明书所述的技术特征外,均为本专业技术人员的已知技术。
【主权项】
1. 一种受托代销商品存货成本计算方法,其特征在于,其具体实现过程为: 首先构造虚拟时间列,该虚拟时间列由业务日期、流水编号和寄存出入库标识构成; 按照虚拟时间列中的业务日期、流水编号和寄存出入库标识列升序排列,该组合列的 升序次序标识了受托代销商品出入库的时间先后次序,并以该次序作为后续移动加权平均 法计算出库成本的依据。2. 根据权利要求1所述的一种受托代销商品存货成本计算方法,其特征在于,构造虚拟 时间列时,将计算成本所需普通商品和受托代销品出入库单据信息一并插入到该虚拟时间 列的中间临时表中。3. 根据权利要求2所述的一种受托代销商品存货成本计算方法,其特征在于,所述虚拟 时间列在排序前需要进行赋值,具体赋值过程为: 首先将虚拟时间列组合中的业务日期和流水编号列赋值为单据本身的业务日期和流 水编号,寄存入库标识赋值为"1" ; 其次将受托代销品入库单据虚拟时间列组合中业务日期和流水编号更新为其对应出 库单据的流水编号和业务日期,寄存入库标识更新为"0" ; 相对应的,对于重构后的数据,按照虚拟时间列中的业务日期、流水编号和寄存出入库 标识列升序排列,以此顺序按照移动加权法计算出库成本。
【文档编号】G06Q30/02GK106097018SQ201610451189
【公开日】2016年11月9日
【申请日】2016年6月21日
【发明人】赵洪超
【申请人】浪潮通用软件有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1