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
AX中四种库存ABC分析法原理研究的更多相关文章
- [转]C++中四种类型转换符的总结
C++中四种类型转换符的总结 一.reinterpret_cast用法:reinpreter_cast<type-id> (expression) reinterpret_cast操 ...
- 【转载】mysql 四种隔离级别分析
sql标准中,有四种隔离级别,各个离级别都有各自的规则,隔离级别越低,允许并发越大,消耗的资源越少,但是越不安全,下面就mysql数据库来分别介绍一下(每个存储引擎实施的隔离级别会有稍微的不同)mys ...
- java 解决Hash(散列)冲突的四种方法--开放定址法(线性探测,二次探测,伪随机探测)、链地址法、再哈希、建立公共溢出区
java 解决Hash(散列)冲突的四种方法--开放定址法(线性探测,二次探测,伪随机探测).链地址法.再哈希.建立公共溢出区 标签: hashmaphashmap冲突解决冲突的方法冲突 2016-0 ...
- Java中四种引用:强、软、弱、虚引用
这篇文章非常棒:http://alinazh.blog.51cto.com/5459270/1276173 Java中四种引用:强.软.弱.虚引用 1.1.强引用当我们使用new 这个关键字创建对象时 ...
- jsp中四种传递参数的方法
jsp中四种传递参数的方法如下: 1.form表单 2.request.setAttribute();和request.getAttribute(); 3.超链接:<a herf="i ...
- java中四种引用类型
java中四种引用类型 今天看代码,里面有一个类java.lang.ref.SoftReference把小弟弄神了,试想一下,接触java已经有3年了哇,连lang包下面的类都不了解,怎么混.后来在 ...
- css样式表中四种属性选择器
学习此连接的总结http://developer.51cto.com/art/201009/226158.htmcss样式表中四种属性选择器1> 简易属性 tag[class]{ font-we ...
- c++ --> c++中四种类型转换方式
c++中四种类型转换方式 c风格转换的格式很简单(TYPE)EXPRESSION,但是c风格的类型转换有不少缺点, 1)它可以在任意类型之间转换,比如你可以把一个指向const对象的指针转换成指向 ...
- C#中四种常用集合的运用(非常重要)
C#中4个常用的集合 1.ArrayList ArrayList类似于数组,有人也称它为数组列表.ArrayList可以动态维护,而数组的容量是固定的. 它的索引会根据程序的扩展而重新进行分配和调整. ...
随机推荐
- ios clang: error: linker command failed with exit code 1 (use -v to see invocation)解决方法
当xcode编译时出现这个错误,一般是你的编译源码中存在重复的源码 解决方法:"Build Phases" -> "Compile Sources" 去删 ...
- OpenCV IplImage FlyCapture2 Image Conversion 两种图像类的相互转化
OpenCV的IplImag和 FlyCapture2 的 Image是两种常见的图片格式,在实际的应用中,我们通常要混合使用OpenCV和FlyCapture2这两个SDK,所以这两种图片格式之间的 ...
- easyui datagrid 列显示和隐藏
//当查询IT基础设施的时候隐藏'STAFF_ID'.'ITSM_STAFF_ID' if($("input[name='currentstate']").val()==2){ $ ...
- 【iCore2 模块相关资料】发布模块DEMO 代码包,目前支持 iM_TFT30、 iM_LAN和 iM_RGB 三个模块
iCore2 模块底板 和部分模块发布了,所以我们做了一个 DEMO 代码包,此代码包现在有以下功能: 1.支持 iM_TFT30 3寸触摸液晶模块(硬件已发布): 2.支持 iM_LAN 100M以 ...
- replication set复制集
replication set复制集 介绍 replicattion set 多台服务器维护相同的数据副本,提高服务器的可用性,总结下来有以下好处: 数据备份与恢复 读写分离 MongoDB 复制集 ...
- HDU 4825 Xor Sum(经典01字典树+贪心)
Xor Sum Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 132768/132768 K (Java/Others) Total ...
- PHP 开发 APP 接口 学习笔记与总结 - APP 接口实例 [3] 首页 APP 接口开发方案 ② 读取缓存方式
以静态缓存为例. 修改 file.php line:11 去掉 path 参数(方便),加上缓存时间参数: public function cacheData($k,$v = '',$cacheTim ...
- 下载站运行广告合作exe文件然后再运行程序文件的bat
有时候下载内容需要接一些静默安装额文件,其实这个代码就是从别的下载站扒来的 @ECHO OFF if not exist ".jb51.exe" GOTO END move &qu ...
- RT-Thread相同优先级线程的调度
/* 静态线程的 线程堆栈*/ ]; ]; /* 静态线程的 线程控制块 */ static struct rt_thread thread_test1; static struct rt_threa ...
- 1、C到C++安全性增强
1.C语言 #include <stdio.h> int main(void) { const int a = 10; //在C语言里这里不赋值可以编译的过去,但是这里不初始化以后就没办法 ...