AX中四种库存ABC分析法原理研究

 库存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

时间: 2024-10-14 06:36:11

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

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

C++中四种类型转换符的总结 一.reinterpret_cast用法:reinpreter_cast<type-id> (expression)    reinterpret_cast操作符修改了操作数类型,但仅仅是重新解释了给出的对象的比特模型而没有进行二进制转换,即二进制值没有变.例如: int n=9; double d= reinterpret_cast< double > (n); 在进行计算以后, d 包含无用值. 这是因为 reinterpret_cast 仅仅是复

android在代码中四种设置控件背景颜色的方法(包括RGB)

转载请注明出处: http://blog.csdn.net/fth826595345/article/details/9208771  TextView tText=(TextView) findViewById(R.id.textv_name); //第1种: tText.setTextColor(android.graphics.Color.RED);//系统自带的颜色类 // 第2种: tText.setTextColor(0xffff00ff);//0xffff00ff是int类型的数据

Linux中四种进程或线程同步互斥控制方法

原文地址:http://blog.itpub.net/10697500/viewspace-612045/ 一.Linux中 四种进程或线程同步互斥的控制方法: 1.临界区:通过对多线程的串行化来访问公共资源或一段代码,速度快,适合控制数据访问. 2.互斥量:为协调共同对一个共享资源的单独访问而设计的. 3.信号量:为控制一个具有有限数量用户资源而设计. 4.事 件:用来通知线程有一些事件已发生,从而启动后继任务的开始. 二.临界区(Critical Section) 保证在某一时刻只有一个线程

jsp中四种范围的使用

///////////////////////////jsp中四种范围中的值的获取////////////////////////////////在pageContext,request,session,application四种范围中设置setAttribute()时:1.pageContext:pageContext.setAttribute(),只能在其本页面中取得值,pageContext.getAttribute() 2.request:request.setAttribute(),在

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

css样式表中四种属性选择器1> 简易属性 tag[class]{ font-weight:bold } It will affect all tag with any class. e.g. <h2 class="old" > or <h2 class="new"> 2>精确属性值 a[href="http://www.cnblogs.cn"][title="textTitle"]{fon

Android中四种OnClick事件的写法

package com.example.dailphone; import android.support.v7.app.ActionBarActivity; import android.support.v7.app.ActionBar; import android.support.v4.app.Fragment; import android.text.TextUtils; import android.content.Intent; import android.net.Uri; imp

java中四种引用类型

java中四种引用类型  今天看代码,里面有一个类java.lang.ref.SoftReference把小弟弄神了,试想一下,接触java已经有3年了哇,连lang包下面的类都不了解,怎么混.后来在网上查资料,感觉收获颇多,现记录如下. 对象的强.软.弱和虚引用 在JDK 1.2以前的版本中,若一个对象不被任何变量引用,那么程序就无法再使用这个对象.也就是说,只有对象处于可触及(reachable)状态,程序才能使用它.从JDK 1.2版本开始,把对象的引用分为4种级别,从而使程序能更加灵活地

JSP中四种传递参数的方法

jsp中四种传递参数的方法,我觉得总结一下,挺好的,以备后用! 1.form表单 2.request.setAttribute();和request.getAttribute(); 3.超链接:<a herf="index.jsp"?a=a&b=b&c=c>name</a> 1.form表单 form.jsp: <%@page contentType="text/html; charset=GB2312"%> &l

JavaScript中四种不同的属性检测方式比较

JavaScript中四种不同的属性检测方式比较 1. 用in方法 var o = {x:1}; "x" in o; //true "y" in o; //false "toString" in o; //true,继承属性可以被检测到 "toString" in Object.prototype; //true,不可枚举的属性可以被检测到 2. hasOwnProperty()方法 var o = {x:1}; o.hasO