库存ABC分类,简单的说就是抓大放小,是为了让我们抓住重点,用最大精力来管理最重要的物料,而对于不太重要的物料则可以用较少的精力进行管理。它和我们平常说的八二法则有异曲同工之妙。
  既然要应用库存ABC方法,那么我们首先要决定,哪些物料是最重要的A类,哪些物料是一般重要的B类,哪些物料是最不重要的C类。
  最简单的办法自然就是在物料主表中直接把ABC填上去,然后在日常业务中,我们随时都可以看到这是哪一类物料,从而决定了我们对其采取的管理方式(最重要的一个不能差,最不重要的,差一点半点可以容忍)。为了从不同的角度考察物料的重要性,AX提供了4种方法,分别是:
  1)价值 value:基于当前库存On hand
  2)毛利 margin :基于指定时段内的库存交易
  3)收入 revenue:基于指定时段内的库存交易
  4)运营成本 carrying cost:基于指定时段内的库存交易和所设置的内部利息
  除了手工填ABC的分类外,我们还可以使用AX提供的库存ABC计算工具,让我们从上述4个角度分别计算相应的ABC分类是多少,在计算之前,我们可以指定ABC在上述4种方式中所占的比例各是多少。
  我们可以先使用报表>ABC分类来模拟ABC分类,检查确认可行后,再定期运行定期事项>ABC分类的批处理,让系统自动更新物料表中的ABC设置。
AX中四种库存ABC分析法原理研究
AX中四种库存ABC分析法原理研究
系统对于每个物料位于何种分类的计算方法是:
首先根据金额大小倒排,从最大的物料开始;
其次计算到目前为止的累计金额占总金额的百分比X,注意,每个物料都要取上一笔的分类比例(如果是第一笔,那么本次计算比例为0),与ABC分类比例相比;
如果X<A,则该物料即为A类;
如果A<X<A+B;则该物料为B类;
如果X>A+B,则该物料为C类
物料 每种物料的原始价值比例 累计百分比X A A+B 结论
2006 0.423728814 0 0.3 0.66 A
2014 0.224576271 0.423728814 0.3 0.66 B
2013 0.224576271 0.648305085 0.3 0.66 B
1011 0.084745763 0.872881356 0.3 0.66 C
1005 0.042372881 0.957627119 0.3 0.66 C
下面我们来看一下,系统到底是如何根据这4种方法取出金额的,为了便于说明,截取部分代码显示如下:
1)价值(财务成本)
这是最广为人知的一种方法。我们可以看到,系统计算的是财务成本。
Class:InventABC_InventValue
void sumUpValue(){
InventTable inventTable;
Amount amount;
...
amount= this.calcItem(inventTable);
this.saveAmount(inventTable,amount);
...
}
=>Class :inventSumFinancialItem
protected void setValueQty(){
...
value = inventSum.postedValue;
...
value -= inventTrans.costAmountPosted;
...
value -= inventSettlement.costAmountAdjustment;
}
2)毛利=发票不含税金额-本笔交易成本
Class:InventABC_ContributionMargin
void sumUpValue(){
CustTransStatistics transStatistics;
...
this.saveAmount(inventTable,transStatistics.contributionMarginMST());
...
}
=>Table:CustInvoiceTrans
display SalesContributionMarginMST contributionMarginMST(){
return this.lineAmountMST - (-this.inventCostAmount());
}
3)收入=发票金额
Class:InventABC_Revenue
void sumUpValue(){
CustTransStatistics transStatistics;
...
this.saveAmount(inventTable,transStatistics.lineAmountMST());
...
}
=>Class:CustVendTransStatistics,方法lineAmountMST()
=>Table:CustInvoiceTrans,字段lineAmountMST

4)运营成本=库存成本+内部利息(在计算前设置,按一年365天计算)
InventABC_CarrCost
void sumUpValue(){
...
amount= this.calcItem(inventTable);
this.saveAmount(inventTable,amount)
...
}
Amount calcItem(InventTable inventTable){
...
costValue += this.calcInterest(inventValue,lastDate,toDate);
...}

http://blog.sina.com.cn/s/blog_4a91917e010006yu.html

