第一百八十一章 批号
周一早上,卫越发来一条消息:「别名表初版好了,你看一下。」
陆衍打开文件,是一张表格,左列是标准字段名,右列是这批文件里出现过的所有别名,按出现频率排了序。他从头往下扫,前十几行和制造业那批差不多——供应商代码、合同编号、产品型号,命名方式不同但意思直接对应,处理起来不复杂。
往下走,到了生物技术特有的那些字段,他读慢了。
「有效期」这行下面跟着六个别名:效期、有效期至、使用期限、质量保证期、保质期、Valid Until。其中「保质期」他有点拿不准——这个词在食品文件里是精确的,但在生物试剂里指的是什么,他不确定两者能不能等同处理。
他把这行标了出来,继续往下看。
「批号」这行下面只有三个别名:批次号、Lot No.、Batch No.。
他看了一眼,觉得没问题,准备往下翻,然后停了。
他重新看了一遍。
「批号」和「批次号」——他在别名表里,两个都归在了「批号」这个标准字段下面。但他突然想到一个问题:这是经过确认的吗?这两个词,在这批文件里,真的是同义词?
他给卫越发语音:「别名表里「批号」这个字段,你把「批次号」也归进来了——这个是你查过的,还是假设的?」
卫越大概过了五分钟,发回来:「我查过几个文件,看着意思一样。怎么了?」
「不确定,」陆衍说,「你那边能搜一下这批文件里这两个词同时出现的情况吗?看看有没有同一份文件里两个都有的,那就说明它们不是同义词。」
又过了十分钟,卫越回:「找到两份。同一份文件里,批号是出厂编号,批次号是内部管理用的分批序号,不一样。」
陆衍把这条回复看了一遍,「那就拆开,各自映射各自的,预处理步骤让用户确认。」

「好,」卫越说,「但这样的话,这批文件里两个字段都要打标——有些文件只有批号,有些只有批次号,有些两个都有,三种情况都有可能匹配的是同一个标准字段也可能不是。」
「对,」陆衍说,「就是这样,让用户判断。这个判断不能交给工具。」
下午,预处理步骤的界面卫越调好了,陆衍过了一遍。
四十七份文件跑下来,精确映射了三十一个字段,模糊映射了十二个,剩下十四个打了待确认标注。待确认的那些,大多数是生物技术特有的:批号和批次号就是一组,另外还有「注册证编号」和「产品注册号」(可能同一件事,可能不是),「检测报告」和「第三方检测报告」(可能同一类文件,可能来源不同),以及几个纯英文字段。
陆衍在界面上点了几下,确认逻辑没问题,然后发给卫越:「这个给霍建新之前,我们自己先把能判断的那几条判断掉,剩下真正需要他来看的再发过去,别让他一下子看到十四条。」
「几条能判断的?」卫越问。
「注册证编号和产品注册号这两个,我查了一下,在器械行业里是一回事,直接合并,不需要让他确认。」陆衍说,「检测报告那个,等我看一下文件结构再说。」
他打开文件,把那批检测报告翻了几份,是三家不同机构出具的,格式不同,但都在文件头注明了「委托检测」字样——意思是都是第三方出具的,只是委托方不同。他把这个告诉卫越,「可以合并,但备注里写上「均为委托检测,出具机构不同,矛盾扫描会分别处理」。」
「好,」卫越说,「那就剩九条让用户确认。」
「对,这个数字合理,」陆衍说,「九条,用户大概知道自己在看什么,不会烦。」
待确认项发给霍建新是第二天上午。
霍建新回得快,大概半小时,九条里他直接确认了六条,有两条他说要再查一下,最后一条他说「这个字段我们这边没有相应的,可以忽略」。
陆衍把这个结果同步给卫越:「他说有两条要查,你那边先把其他的跑起来,这两条字段涉及的文件先跳过,等他确认了再补。」

