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

如何绕过用户自定义Workflow锁定的记录执行打印脚本?

绕过Workflow记录锁定的可行方案
  • 临时切换权限上下文执行打印
    在SL脚本的打印逻辑块中,临时切换到管理员角色完成打印操作,执行完毕后恢复原用户上下文。示例代码:

    // 保存原用户ID
    def originalUser = GetCurrentUserId();
    try {
        // 切换到管理员上下文
        SetUserContext("admin_account");
        // 执行打印逻辑
        ExecutePrintTransaction(recordId);
    } finally {
        // 恢复原用户上下文
        SetUserContext(originalUser);
    }
    

    注意要确保管理员账号的权限配置正确,且在finally块中强制恢复上下文,避免权限泄漏。

  • 调整Workflow锁定规则
    在Workflow的锁定触发条件中新增判断:如果当前操作是打印申请交易,则不触发记录锁定。比如在Workflow的规则配置里,添加条件OperationType != "PRINT_APPLICATION",只对非打印操作执行锁定逻辑。

  • 跳过打印流程的锁定检查
    找到打印脚本中检查记录锁定的代码段,针对打印操作跳过该检查。比如原脚本中有:

    if (IsRecordLocked(recordId)) {
        ThrowError("Record locked by user defined Workflow");
    }
    

    修改为:

    if (CurrentOperation != "PRINT" && IsRecordLocked(recordId)) {
        ThrowError("Record locked by user defined Workflow");
    }
    

    仅在非打印操作时检查锁定状态,打印操作直接跳过。

  • 后台异步打印方案
    前端用户触发打印请求后,将请求发送到后台异步任务队列,由拥有管理员权限的后台服务执行打印操作。用户无需直接访问锁定的记录,后台服务独立完成打印流程,返回打印结果给用户。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.19 17:42:02