使用 DOM 规则

已完成

DOM 功能允许指定不同类型的规则。 组织可以根据其业务需求定义多项规则。 可为一组位置或单个位置以及特定的产品类别、产品或变型定义规则。

以下部分概述了 Commerce 中支持的规则类型。

最小库存量规则

最小库存量规则用于定义所有不同位置或一组位置中某特定类别的产品或单个产品的最小库存量。

为了举例说明本概念,我们来看以下应用场景:有一个实体店,您的客户上门到该实体店购买产品,但您也希望将该商店作为履行中心来履行订单。 当 DOM 查看该位置(您的零售商店)时,本规则可以弄清楚某特定库存水平。 因此,您需要考虑是否希望所有库存均可用于实现 DOM 目的。

这种应用场景通常不会出现,因为您希望在商店中保留一些库存预留,以便您有充足的存货可直接销售给上门客户。 从这种意义上讲,通过使用最小库存量规则,您可以定义一套规则来帮助预留出上门客户的库存,同时确保 DOM 考虑其他需求,以便履行订单。

履行位置优先级规则

根据履行位置优先级规则,如果其他条件都相同,无论是从距离的角度还是成本的角度而言,DOM 所选择的都将是最适合履行订单的位置。 然而,如果您不想使用该方法,确实会出现某些应用场景。 您可能希望 DOM 按照预设分层方式来定义或派生位置。

例如,通常在季末时,您可能会将零售商店中的商品运回到直销店。 因此,当有产品订单进入时,您希望优先使用您的商店作为履行位置,而不是等待 DOM 选择直销店作为履行位置。 这样,如果商店渠道中有剩余库存,您可能希望 DOM 选择该商店作为首要履行位置。

因此,如果您想根据 DOM 派生履行位置的方式来定义库位的层次结构,可以使用履行位置优先级规则来完成该任务。 您可为某个类别的产品定义该规则,也可以向下深入到特定产品的级别。

部分订单规则

使用部分订单规则,您可以配置某些特定参数,例如,允许部分履行订单或订单行。 因此,根据精确配置,DOM 可能会履行整个订单,或者,当无法从单个位置履行整个订单时,可能会履行部分订单和部分行。

考虑到这一点,假设您的公司希望限制跨多个位置拆分订单履行的情况。 例如,如果订单值低于特定阈值,则跨不同位置拆分订单履行可能不具有成本效益。 启用“禁止通过 DOM 基于订单值或所包含产品拆分订单”功能后,您的组织可以指定订单总阈值或可规避 DOM 中的部分订单规则的产品列表。

脱机履行位置规则

谈及脱机履行位置规则,需要注意的一点是,并非每个位置在全年任何给定时间都可用于履行订单。 通常,您的商店在节假日期间会非常忙碌,无法在履行订单的同时为上门客户提供优质服务。 因此,您可能需要在特定持续时间内使某些特定履行位置脱机,以便 DOM 不会将这些位置视为履行中心。 您可以按日期针对一组位置完成本任务。

最大拒绝次数规则

来看一个理想的案例应用场景:订单进入,DOM 接单,推荐一个位置,将该订单分配到该特定位置,然后该位置即会履行该订单。 本流程基于系统中的数据(如库存可用性信息)运行。 但是,系统级别的库存和实际库存可能并非始终同步。虽然系统确认某特定位置有库存,且 DOM 向该位置分配了订单,但该位置的库存可能并非实际可用。

对于此类应用场景,Commerce Headquarters (HQ) 的 Store Commerce 客户端中已内置一项功能,利用该功能,用户可以拒绝履行 DOM 分配的订单。 订单被拒绝后会返回到池中,然后,DOM 将在下一次运行时再次接受该订单,并将其分配到另一位置。 DOM 引擎知道该位置已拒绝该订单,因此不会再次将该订单分配到同一位置,而是会寻找另一位置。 但是,如果下一个所选位置继续拒绝该订单,则该流程会重复运行,且系统需要一个选项来退出本循环。

最大拒绝次数规则可帮助您定义超时方案或阈值,这样,如果订单或订单行被拒绝的次数达到一定值,DOM 必须将其放入异常队列中。 然后,销售人员可以手动检查订单并确定处理该订单的最佳方式。 销售订单处理和查询工作区提供了一个简单的界面,用户在其中可以找到已拒绝订单的磁贴,以及有关所有销售订单、延迟的行、部分装运的行等方面的概述。

最大距离规则

