一种成本分摊装置和方法转让专利

申请号 : CN201911363917.7

文献号 : CN111275284A

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 崔丹丹

申请人 : 用友网络科技股份有限公司

摘要 :

本发明公开了一种成本分摊装置,其包括:分摊设置模块,其预定义分摊规则,分摊规则包括公共费用的分摊方式和分配范围;分摊规则计算模块,其根据预设的分摊方式,计算公共费用的分配范围和成本对象的分摊权重;分摊计算模块,其根据计算出的公共费用的分摊范围和每个成本对象的权重,计算每个成本对象的分摊金额,以及尾差处理模块,其对分摊金额进行舍位截取,将尾差按照截位损失大小分配给目标成本对象。

权利要求 :

1.一种成本分摊装置,其特征在于,包括:

分摊设置模块,其预定义分摊规则,所述分摊规则包括公共费用的分摊方式和分配范围;

分摊规则计算模块,其根据预设的所述分摊方式,计算所述公共费用的分配范围和成本对象的分摊权重;

分摊计算模块,其根据计算出的所述公共费用的分摊范围和每个所述成本对象的权重,计算每个所述成本对象的分摊金额;

尾差处理模块,其对所述分摊金额进行舍位截取,将尾差按照截位损失大小分配给所述目标成本对象。

2.根据权利要求1所述的成本分摊装置,其特征在于,所述分摊金额包括原始金额、截取后金额和截位损失金额。

3.一种成本分摊方法,其特征在于,其包括如下步骤:分摊设置:预定义分摊规则,所述分摊规则包括公共费用的分摊方式和分配范围;

分摊规则计算:根据预设的所述分摊方式,计算所述公共费用的分配范围和成本对象的分摊权重;

分摊计算:根据计算出的所述公共费用的分摊范围和每个所述成本对象的权重,计算每个所述成本对象的分摊金额,以及尾差处理:对所述分摊金额进行舍位截取,将尾差按照截位损失大小分配给所述目标成本对象。

4.根据权利要求3所述的成本分摊方法,其特征在于,在上述成本分摊步骤中,所述分摊金额包括原始金额、截取后金额和截位损失金额。

说明书 :

一种成本分摊装置和方法

技术领域

[0001] 本发明涉及计算机应用技术领域,特别是涉及一种成本分摊装置和方法,其例如应用于物料共用成本分摊计算等。本发明适用于大批量数据的分摊计算,在分摊对象和范围的数据较大情况下,可以提高分摊的效率,并且保证数据分摊结果的准确性。

背景技术

[0002] 在ERP系统中进行的成本核算,常常需要将企业生产过程中的公共费用进行分摊。公共费用可以是在生产过程中合并领料的材料成本,也可以是车间发生的制造费用、辅助人工和管理人员工资等。这些公共费用无法具体落实到考核对象上,需要按照一定的分摊规则做进一步处理,最终落实到具体的考核对象上。
[0003] 常见的分摊方法是,首先根据待分摊费用和分摊对象的特征,和预定义的分摊规则,计算出分摊计算的发送方、接受方、以及待承担费用的分摊对象的权重。然后根据计算出的结果,计算分摊对象的成本,计算过程中根据需要四舍五入保留至小数点后的预定位数;分摊完成后,将所有分摊对象的金额求和,与目标分摊金额相比较,如果有差值,再进行尾差处理。
[0004] 针对分摊成本导致的尾差问题,常见的做法是,根据一定的规则选取一个分摊对象来承担尾差,比如随机选取某一分摊对象,又或者按照分摊金额最大或者最小排序来选取某一个分摊对象,又或者按照误差最大的方式选择某一个分摊对象,这些做法的结果都是将尾差分配到单个分摊对象上,会导致误差的累积,最终导致产品单价失真。

发明内容

[0005] 本方法主要解决的问题是,实现一种成本分摊装置和方法,其例如可用于ERP系统中产品中共用成本的分摊,提高产品成本核算的效率和准确度,使产品成本的计算结果更加贴近实际,提高ERP系统的易用性。
[0006] 基于本发明,提供一种成本分摊装置,其包括:
[0007] 分摊设置模块,其预定义分摊规则,所述分摊规则包括公共费用的分摊方式和分配范围;
[0008] 分摊规则计算模块,其根据预设的所述分摊方式,计算所述公共费用的分配范围和成本对象的分摊权重;
[0009] 分摊计算模块,其根据计算出的所述公共费用的分摊范围和每个所述成本对象的权重,计算每个所述成本对象的分摊金额;
[0010] 尾差处理模块,其对所述分摊金额进行舍位截取,将尾差按照截位损失大小分配给所述目标成本对象。
[0011] 在上述成本分摊装置中,优选地,所述分摊金额包括原始金额、截取后金额和截位损失金额。
[0012] 一种成本分摊方法,其包括如下步骤:
[0013] 分摊设置:预定义分摊规则,所述分摊规则包括公共费用的分摊方式和分配范围;
[0014] 分摊规则计算:根据预设的所述分摊方式,计算所述公共费用的分配范围和成本对象的分摊权重;
[0015] 分摊计算:根据计算出的所述公共费用的分摊范围和每个所述成本对象的权重,计算每个所述成本对象的分摊金额;以及
[0016] 尾差处理:对所述分摊金额进行舍位截取,将尾差按照截位损失大小分配给所述目标成本对象。
[0017] 在上述成本分摊步骤中,优选地,所述分摊金额包括原始金额、截取后金额和截位损失金额。

