库存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. FFT模板

    我终于下定决心学习FFT了. orzCHX,得出模板: #include<cstdio> #include<cctype> #include<queue> #inc ...

  2. u盘文件系统故障的修复方法

    比如U盘挂载的文件系统是/dev/sda1,且文件系统有故障(FAT: Filesystem error) 修复U盘文件系统故障 sudo dosfsck -v -a /dev/sda1

  3. Html - Iframe

    父页面调用子页面 //用这个对象调用子页面的函数或者dom var myiframe = $("#right_iframe")[0].contentWindow; 子页面调用父页面 ...

  4. linux下六大IPC机制【转】

    转自http://blog.sina.com.cn/s/blog_587c016a0100nfeq.html linux下进程间通信IPC的几种主要手段简介: 管道(Pipe)及有名管道(named ...

  5. JavaScript系列:函数 自执行 表达式 声明 定义

    可用方式 (function($) {})(jQuery); !function( $ ){}(jQuery); +function( $ ){}(jQuery); -function( $ ){}( ...

  6. Wikipedia : OIT history

    http://en.wikipedia.org/wiki/Order-independent_transparency Order-independent transparency From Wiki ...

  7. PHP 表单添加隐藏 Token 阻止外部提交

    Token 法:通过一个隐藏可变的 Token 加大攻击的难度,每次提交都需要和服务器校对,如果不通过,则为外部提交(也可以通过 session + 隐藏域来验证). 代码: form.php < ...

  8. Unity4.5版本DLL库名字问题

      背景 在unity4.2版本中可以在Android中使用的so链接库,在Unity4.5中使不了-- [DllImport("libclient.so", EntryPoint ...

  9. DirectX 常用选项(转)

    内存池表面和其它一些Direct3D资源被放在多种内存池中.内存池的种类由D3DPOOL枚举类型的一个成员来指定.可用到的内存池有下列几种:D3DPOOL_DEFAULT--表示Direct3D将根据 ...

  10. linux里的进程简介

    /sbin/init         内核启动的第一个用户级进程,引导用户空间服务    [kthreadd]         内核线程管理[migration/0]      用于进程在不同的CPU ...