开发者社区> 问答> 正文

宜搭,如何在高级流程设计中,通过自动节点向4表单变量中,分别写入不同结果(日期时分秒,成功/失败)?

如下图所示,在审批流程中,通过自动节点,向4个表单变量,分别写入完成结果:
变量1:写入接单人首次处理时间(年月日时分秒),
变量2:写入接单人最后完结时间(年月日时分秒),
变量3:根据审批成功的结果,写入文本-成功
变量4:根据审批失败的结果,写入文本-失败

执行脚本怎么写?

image.png

展开
收起
我不是【游客】 2024-01-22 10:31:38 114 0
2 条回答
写回答
取消 提交回答
  • 在钉钉宜搭的高级流程设计中,通过自动节点实现向表单变量写入不同结果通常需要使用脚本编写。不过具体脚本内容取决于宜搭提供的API和脚本环境支持的功能。

    假设宜搭提供了相应的接口或方法来操作表单变量,下面是一个基于JavaScript样例的示例代码,用于说明如何根据审批结果写入不同的时间戳和文本值:

    // 获取当前时间并格式化为年月日时分秒
    function getCurrentDateTime() {
      const now = new Date();
      return `${now.getFullYear()}-${addZero(now.getMonth() + 1)}-${addZero(now.getDate())} ${addZero(now.getHours())}:${addZero(now.getMinutes())}:${addZero(now.getSeconds())}`;
    }
    
    // 辅助函数,补零
    function addZero(num) {
      return num < 10 ? '0' + num : num;
    }
    
    // 获取审批结果(这里假设审批结果是一个布尔值)
    const isApproved = getApprovalResult(); // 这个函数需要由宜搭提供,实际调用方式请参照宜搭文档
    
    // 写入表单变量
    setFormVariable('variable1', getCurrentDateTime()); // 写入接单人首次处理时间
    setFormVariable('variable2', getCurrentDateTime()); // 写入接单人最后完结时间
    
    // 根据审批结果写入成功或失败
    if (isApproved) {
      setFormVariable('variable3', '成功');
    } else {
      setFormVariable('variable4', '失败');
    }
    
    // 上述 `getApprovalResult` 和 `setFormVariable` 函数是模拟的示例,实际上应替换为宜搭提供的相应API或方法
    

    请注意,以上代码仅作为示例,并非直接可用的宜搭脚本。在实际应用中,请查阅钉钉宜搭的相关开发文档和API手册,以了解正确的变量获取和设置方式。

    2024-01-22 16:00:18
    赞同 展开评论 打赏
  • 面对过去,不要迷离;面对未来,不必彷徨;活在今天,你只要把自己完全展示给别人看。

    在阿里云宜搭的高级流程设计中,可以通过设置自动节点并结合表达式来实现向两个表单变量分别写入接单人首次处理时间和最后完结时间。

    以下是一种可能的实现方式:

    1. 首次处理时间:

      • 在流程开始时,或者接单人处理任务的节点后,可以设置一个自动执行的脚本节点。
      • 在该脚本节点的执行表达式中,使用系统函数获取当前时间,并将这个时间值赋给对应的表单变量。例如:setFormValue('firstProcessTime', new Date());
    2. 最后完结时间:

      • 在流程结束,即任务完成或关闭的节点后,设置一个类似的自动执行的脚本节点。
      • 同样通过表达式获取当前时间并赋值给记录完结时间的表单变量。例如:setFormValue('finishTime', new Date());
    2024-01-22 13:11:05
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
宜搭 - 企业智能化应用搭建平台 立即下载
《云市场-宜搭解决方案》 立即下载
《宜搭开发手册》 立即下载