系统预置四种折旧方法
1. 平均年限法--也称“直线法”。是按年限或期间把资产价值的转移平均分摊到每一时间段内的一种折旧方法。
2. 双倍余额递减法--每年第一期,重新计算年折旧额,再将年折旧额平摊的年内各期,尾数滚入下一年,最终滚入最后一年最后一期间。。
3. 年数总和法--每年第一期,重新计算年折旧额,再将年折旧额平摊的年内各期,尾数滚入下一年,最终滚入最后一年最后一期间。
4. 工作量法--按实际工作量计提固定资产折旧额的一种方法。一般是按固定资产所能工作的时数平均计算折旧额。实质上,工作量法是平均年限法的补充和延伸。
1,2,3三种折旧方法,涵盖了大部分客户的折旧需求,不能满足需求的客户,也基本可以通过工作量法来实现,然后有些特殊的折旧方法终究无法实现,应客户需求,特别整理出自定义折旧的二开文档,帮助客户实现自定义折旧,下面以一种客户应用场景详细说明一下自定义折旧的二次开发方法
客户需求示例:本期折旧额 = (原值-残值)*年折旧率/当年天数 *当月天数
BOSIDE扩展元数据
扩展资产卡片(单据),找到折旧方法,并在其中增加第五种折旧方法。
二开插件的编写
1. 打开VS2012,新建一个程序集,取名DeprPlugin(可自定义名称)
2. 添加以下引用,并在类中添加相应的Using
3. 代码编写如下-继承抽象类AbstractDeprPlugIn,并重写其中的方法,对本期折旧额(DclDepr)进行自定义折旧即可,示例如下
4.DeprEntity,各字段属性含义如下
卡片编码 StrNumber 货主组织 LngOwnerOrgID 资产类型 IntAssetType 卡片内码 LngAlterId 会计政策ID LngAcctPolicyId 剩余未折旧金额 DclDeprRemain 当前年 IntCurYear 当前期间 IntCurPeriod 当前期间天数 IntCurPeriodDays 当前年天数 IntCurYearDays 是否最后一期 IsLastPeriod 卡片当前状态 StrAssetCurStatus 卡片数量 DclQuantity 原值 DclOrgVal 减值准备 DclAccumDeValue 累计折旧 DclAccumDepr 预计残值 DclResidualValue 前一期间累计折旧 DclPreAccumDepr 预计折旧期间数 IntLifePeriods 已折旧期间数据 IntDeprPeriods 折旧方法 IntDeprMethod 折旧方法描述 StrFormulaContent 会计日历期间数 IntPeriodCount 预计折旧年数 DclLifeYear 剩余折旧年数 DclRemainYear 本期折旧金额 DclDepr 本期折旧率 DclDeprRate
二开插件的注册
打开固定资产参数设置,勾选自定义折旧插件,并填写插件内容,
格式为:命名空间.类名,插件名称
如:
进一步扩展:
deprEntity可能会无法满足所有二开需求,那就可以通过以下示例,去得到自己想要的数据(需求:希望卡片第一年折旧40%,第二年折旧20%...)
推荐阅读