「涉及的文件有几份?」
陆衍查了一下,「七份,全是同一家供应商的。」
「那这七份先挂起,其他四十份先跑。」卫越说。
「对。」
下午三点多,矛盾扫描第一轮结果出来了。
卫越发过来:「一共扫了四十份,高置信度发现三条,中置信度十一条。」
陆衍打开结果文件,从高置信度那三条看起。
第一条:「某供应商A公司,两份采购合同,签署日期相差七个月,但引用的质量标准版本号相同,而该标准在两份合同签署之间有过一次版本更新——后签的合同引用的是旧版本。」
他把这条看了两遍。
这是真实的矛盾——后签合同引用旧标准,在采购里是一个需要说明的问题,有可能是双方明确约定继续沿用旧版,有可能是录入时没有更新,有可能是供应商资质里只覆盖到旧版本。不管哪种情况,都是律所需要去核实的。
第二条和第三条他快速扫了一遍,也是版本号和日期之间的矛盾,结构和第一条类似,但指向的是不同供应商的不同文件。
他把结果发给卫越:「三条高置信度都是真实的,我这边没有看到有反例的。」
卫越回:「中置信度我再过一遍,有几条我自己也不确定。」

然后是第二天,卫越发来一条语音,语气有点奇怪:「我看中置信度那十一条,发现一个问题——其中有四条,指向的是同一份文件,一份叫「产品质量声明」的东西。这份文件里有三处日期,但这三处日期的格式不一样,一处是「2021年3月」,一处是「2021-03」,一处是「Mar 2021」。工具把这三处都标了,认为是日期格式不一致可能导致理解分歧,中置信度。」
陆衍听完,「这是格式问题,不是日期矛盾,工具识别错了吗?」
「不,工具识别没错,」卫越说,「三种格式确实在同一份文件里,工具也没有判断它们含义不同,它标的是「格式不统一,可能有来源不一致的合并」——我觉得这个判断本身没错,但放在这个场景里,律所可能会觉得是噪声,因为格式不统一不等于内容矛盾。」
陆衍想了一下,「把这四条单独放一类,不叫「中置信度发现」,叫「格式一致性提示」,放在报告最后,加一行说明:「以下为同一份文件中日期/版本格式不统一的情况,不构成内容矛盾,供参考。」」
「这不是加字段,」卫越说,语气里有一点意外,「是加分类。」
「是,」陆衍说,「这两件事不一样。字段是在录入端加输入框,让用户填信息;分类是在输出端区分结果,让用户看的时候更准。录入端尽量不加,输出端可以细分。」
电话那头停了一下,然后卫越说:「行,我改一下。」
改完之后,陆衍把报告最终版在脑子里过了一遍:高置信度三条,中置信度七条,格式提示四条。高置信度的三条放最前,都是版本号和日期的真实矛盾;中置信度七条各附提示语;格式提示独立一节,备注说明。
结构清楚,层次分明。他觉得这份报告发给霍建新,对方应该能看懂,知道哪三条最需要核实,哪七条可能也需要问,哪四条只是顺便看一眼。
他把文件打包,给卫越发了一条:「可以发了,你发还是我发?」
「你发,」卫越说,「你和他对接的。」
陆衍把邮件起草好,附上报告文件,准备发出去,然后停了一下。
他想到那三条高置信度——第一条里,后签合同引用旧版标准,最可能的原因是供应商资质里只覆盖到旧版。如果是这个原因,那工具发现的不是合同本身的问题,是资质的问题。资质文件在不在这四十七份里?

他翻了一下文件清单。
资质文件在那七份还在挂起的文件里,那七份是等霍建新确认字段映射之后才会跑的。
他在邮件里加了一行:「附注:三条高置信度发现中的第一条,相关供应商的资质文件因字段确认问题暂缓处理,您确认后会补充扫描。」
然后发出去。
霍建新二十分钟后回了一条:「收到,我看一下。另外,那两条字段确认,我助理查完了,发给你。」
两个附件是两条字段的说明文件,一条确认可以合并,另一条说「这个字段在我们这边的文件里没有实际对应,建议忽略」。
陆衍把结果发给卫越:「那七份可以跑了,但有一个字段按霍建新说的忽略,你知道是哪个。」
「好,」卫越回,「今晚出结果。」
然后是一段安静。
陆衍把桌上的本子翻到那一页,前两行写的分别是:「不是暂不支持,是不支持」和「工具=让人的判断更有效率,不替代判断。」
他在下面加了一行:「录入端尽量不加,输出端可以细分。」
三行,一前一后,都是在同一个方向上找到的那条线。