并非每个位置为了履行订单都采用相同的规模和基础结构设置方式。 例如,您可能有一家小型商店,只能开着一辆小卡车四处去履行订单。 与之相反,您可能有一家大型商店,可以开着更大的卡车外出履行订单。 通常,您的配送中心能够履行不同数量的订单。 因此,在系统中定义某些特定位置或一组位置可在多远的距离范围内履行订单。

例如,小型商店可在 10 英里的范围内履行订单,大型商店可在 50 英里的范围内履行订单,而配送中心没有限制。 在这种应用场景下,您可以使用最大距离规则来定义这些差异。

最大订单数规则

打个同样的比方:并非每个位置都采用相同的设置方式,假设您的一家小型商店一天可以履行 5 个订单,一家大型商店一天可以履行 20 个订单,而配送中心没有限制。 使用最大订单数规则,您可以定义每个位置或一组位置的订单履行容量。 达到给定工作日的容量后,在该特定工作日,DOM 将不再向该位置分配订单。 在下一个工作日,它将开始再次向该位置分配订单,直至达到其最大容量。

对于上述每种规则类型,均可定义多项规则。 您可以选择规则并将其分配给您的履行配置文件,该配置文件将确定 DOM 逻辑的精确计算结果和注意事项。

每次定义规则时,您都可以指定规则是硬性约束规则,还是可在特定应用场景中放宽的规则。 例如,您已在系统中配置了 10 项规则,其中 6 项是硬性约束规则,并且有一批订单(共 100 个)进入系统。 在 DOM 的第一次迭代中,它将尝试应用 10 项规则,同时查找这 100 个订单所在的位置。 由于您有 10 项规则,因此只向一个位置分配了 60 个订单。 对于剩余的 40 个订单,由于规则约束,或者库存不可用,DOM 无法向该位置分配剩余的 40 个订单。

DOM 的第一次迭代结束后,系统会返回到同一实现运行中的第二次迭代,并检查这 10 项规则中有几项不是硬性约束规则(即,可以放宽)。 它发现有 4 项规则可以放宽,这意味着可以暂不考虑这些规则,并且 DOM 会尝试将剩余的 6 项规则应用于这 40 个订单。 约束实际上已经减少,并且可履行的订单数量可能超过 60 个。 对于您定义的每项规则,您都可以指定它是硬性约束规则,还是软性约束规则。

配置 DOM 规则

以下过程介绍了如何配置 DOM 规则。

  1. 转到零售和商业 > 分配的订单管理 > 设置 > 管理规则
  2. 选择新建以开始创建新的 DOM 规则。
  3. 在打开的选择要创建的记录类型页面中,在 DOM 规则字段中选择您要创建的规则类型。
  4. 名称描述字段中为规则输入名称和描述。
  5. 设置硬性约束复选框以定义是否必须始终考虑该规则。 对于部分订单数脱机履行位置允许的最大距离规则类型,本选项默认设置为
  6. 公司字段中默认填写您所就职于的法人。
  7. 有效期部分的开始日期结束日期字段中选择相应日期。
  8. 选择保存
  9. 选项卡上,选择添加,然后根据所选规则类型填写以下信息:
    • 最大订单数
      • 履行组下拉字段中选择履行组,或在履行位置下拉字段中选择仓库。
      • 最大订单数必填字段中输入一个值。
    • 最大拒绝次数 - 在本字段中输入一个数字。
    • 部分订单数
      • 最大履行位置数字段中选择 1-5 之间的数字或选择任意数字
      • 配置履行部分订单?复选框。
      • 配置履行部分行?复选框。
    • 脱机履行位置 - 在履行组字段中选择履行组或在履行位置字段中选择您想针对 DOM 将其设置为脱机状态的仓库。
    • 允许的最大距离
      • 履行组下拉字段中选择履行组,或在履行位置下拉字段中选择仓库。
      • 配置强制实施国家/地区边界限制复选框。
      • 允许的最大距离字段中输入一个数值。
      • 单位字段中选择英里千米
    • 最小库存量
      • 履行组下拉字段中选择履行组,或在履行位置下拉字段中选择仓库。
      • 类别必填下拉字段中选择零售类别并/或在相应字段中选择产品产品变型
      • 最小库存量字段中输入一个数值。
    • 履行位置优先级
      • 履行组下拉字段中选择履行组,或在履行位置下拉字段中选择仓库。
      • 类别必填下拉字段中选择零售类别并/或在相应字段中选择产品产品变型
      • 优先级字段中输入一个数值。
  10. 选择保存