AKM项目里的工厂代码设计,很有文章,值得总结一番。
客户的实体背景如下:
客户在广州南沙有一家化工厂,负责生产化工成品;在广州科学城有一个研发中心,负责新产品的研发 ;在番禺和上海各有一家外租仓库,用于存储危险品和成品,就近发货给客户。在香港有一家贸易公司,负责将广州工厂生产的产品销售给亚洲客户。
对于以上各个实体,项目上经过讨论定义了如下的工厂代码:
Plant1: 对应客户在南沙的化工厂;
Plant2: 对应于客户在广州科学城的研发中心;
Plant3: 对应于客户在番禺的外租仓库;
Plant4: 对应于客户在上海的外租仓库;
Plant5: 对应于客户在香港的贸易公司里的 trading业务 ;
Plant6: 对应于客户在香港的贸易公司里的 Headoffice业务;
对于Plant1, 毫无疑问,因为南沙化工厂是一家制造实体,有生产线,库房,采购和财务等各个业务;
对于Plant2, 主要原因是,该研发中心是一个独立实体,距离南沙工厂距离较远,可能会根据也需要采购其自己的goods/service(服务等);
对于Plant3 & Plant4, 不同于很多其他的SAP项目,没有将2个外租仓库定义为storage location, 加上其距离南沙工厂也比较远,需要直接从这2个外租仓库出货给客户;并且外租仓库之间与南沙工厂之间有货物转移,根据客户的core model, 也将这2个仓库定义成工厂了(Plant 3& Plant 4)。
对于Plant5和Plant 6, 最初设计对于香港贸易公司,只定义一个Plant code。但是,根据客户的global team的建议以及 core model, 为这家贸易公司定义了2个工厂代码,一个是专门用于管理其成品贸易业务;一家用于作为一个head office, 用于支持其goods/sevice的采购 ,比如采购服务,固定资产等等。
SAP 项目实施过程中,工厂代码设计很有讲究:工厂代码不仅仅对应实际存在的制造工厂,而且还对应企业里的统一的财务中心,采购中心,销售公司,甚至是外租的仓库等等各种实体,同时还会因为特殊流程方案设计的需要,定义若干逻辑工厂或者虚拟工厂。