I直接答案
排序值的本质是一个优先级数字。同一个商品在同一时间只能挂在一个促销活动里,如果你不小心把它放进了两个甚至更多活动,系统不会随机挑一个,也不会全都执行,而是拿这些活动的排序值比大小:数字大的那个活动胜出,商品按它来计算促销价和优惠。所以排序值不是装饰性的排序字段,它是冲突发生时的裁判。
第二层规则是并列处理。假如两个活动的排序值填了一样的数字,系统不会继续比较折扣力度、活动时间或商品数量,而是看创建时间——先创建的那个活动拿到优先权。这意味着复制活动、批量建活动时如果忘了改排序值,实际生效的往往是你最早建的那个,而不是你以为最新的那个。结论很直接:排序值要当成业务意图来填,重要的、必须跑的活动给大数,临时测试或备用的活动给小数字。
II操作问答
系统判定只有一个动作:比数字
判断逻辑没有中间状态。商品进入活动集合后,系统先筛出所有包含该商品的活动,然后在这些活动之间比排序值,取最大值对应的活动执行。其余的不会排队等待,也不会部分生效,就是直接被挡在外面。
这也解释了为什么排序值相同时要看创建时间。系统需要一个确定性的结果,既然数字分不出胜负,就用时间兜底,规则本身没有对错,只是要求你在配置时避免把两个活动的排序值写成一样。
III操作问答
创建活动时排序值填在哪、怎么填
在订货宝后台进入促销活动的新建页面,活动名称、时间、适用商品这些填完之后,往下找排序值这一项。它通常是个数字输入框,允许填正整数,数值范围由系统接受即可,没有「只能填 1 到 10」这类限制。
填的时候建议先定一套自己团队能记住的档位。比如主推活动给 100,常规活动给 50,只给特定客户看的测试活动给 10。这样以后无论谁建活动,都能一眼判断自己的活动会不会被别的活动压住。
保存前再确认一次:这个活动里的商品,有没有同时躺在另一个排序值更大的活动里。如果答案是「有」,那保存之后它很可能不生效,现象是客户端看到的还是原价或另一个活动的价。
IV操作问答
两种最容易配错的情形
第一种是复制活动。为了省事把上个月的活动复制一份改个时间,排序值也跟着复制了过来。这时两个活动数字相同,系统按创建时间判定,先建的那个继续生效,新活动看起来配好了却什么都没发生。排查方法是看活动的创建时间,而不是只看活动开始时间。
第二种是批量给商品设活动。运营想把几十个商品一次挂进大促,但其中一部分已经在另一个长期活动里,而那个长期活动的排序值更大。结果是大部分商品正常打折,少数几个纹丝不动,现象很像「漏配」,实际是优先级被压住了。这时候要么把大促活动的排序值调大,要么把这些商品从旧活动里摘出来。
V操作问答
它跟价格、账期、库存、权限和报表的关系
排序值最终影响的是成交价,所以它和价格体系是绑在一起的。如果同时存在针对同一客户等级的折扣策略,实际展示的价格以生效的那个活动为准,排查价格异常时排序值应该是第一批要看的配置。
账期和库存跟着走。活动决定了这一单走的优惠口径,也决定了库存扣减挂在哪个活动名下,做活动效果统计时,被压住的活动不会有数据,容易被误判成「活动没人参加」。如果报表里某个活动的订单数长期为零,先查排序值,再查商品是否真的进了这个活动。
权限方面,排序值属于活动配置的一部分,谁能改活动谁就能改它。团队里如果多人可以建活动,建议把排序值的档位规则写进内部约定,否则同一个商品今天生效明天不生效的问题会反复出现。
VII常见问题
被问得最多的几个问题
建议填正整数,把 0 和负数留给不需要优先的场景没有实际意义。因为规则比的是大小,只要所有活动都是正数,档位就清晰;填 0 只是让它排在正数活动后面,但一旦你也填了负数,判断就容易乱。统一用正数、按档位拉开差距最省心。
是。排序值相同时比的是创建时间,先创建的优先。删掉重建会得到一个新的创建时间,顺序自然往后排,所以如果希望新的那个生效,正确做法是把它的排序值调得比对方大,而不是靠重建来抢时间,重建只是让它更靠后。
已经成交的订单按当时的活动结果计算,改排序值不会回头动历史订单。但改动会影响从此刻起新产生的下单行为,所以调整前最好确认当前哪些商品在跑活动,避免调整过程中出现同一商品在短时间内换了优惠口径,客服那边也好提前打招呼。
VII继续查
企业微信 · 专属顾问