AX中四种库存ABC分析法原理研究的更多相关文章

  1. [转]C++中四种类型转换符的总结

    C++中四种类型转换符的总结 一.reinterpret_cast用法:reinpreter_cast<type-id> (expression)    reinterpret_cast操 ...

  2. 【转载】mysql 四种隔离级别分析

    sql标准中,有四种隔离级别,各个离级别都有各自的规则,隔离级别越低,允许并发越大,消耗的资源越少,但是越不安全,下面就mysql数据库来分别介绍一下(每个存储引擎实施的隔离级别会有稍微的不同)mys ...

  3. java 解决Hash(散列)冲突的四种方法--开放定址法(线性探测,二次探测,伪随机探测)、链地址法、再哈希、建立公共溢出区

    java 解决Hash(散列)冲突的四种方法--开放定址法(线性探测,二次探测,伪随机探测).链地址法.再哈希.建立公共溢出区 标签: hashmaphashmap冲突解决冲突的方法冲突 2016-0 ...

  4. Java中四种引用:强、软、弱、虚引用

    这篇文章非常棒:http://alinazh.blog.51cto.com/5459270/1276173 Java中四种引用:强.软.弱.虚引用 1.1.强引用当我们使用new 这个关键字创建对象时 ...

  5. jsp中四种传递参数的方法

    jsp中四种传递参数的方法如下: 1.form表单 2.request.setAttribute();和request.getAttribute(); 3.超链接:<a herf="i ...

  6. java中四种引用类型

    java中四种引用类型  今天看代码,里面有一个类java.lang.ref.SoftReference把小弟弄神了,试想一下,接触java已经有3年了哇,连lang包下面的类都不了解,怎么混.后来在 ...

  7. css样式表中四种属性选择器

    学习此连接的总结http://developer.51cto.com/art/201009/226158.htmcss样式表中四种属性选择器1> 简易属性 tag[class]{ font-we ...

  8. c++ --> c++中四种类型转换方式

    c++中四种类型转换方式   c风格转换的格式很简单(TYPE)EXPRESSION,但是c风格的类型转换有不少缺点, 1)它可以在任意类型之间转换,比如你可以把一个指向const对象的指针转换成指向 ...

  9. C#中四种常用集合的运用(非常重要)

    C#中4个常用的集合 1.ArrayList ArrayList类似于数组,有人也称它为数组列表.ArrayList可以动态维护,而数组的容量是固定的. 它的索引会根据程序的扩展而重新进行分配和调整. ...

随机推荐

  1. BZOJ3734 : [Ontak2013]Miny

    将所有炸弹按坐标排序 x<-y连边表示x爆炸了y也会爆炸 如果是DAG则直接拓扑排序+DP求出每个点出发能走到的最左端和最右端的点 有环则SCC缩点后再拓扑 用线段树优化建图的过程 边数$O(n ...

  2. TYVJ P1068 STR Label:KMP匹配 不懂

    描述 给你两个串A,B,可以得到从A的任意位开始的子串和B匹配的长度.给定K个询问,对于每个询问给定一个x,求出匹配长度恰为x的位置有多少个.N,M,K<=200000 输入格式 第一行三个数  ...

  3. COJ1012 WZJ的数据结构(十二)

    今天突然想写个树套树爽一爽(1810ms) 写的是树状数组套线段树(动态开节点) #include<cstdio> #include<cctype> #include<c ...

  4. Jbpm4.4+hibernate3.5.4+spring3.0.4+struts2.1.8整合例子(附完整的请假流程例子,jbpm基础,常见问题解决)

    Jbpm4.4+hibernate3.5.4+spring3.0.4+struts2.1.8 整合例子(附完整的请假流程例子). 1.jbpm4.4 测试环境搭建 2.Jbpm4.4+hibernat ...

  5. 8.20 css样式表:样式分类,选择器。样式属性,

    样式表分类: 1.内联样式表, 和html联合显示,例:<p style="font-size:14px;">内联样式表</p> 2.内嵌样式表 作为一个独 ...

  6. spark Mllib SVM实例

    Mllib SVM实例 1.数据 数据格式为:标签, 特征1 特征2 特征3…… 0 128:51 129:159 130:253 131:159 132:50 155:48 156:238 157: ...

  7. opengl绘制正弦曲线

    利用opengl绘制正弦曲线 ,见代码: #include <windows.h> //#include <GLUT/glut.h> #include <GL/glut. ...

  8. excel表中内容如何反排列

    如题,我的意思是,比如excel表中有如下内容: 1.红色 2.黄色 3.蓝色 现在我需要一次性全部反向排列,变成 3.蓝色 2.黄色 1.红色 这不是纯数字排序,因为我序号不是自然数的等差数列,其中 ...

  9. mysql的事务处理与锁表

    数据库的事务处理可以保证一组处理结果的正确性.mysql中只有INNODB和BDB引擎的数据表才支持事务处理,对于不支持事务的MyISAM引擎数据库可以使用表锁定的方法来实现相同的功能. mysql的 ...

  10. Go项目的目录结构说明

    一.项目目录结构 GoPath    /bin    /pkg    /src project_1      project_2 ...... project_n GoPath : 相当于donet下 ...