You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Google App Script生成唯一RefNo无法输出带前导零的正确编号

解决方案

核心逻辑

你遇到的前导零丢失问题本质是:存储在Ref表的序号在做数值运算、字符串拼接时,文本格式的前导零会被自动忽略。最优处理方案是Ref表仅存储纯数字的递增序号,仅在生成最终展示用的工单编号时统一补全前导零,避免类型转换异常。

代码修改

只需调整NewRef函数的编号生成逻辑即可,使用padStart方法实现4位长度的前导零补全:

function NewRef(){
  // 获取最新的纯数字序号
  var lr = GetLatest();
  // 将序号转为字符串,不足4位时在开头补0
  var formattedSerial = String(lr).padStart(4, '0');
  // 拼接前缀T生成最终编号
  return "T" + formattedSerial;
}

兼容写法

如果运行环境不支持ES6的padStart方法,可改用传统字符串截取的方式实现相同效果:

function NewRef(){
  var lr = GetLatest();
  // 先拼接足够多的前导零,再截取最后4位
  var formattedSerial = ("000" + lr).slice(-4);
  return "T" + formattedSerial;
}

配套优化

建议将Ref表A1单元格的格式调整为数字格式,初始值设为1即可,无需存储带前导零的文本,避免后续gl + 1运算时出现类型错误。

内容的提问来源于stack exchange,提问作者Madsam

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.07 06:24:02