先别急着改表结构。第一步应把“字段不够用”拆成可核对的差异:谁在什么页面、提交什么内容、期望系统怎么处理。若只是展示或导出缺列,优先做映射与补充视图;若涉及多角色对同一事实理解不同,例如销售要“客户等级”、运营要“活跃度”、财务要“回款状态”,则要先把分歧转成字段定义和取值规则,再决定是否新增字段。
上线后常见的混乱不是字段数量少,而是同一字段被不同角色当成不同含义使用。比如表单里的“公司规模”,市场部按员工人数填写,销售却按采购预算理解,导出后双方对同一列争论不休。此时新增字段只会让数据更乱。
可核对的证据包括:同一字段在后台导出、前台展示、通知邮件里出现不同取值;两个角色对“有效线索”的判断标准不一致;同一客户在多次提交中字段值互相矛盾。若出现这些现象,先做字段字典,而不是直接加列。
实际动作:拉一张对照表,列出字段名、填写角色、使用角色、取值示例、判断标准。结果若显示分歧集中在定义而非容量,下一步是统一口径并补必填校验;若显示确实缺少某个业务维度,再进入结构扩展。
如果新增需求只是“列表里想多看一列”“导出时想带上某个状态”,而原始数据已经存在,只是没有单独字段,优先在查询或导出层做映射。这样不改动已上线表单,也不会影响历史提交。
选择依据:新需求不参与自动判断,不触发通知,不改变后续流程;历史数据不需要回填;多个角色对同一事实的理解已经一致。满足这些条件时,映射层成本低、回滚容易。
实施动作:在导出配置或展示模板中增加计算列,来源写成明确规则,例如“回款状态=已回款金额≥合同金额”。上线后先让提出需求的角色核对一批样本,确认列名和取值符合预期,再决定是否固化为正式字段。若核对中发现取值边界争议,说明定义仍未统一,应退回上一步。
如果新字段要参与分配、提醒、权限或统计口径,映射层就不够。此时需要扩展数据结构,但不要直接覆盖旧字段。更稳妥的做法是新增字段并保留旧字段,让旧数据继续可读,新数据按新规则写入。
选择依据:该字段会影响下一步动作,例如按“客户等级”决定跟进人;多个页面或系统都要读取同一取值;历史记录需要区分“旧口径”和“新口径”。
实施动作:先确定字段类型和允许值,再在写入端增加校验,最后在读取端逐步切换。切换时保留一段并行期:新字段写入后,旧字段仍按原逻辑生成,对比两者差异。若差异集中在少数记录,先修正规则;若差异大面积出现,说明定义还没稳定,不应贸然停用旧字段。并行期结束后,再决定旧字段是归档还是删除。
假设销售把“客户等级”理解为预算规模,运营理解为互动频率,系统却只存一个文本值。扩展时不要直接改原字段含义,而是新增“预算区间”和“互动频次”两个字段,原“客户等级”暂时保留为人工备注。上线后让两个角色分别核对各自字段,若预算区间与互动频次经常冲突,说明需要第三个判断规则,而不是继续加字段。这个例子的数字仅用于说明比较方法,不代表真实项目结果。
分歧不能靠开会口头统一,要转成可以逐条核对的项目。建议按以下顺序推进:
这个顺序的作用是:把“我觉得字段不够”变成“哪一条定义缺失、哪一条取值冲突”。若某一条始终无法达成一致,说明它不适合作为自动判断字段,应保留为人工备注,避免污染结构化数据。
不是所有字段缺失都值得扩展。若该字段只被一个角色偶尔使用、不参与任何自动流程、历史数据也无法补齐,新增字段只会增加维护负担。此时更合适的做法是保留在备注、附件或外部表格中,并在页面上明确说明“此信息不进入系统判断”。
另一个例外是:字段扩展会破坏已有接口或导出格式,而下游系统短期内无法同步修改。这种情况下应先做兼容层,让旧接口继续返回旧结构,新字段通过独立接口或附加字段提供。等下游确认可以切换后,再考虑合并。
最后要说明:请求量、抓取量或某项统计归零,不能单独证明字段设计正确。它可能来自流量变化、采集口径调整或页面改版。判断扩展是否有效,应回到具体角色的核对结果:他们能否用同一字段得出同一结论,以及下一步动作是否因此更明确。