
订单交货日期的计算_v1.1.pdf
12页SD 中交货日期的计算中交货日期的计算 一、一、SO 中交货日期的计算的必要性中交货日期的计算的必要性 当客户传递过来采购要求,销售部人员需要在系统中创建一张 SO 来记录用户的需求在此 时,对销售部门的人员来说,非常重要的两点是:客户要求的交货数量是否能够满足;另外 一点是什么时候能够将货物送达到客户; 如果做过 MM, 就应该知道交货准时性是评价供应商的能力很重要的一个标准 因此交货日 期的确定在 SO 中是很重要的一部分 二、二、SO 中计算交货日期的逻辑中计算交货日期的逻辑 我们来看一张图片,这张图片已经相当清晰地写明了 SAP 中 SO 交货日期的计算逻辑: (来源: SAP) 最上面的是时间点, 如 order date, material availability date, transportation planning date, loading date, etc. 下面的那些是时间段, 主要有 transit time, loading time, pick/pack time,对应中文分别是运输时 间,装货时间,分拣/打包时间; 运输时间:从你的仓库发出后到达客户所需的时间; 装货时间:货物从仓库发出区装上运输工具所需的时间; 分拣/打包时间:从货架上把货物取下来并打包好所需的时间; 系统日期计算逻辑: 1. 系统先用客户需求交货日期-(运输时间+装货时间+分拣/打包时间),就得到 material available date (物料在哪天应该已经备好, 属于可用状态) ; 如果系统认为在 material available date 这边系统能供给货物,则计算完毕,系统同意订单中输入的客户要求交货日期,这叫做 backward scheduling; 2. 如果发生这种情况,在系统倒推计算出物料可用日的那天,没有足够的库存能够交货, 这说明用户需求到货时间无法满足,系统会重新计算,这次是从前向后推:根据物料可用日 +运输时间+装货时间+分拣/打包时间, 得到系统认为的交货日期; 这叫做 forward scheduling; 这种情况下,物料可用日的介绍后面再提及。
三、系统中的相关配置三、系统中的相关配置 1. 在上面提到,系统要知道你定义的三个时间,分别是运输时间,装货时间,分拣/打包时 间;那么,这三个时间跟哪些因素相关? 讲到这里,需要介绍 SD 中用到的两种交货排期的方式: 一种是交货排期(delivery scheduling):指定义跟交货相关的日期,包括装货时间,分拣/打包 时间,在系统中他们的定义跟 shipping point 有关; 另外一种是运输排期(transport scheduling):指定义跟运输相关的日期,主要包括运输的 lead time 和运输时间;关于 lead time,这里应该理解成提前期;运输时间都是跟 route 相关的; 不同的 route,例如走铁路,海运,空运,经过不同的中转城市,则运输时间会不一样; 配置路径如下: In the IMG: Logistics Execution -Shipping -Basic Shipping Functions Scheduling -Delivery Scheduling and Transportation Scheduling - Define Scheduling By Sales Document Type 在此处,根据销售订单类别激活 delivery scheduling 和 transport scheduling; In the IMG: Logistics Execution -Shipping -Basic Shipping Functions Scheduling -Delivery Scheduling and Transportation Scheduling - Define Scheduling by Shipping Point: 在此处,维护跟 shipping point 相关的装货时间,分拣/打包时间; In the IMG: Logistics Execution -Shipping -Basic Shipping Functions-Scheduling -Delivery Scheduling and Transportation Scheduling - Maintain Duration: 在此处,维护跟 route 相关的运输 lead time 和运输时间 注意一点,我上面定义的时间都是以天为单位,这时叫做 daily scheduling, 实际上还可以定 义到小时,此时叫做 precise scheduling; 四、四、 实际案例分析:实际案例分析: 1. 关键数据定义:关键数据定义: 订单类型:OR; 运输时间:7 天; 装货时间:1 天; 分拣/打包时间:1 天; Shipping point: 0110; Route: EX01; 2. 订单创建:订单创建: 注意此处客户要求交货日期为 3 月 30 日 查看 Shipping point 和 Route 注意看上面这张图片,第一行的要求交货日期是手工输进去的,但是由于系统无法满足,所 以产生了第二行的记录,计算出交货期为 4 月 10 日。
详细的日期计算逻辑见下图: 当前时间 3 月 30 日即为为物料可用日期,因为系统中还有 7 个库存3 月 31 日打包完毕, 4 月 1 日装车完毕,但是可以看到 transmit time 为 9 天,不是系统中定义的 7 天这是为什 么呢? 因为在 4 月 1 日到 4 月 10 日期间,有 2 天,4 月 4 日,5 日是周末,系统要将其排 除 我们可以换一个日历来试一下定义一种新的日历 Z1,在此日历里,周一到周日均为工作 日; 将其分配给 route. 我们再来看系统数据 默认当前日期 3 月 30 日为客户要求交货日期 再看看订单的情况 系统建议的交货日期变成了 4 月 8 日,不再考虑周末休息日 附:物料可用日的计算附:物料可用日的计算 销售物料的来源有 3 个,分别是库存,生产订单和从第三方采购 在后台配置处定义检查策略 对物料选择独立需求计划, checking rule 选择 A, 系统在考虑需求/供给时, 会考虑如下因素: 需求:包含销售订单,预留单,交货单,交货通知单; 供给:包含正常库存,质检库存,限制使用库存,采购订单,转储单,生产工单; 补货提前期:不考虑补货提前期; 在此处,不会测试如此多的特殊情况,仅以最常见的集中需求/供给情况进行举例; 新建物料 57-075553,其库存为 0,在系统中下一个销售订单,手工输入的客户要求交货期 为当前日期 3 月 30 日。
系统进行可用性检查,未能产生交货建议日期,因为没有供给数据 1. 现在考虑给物料增加库存,我们来看看会发生什么情况 为物料 57-075553 增加库存 1 EA, 系统给出的计算时间同上例一致,为 4 月 8 日,计算逻辑同上,不再赘述 2. 再给此物料创建生产订单,预计生产完成时间为 4 月 1 日,如下图: 运行 MD04 查看供给/需求情况, 这其中生产订单产生的库存可用日期为 4 月 2 日,因为物料主数据 MRP2 视图中定义收货 处理时间为 1 天 接着再下销售订单,手工输入客户要求交货期为 4 月 8 日,数量为 2,来查看系统的计算情 况; 请看下图: 在这里,可以看到系统建议的交货期已经变成了 4 月 13 日,因为物料可用日不再是当前日 期,而变成了 4 月 2 日,也就是生产订单的库存收货完成后的时间; (4 月 3 日到 4 月 6 日期间为装货日期 1 天+2 天的周末时间) 3. 考虑销售物料从外部采购的情况; PO 中的预计交货日期为 4 月 7 日,我们再来运行 MD04,查看需求/供给情况 如下图: 可以看到采购订单的库存可用日是 4 月 8 日,有 1 天的收货时间。
再来创建销售订单,数量为 3,客户要求交货日期手工输入为 4 月 8 日,我们来看看系统的 计算情况; 仔细看这张图: 如果客户要求一起交货,那就必须在 4 月 17 日那天,这时候物料的可用日为 4 月 8 日 如果客户认为可以分开交货,则可以分别在 4 月 9 日,13 日,17 日这三天分别交货,对应 的物料可用日分别是 4 月 8 日,4 月 2 日,当前日期 3 月 31 日; 作者: firethesky 时间: 2009-3-31 。