附图说明

[0018] 图1示出了成本分摊装置的框图。
[0019] 图2示出了成分分摊的计算过程的流程图。

具体实施方式

[0020] 以下,为了更清楚的理解本发明的特征和优点,结合附图和具体实施例对本发明进行说明。
[0021] 图1示出了根据本发明的成本分摊装置10的框图,如图1所示,成本分摊装置10包括分摊设置模块101,其预定义公共费用的分摊方式和分配范围;分摊规则计算模块102,其根据预设的分摊方式,计算公共费用的分配范围和成本对象的分摊权重;分摊计算模块103,其根据计算出的公共费用分摊范围和每个成本对象的权重,计算每个成本对象的分摊金额以及尾差处理模块104,对分摊金额进行舍位截取,将尾差按照截位损失大小分配给目标成本对象。如如图1所示,各模块顺序连接。
[0022] 其中,公共费用是指企业内部管理过程中,无法直接落实到考核对象上的成本费用,按照企业内部管理考核的要求,暂时归集到成本中心或者公共考核对象。成本对象是指企业需要计量成本的对象。根据企业的需要,可以把每一个生产批次(订单)作为成本对象,也可以把一个品种的产品作为成本对象,或者产品工艺路线的工序作为成本对象。
[0023] 以下,对成本分摊装置10的具体功能进行说明。成本分摊装置10采用舍位平衡算法来处理分摊过程中产生的差异。根据预设的舍位精度,先将分摊金额保留至预定的位数(例如:2位),然后将预定尾数之后(例如:2位)的数值舍弃,被舍弃的部分称之为截位损失。然后按照截位损失的大小排序来分配尾差,每个成本对象承担1个单位的差异(例如0.01)。
[0024] 舍位平衡算法的具体计算过程如下:
[0025] 假设待分摊的公共费用金额为A,分摊范围为N个成本对象,P1,P2…,PN,第i个成本对象的权重为Wi,那么第i个成本对象分摊到的成本为:
[0026]
[0027] 将成本对象分摊到的金额保留至预定的小数位数,然后按照费用类型和费用明细分组合计,与费用的目标金额做比较,进行尾差处理。
[0028] (1)将Ai的金额保留至预定的小数位数m,然后得到Ai。
[0029] (2)将Ai求和,与A相减,得到尾差D。
[0030] (3)根据预定保留的小数位数m,计算需要分摊尾差的目标成本对象条数C=A*10m。
[0031] (4)计算承担尾差的目标成本对象。按照每个成本对象计算的尾差大小排序,选取前C条成本对象来承担尾差。
[0032] 考虑到分摊对象条目多的情况,可以考虑将截位损失分类,比如计算截位损失的时候,可选取只截取2位,将截位损失分组汇总,得到每个截位损失分类位的成本对象条目,然后查找符合目标成本对象条目数的分类。这样可以减少排序的工作量,提高查询效率。
[0033] 如图2所示,成本分摊装置10的各模块的具体计算过程如下:
[0034] 步骤1:分摊设置模块101在计算之前预定义公共费用的分摊方式和公共费用的分配范围。
[0035] 分摊方式可以多种模式,例如,某种费用类型可以统一按照产品产量分摊,也可以使用公式分摊(例如:产品单位工时×产品产量)。
[0036] 分摊范围指的是公共费用的分摊对象的范围,例如,公共费用可以指定在特定的产品大类上分摊。分摊公式的相关变量,可以是与产品特征相关,也可以自定义分配标准。
[0037] 公共费用的分摊范围可以用户自行设置,也可不设置,系统会按照相应分摊规则自动计算。
[0038] 步骤2:分摊规则计算模块102根据预设的分摊方式,计算公共费用的分配范围和公共费用对于成本对象的分摊基数。
[0039] 这里的分摊规则包括:数据发送方(公共费用),数据接收方(成本对象),费用分摊依据和费用对于每个成本对象的分摊基数。
[0040] 步骤3:分摊计算模块103根据公共费用的分配范围和成本对象的分摊基数,计算公共费用对于每个成本对象的分摊比例;然后根据公共费用的待分摊的金额,计算每个成本对象分摊到的公共费用的金额。
[0041] 分摊到的金额=成本对象的分摊比例*每项公共费用的待分摊金额
[0042] 步骤4:尾差处理模块104将每个成本对象分摊到的金额按照预设的精度截断,然后按照公共费用类型和编码进行分组合计,与公共费用待分摊的原始金额比较,如果有尾差,进行尾差处理;根据每项费用的尾差以及预设的精度,计算出各项费用尾差分配对应的目标成本对象条数;将每个成本对象的截断损失按照预设的精度小数位后截取2位存储,并由大到小排序,选取符合条件的成本对象来承担尾差。
[0043] 现有的分摊方案,实现复杂,灵活度低,迭代计算次数过多,计算性能差。本发明提供的分摊模型,可以批量对所有费用进行一次性分摊,将费用分配给多个分摊对象所需的计算次数最小化,大大缩减了分摊次数,提高了数据分摊的效率。
[0044] 本发明使用舍位平衡算法,同时支持多种费用类型和结构进行批量分摊计算,将尾差分配的迭代计算量最小化,提高数据处理速度,提升了计算的效率,并且保证了数据分摊的准确度和投入产出成本的一致性。
[0045] 假设分摊金额精度设置为两位小数,计算方法如下:
[0046] 1.进行分摊计算
[0047] Insert into分配结果表(费用ID,成本对象,分到的原始金额,截取后的金额,截位损失)
[0048] Select t1.费用ID,t2.成本对象,t1.费用金额*(t3.权重/t4.总权重)[0049] ,convert(decimal(38,2),floor(t1.费用金额*(t3.权重/t4.总权重)*100)/100)
[0050] ,round(分到的原始金额-截取后的金额,4)
[0051] From公共费用信息表t1
[0052] Inner join分摊范围表t2 on t1.成本中心=t2.成本中心and t1.费用ID=t2.费用ID
[0053] Inner join成本对象权重表t3 on t3.成本对象ID=t2.成本对象ID[0054] Inner join(select成本中心,总权重=sum(权重)from成本对象权重表group by成本中心)t4 on t1.成本中心=t4.成本中心
[0055] 其中,“公共费用信息表”中存储的是待分摊的公共费用的信息,包括公共费用的费用编码(费用ID)、费用类型、对应的成本中心和待分摊的金额等。关于“公共费用信息表”,参见以下表1的例子。
[0056] “分摊范围表”中存储的是按照预定义的公共费用的分摊方式和分摊规则,每项公共费用以及对应承担费用的成本对象范围信息。包括待分摊的公共费用的费用类型、费用ID以及对应承担该费用的成本对象信息。“分摊范围表”,参见以下表2的例子。
[0057] “成本对象权重表”中存储的是按照预定义的公共费用的分摊方式和分摊规则,统计出的每个成本对象的分摊权重信息。针对不同的分摊方式和分摊规则,权重表中存储的权重类型和信息可有所不同,可以按照成本对象存储,也可以按照成本对象+费用类型存储。“成本对象权重表”参见表3的例子。
[0058] floor为截断函数,可根据需要截取将小数点后的相应位数。
[0059] 2.计算尾差
[0060] insert into待处理差异列表(成本中心,费用ID,差异金额,待分配尾差的成本对象条目数量)
[0061] Select t1.成本中心,t1.费用ID,t1.费用金额-t2.截取后的金额合计,round((t1.费用金额-t2.截取后的金额合计)*100,0)
[0062] From公共费用信息表t1
[0063] Inner join(select成本中心,费用ID,截取后的金额合计=sum(截取后的金额)[0064] from分配结果表group by成本中心,费用ID
[0065] )t2 on t1.成本中心=t2.成本中心and t1.费用ID=t2.费用ID
[0066] where t1.费用金额-t2.截取后的金额合计<>0
[0067] 3.计算成本对象分摊的最终成本
[0068]
[0069]
[0070] 假设某个成本中心发生的公共费用类型有材料费用、制造费用和其他费用几种类型,分摊规则设置为:公共材料按照产量分摊,制造费用按照实际工时分摊,其他费用按照自定义的变量(例如产品毛重)分摊。并且公共材料指定了分配范围,分配范围的计算规则是仅在领用过该材料的产品范围内分摊。
[0071] 具体信息如下:
[0072] 1.待分摊的公共费用信息列表
[0073]会计期间 成本中心 费用类型 费用编码 金额(元)
201909 生产部1 材料费用 M01 100.00
201909 生产部1 材料费用 M02 100.00
201909 生产部1 制造费用 C01 200.00
201909 生产部1 其他费用 Q01 1.00
[0074] 表1公共费用信息表
[0075] 2.分摊范围表
[0076] 在配置文件中预设公共费用的分摊规则,配置文件定义如下的格式:
[0077]
[0078]
[0079] 分摊规则配置文件
[0080] 根据预定义的分配规则,在配置文件中设置公共费用的分配公式为:
[0081] 公共材料按照产品产量分摊
[0082] 制造费用按照实际工时分摊
[0083] 其他费用按照产品毛重分摊
[0084] 在配置文件中,设置公共费用的分摊范围为:
[0085] 公共材料M01的分摊范围是产品A、产品B、产品C
[0086] 公共材料M02的分摊范围是产品B
[0087] 制造费用C01的分摊范围是产品A、产品B、产品C
[0088] 其他费用Q01的分摊范围是产品A、产品B、产品C、产品D、产品E
[0089] 根据预定义的分配规则,公共材料M01被产品A、B、C领用过,所以M01的分摊范围包括A、B、C;公共材料M02只被产品B领用过,所以M02的分摊范围是B。制造费用C01的分摊范围是产品A、B、C。其他费用的分摊范围是此成本中心下的所有订单(包括了A、B、C、D、E)。由此得到下表中每项公共费用的分摊范围:
[0090]
[0091] 表2分摊范围表
[0092] 3.成本对象权重列表
[0093] 该生产成本中心下所有的成本对象的产量、实际工时和毛重信息如下表所示。在分摊计算时根据这些产量、实际工时和产品毛重信息,计算出每个成本对象的权重,作为分摊公共费用的依据。
[0094]
[0095]
[0096] 表3成本对象权重列表
[0097] 4.第一次计算后的分配结果表
[0098] 根据表1、表2和表3的数据,将3张表进行关联,可以计算出每个成本对象分摊到的成本如下表所示。
[0099]
[0100]
[0101] 表4第一次计算后的分配结果表
[0102] 5.待处理差异列表
[0103] 将第一次计算后的分配结果表(表4)按照成本中心汇总,与表1中的待分摊的成本中心目标金额比较,得到待处理的差异列表如下。
[0104]
[0105] 表5待处理差异列表
[0106] 6.尾差分摊后的分配结果表
[0107] 将第一次计算结果表中的每个成本对象分配到的费用按照截位损失由大到小排序,待处理差异列表中的尾差依次分摊到截位损失较大的成本对象上,最终的分摊结果如下表所示。
[0108]
[0109]
[0110] 表6尾差分摊后的分配结果表
[0111] 其中,表4、表6物理上为同一张表,为了简化说明,在表6中,分到的原始金额没有变化,所以未示出。为了便于比对截取后金额在尾差计算前后的变化,将尾差计算前后的截取后金额分别示出,但在表的存储中,仅保存截取后金额。
[0112] 在公共费用分摊之前,预先定义好分摊规则,包括公共费用的分摊方式和分摊范围(如“分摊规则配置文件”);用户发送公共费用分摊指令之后,成本计算系统首先根据预设的分摊规则,计算得到“分摊范围表”(表2),根据预设的分摊方法计算出各项公共费用对于每个成本对象的分摊权重(表3);然后根据计算出的公共费用的分摊范围(表2)、每个成本对象的权重(表3)以及成本中心的待分摊费用(表1),计算出每个成本对象分摊到的原始金额、截取后金额和截位损失金额(表4);将成本对象分摊到的“截取后金额”按照成本中心和费用ID分组汇总,并与成本中心的待分摊金额(表1)做比较,计算出待处理差异列表和待承担尾差的目标成本对象条目数n;最后,按照每个成本对象的截位损失金额由大到小排序,依次选取符合目标成本对象条目的前n位成本对象,每个成本对象承担0.01的差异。
[0113] 上面具体的例子中,成本中心仅有4项公共费用和5张订单,事实上在实际的制造型企业中,每个成本中心每月发生的公共材料数量级可能有数百甚至数千种,在制的生产订单也会有上千甚至上万个,根据传统的分摊方法,逐一对每项公共费用分摊,不但耗时较长,尾差分摊的准确性也不够。采用本发明提供的方法,可以一次性对公共费用进行批量的分摊计算,不但提升了计算效率,同时运用舍位平衡算法处理尾差,还提高了分摊结果的准确度。
[0114] 基于本发明的分摊装置和算法,如果增加了新的分摊方法,仅需要修改分摊范围和权重计算的小部分代码即可。例如,假设用户需要增加一种新的分摊方法,分摊规则是“按照产品单位成本×完工数量”分摊某个成本中心的公共材料,那么我们仅需要修改成本对象权重计算的小部分逻辑,将成本对象对应的产品单位成本和完工数量统计上即可。这样大大减少了代码的维护量,降低了劳动成本。
[0115] 需要指出的是,以上实施例是对本发明的说明,本发明的保护范围不受限于这些实施例。在不冲突的情况下,本领域技术人员可组合实施例的特点来实施本发明。