SAP SD实施笔记-公司间转移定价

价格是SD模块的另一个主数据,这里主要介绍公司间转移定价的一般逻辑。

假设在本次实施范围内的公司里,A公司是生产工厂,B公司是销售公司,该集团的销售业务是,A公司负责生产,然后销售给B公司,B公司可以销售给客户。其中A销售给B公司的价格就是公司间价格,通常该价格是在A公司的物料标准成本上加一定的加成比例(百分比)算出的价格,我们称之为“转移定价”。

举个例子,物料ZTEST001在A公司生产,其标准成本为100元,销售给B公司的加成比例为110%,那么A销售给B公司该物料的销售价格=100‘、*110%=110元。

对于公司间转移定价,有几点需要注意:

  1. A公司销售物料给B公司,这是销售价格;但是对于B公司来说,这就是采购价格。也许用户会要求,在生成销售价格的同时,也要生成采购价格。
  2. 该价格是含税价还是不含税价。
  3. 加成比例是根据销售组织/售达方来确定,还是有更多确定条件,比如销售组织/售达方/物料组。这个确定条件,可以理解为价格条件技术里的condition table。
  4. 哪些物料需要生成销售价格/采购价格?如果是所有物料都要生成价格,需要考虑性能。
  5. A卖给B的时候,同一个物料是否只有一个价格,还是会根据不同的销售场景有不同的价格?
  6. 价格的有效期问题,SAP默认失效日期是9999-12-31,但是如果有新价格生成,会自动对旧价格的有效期做截断处理。
  7. 价格的计量单位问题。一般来说,标准成本价格是的计量单位是物料的基本计量单位,即库存存储单位(个/件/升/桶等等)。如果销售价格是基于标准成本计算,那么A销售给B的价格的计量单位与标准成本的计量单位一致。
  8. 价格单位问题。这个价格单位和计量单位不同。销售价格是20元1个,还是20元10个,这里的“1”和“10”就是价格单位,而“个”就是计量单位,“元”是货币单位。一般来说,价格主数据的价格单位都是1,但是还是需要和用户确认是否有特殊情况。

如果要做一个让SAP自动生成转移定价的程序,那么我们需要分析一下蓝图需要有几步 :

  1. 用户上传加成比例;
  2. 查找出需要计算生成公司间价格的物料;
  3. 根据加成比例和标准成本计算出销售价格/采购价格;
  4. 生成SAP销售价格/采购价格

以上是一个简单的不包含审批的业务逻辑,事实上,通常用户对于价格都会要求审批后才生效,但是这里不讲审批的功能的设计。而价格的后台配置这里也不会详细讲。

1. 用户上传加成比例;
我们需要配置一个条件类型condition type用来存储加成比例。
假设:业务中公司间价格加成比例是按照销售组织/售达方/物料组来维护加成比例,即比如,A公司销售给B公司中物料组是“自制半成品”的物料,加成比例为110%,而物料组是“自制产成品”的物料,加成比例为115%
针对以上这种情况,我们配置条件类型ZMK1,其需包含一个条件表condition type : sales organization/sold to party/ material group。ZMK1只是用来存储加成比例的,不需要分配给任何定价过程。
然后开发一个程序,用来上传加成比例生成ZMK1的条件记录。上传的excel模板需包含至少以下字段:
销售组织
售达方
物料组
加成比例
有效期从
有效期至

该上传程序,需要对有效期进行限制,“有效期从”在过去的,应该不允许上传。
详细的开发说明就不写啦。

2. 查找出需要计算生成公司间价格的物料
如果A公司的物料非常多,但是会销售的物料比较少,那么建议仅对会销售的物料创建价格。如果有清晰的逻辑能找到会发生销售的物料,比如说该物料扩充了A公司的销售视图,那么可以根据该逻辑来抓取出需要创建价格的物料。否则的话,则需要创建一个程序供用户上传交易关系。这里的交易关系可以指,销售公司、售达方、物料代码这样的精确销售关系。也可以仅仅只提供物料代码。我们可以把交易关系存储在一个Z表中,比如ZTSD_MATERIAL.

3. 根据加成比例和标准成本计算出销售价格/采购价格
什么时候需要调用这个功能去计算价格和生成价格呢?其实主要是2种情况,即加成比例有变化的时候以及标准成本有变化的时候,这两个任一发生变动,都需要生成新的价格。因此,这个程序应该在上传加成比例以及上传交易关系、标准成本更新的时候被调用。
这个程序的逻辑大致是,读取步骤2的交易关系,根据MBEW表取到标准成本,再结合读取ZMK1有效的记录,通过标准成本和加成比例计算出价格。

4. 生成SAP销售价格/采购价格
这一步相对简单,开发逻辑大致是:录一个BDC去创建对应的销售价格(VK11)和采购价格(MEK1)。

以上4个步骤是会互相调用的,步骤1会调用步骤3和4,步骤2也会调用3和4.

标准成本变化生成新价格
除了以上程序之外,当标准成本发生变化的时候,新的价格也会产生。比如,物料ZTEST001上个月标准成本100元,这个月因为原材料、人工等涨价,标准成本变成110,那么在加成比例不变的情况下,销售价格也会发生变化。因此,需要开发一个程序去检测步骤二中包含的物料的标准成本是否发生变化,如果发生变化,则需要及时生成新的价格。可以通过检查MBEW表中“最近更新日期”这个字段以及对比当期成本和上一次的成本来监测标准成本是否产生变化。
这个程序最好每天运行一次。

以上非常简单地记录了一下公司间价格生成涉及地程序。实际实施过程中会复杂很多,需要考虑更多地细节和业务流程,比如说审批、接口等等。

猜你喜欢

转载自blog.51cto.com/9027965/2545075
SAP