开发者社区> 问答> 正文

钉钉中,如何获取process_code?

钉钉中,如何获取process_code?

展开
收起
多麻辣哦 2023-12-03 22:26:13 199 0
5 条回答
写回答
取消 提交回答
  • 面对过去,不要迷离;面对未来,不必彷徨;活在今天,你只要把自己完全展示给别人看。

    在钉钉中,可以通过以下步骤获取process_code:

    1. 打开钉钉应用,进入工作台页面。
    2. 在工作台页面上方的搜索框中输入“审批”,并点击搜索结果中的“审批”应用。
    3. 进入审批应用后,点击右上角的“管理”按钮,然后选择“流程模板”。
    4. 在流程模板页面中,找到需要查看的流程模板,并点击进入该模板的详情页。
    5. 在流程模板详情页中,可以看到该模板对应的process_code。
    2023-12-04 16:52:02
    赞同 展开评论 打赏
  • 钉钉中的process_code是钉钉审批流程的编码,可以通过获取审批实例的表单信息来获取。具体步骤如下:

    1. 调用获取审批单详情接口,传入审批单ID和业务类型,获取到审批单详情信息。
    2. 从审批单详情信息中提取出表单ID。
    3. 调用获取表单信息接口,传入表单ID和业务类型,获取到表单信息。
    4. 从表单信息中提取出process_code字段的值即可。

    需要注意的是,以上步骤需要使用钉钉提供的API接口进行调用,并且需要具备相应的权限才能访问相关数据。

    2023-12-04 15:10:06
    赞同 展开评论 打赏
  • 获取process_code需要创建或更新审批表单模板,通过调用「创建或更新审批表单模板」接口获取返回的表单模板信息中的processCode字段即可。
    ——此回答整理自钉群:钉钉开发者社区(互助群)

    2023-12-04 09:55:46
    赞同 展开评论 打赏
  • process_code(审批流的唯一码)从哪里获取https://m.dingtalk.com/qidian/help-detail-1000100483

    您好,有oa管理权限的账号登陆钉钉的管理后台,找到工作台,点击OA审批,找到对应的审批模板,点击编辑,processCode就在当前页面的URL中(地址栏)。

    【温馨提示】:新版管理后台不支持查看审批流唯一码,建议切换到旧版查看。bf783898afb4c8ae51f31393e133ab7b_kc-oss-1636963695093-image.png

    2023-12-04 09:09:36
    赞同 展开评论 打赏
  • 调用创建或更新审批模板接口创建的自有审批流模板,使用的模板名称和接口返回的process_code值。

    请求示例(JAVA SDK)

    DingTalkClient client = new DefaultDingTalkClient("https://oapi.dingtalk.com/topapi/process/save");
    
    OapiProcessSaveRequest request = new OapiProcessSaveRequest();
    OapiProcessSaveRequest.SaveProcessRequest saveProcessRequest = new OapiProcessSaveRequest.SaveProcessRequest();
    saveProcessRequest.setDisableFormEdit(true);
    saveProcessRequest.setName("test2.0");
    saveProcessRequest.setProcessCode("PROC-BE7FC6B2-E95B-45CA-AD9A-A62819EDA2FE");
    saveProcessRequest.setAgentid(260536001L);
    saveProcessRequest.setFakeMode(true);
    
    // 注意,每种表单组件,对应的componentName是固定的,参照以下示例代码
    List<FormComponentVo> formComponentList = Lists.newArrayList();
    
    // 单行文本框
    OapiProcessSaveRequest.FormComponentVo singleInput = new OapiProcessSaveRequest.FormComponentVo();
    singleInput.setComponentName("TextField");
    OapiProcessSaveRequest.FormComponentPropVo singleInputProp = new OapiProcessSaveRequest.FormComponentPropVo();
    singleInputProp.setRequired(true);
    singleInputProp.setLabel("单行输入框");
    singleInputProp.setPlaceholder("请输入");
    singleInputProp.setId("TextField-J78F056R");
    singleInput.setProps(singleInputProp);
    formComponentList.add(singleInput);
    
    // 多行文本框
    OapiProcessSaveRequest.FormComponentVo multipleInput = new OapiProcessSaveRequest.FormComponentVo();
    multipleInput.setComponentName("TextareaField");
    OapiProcessSaveRequest.FormComponentPropVo multipleInputProp = new OapiProcessSaveRequest.FormComponentPropVo();
    multipleInputProp.setRequired(true);
    multipleInputProp.setLabel("多行输入框");
    multipleInputProp.setPlaceholder("请输入");
    multipleInputProp.setId("TextareaField-J78F056S");
    multipleInput.setProps(multipleInputProp);
    formComponentList.add(multipleInput);
    
    // 金额组件
    OapiProcessSaveRequest.FormComponentVo moneyComponent = new OapiProcessSaveRequest.FormComponentVo();
    moneyComponent.setComponentName("MoneyField");
    OapiProcessSaveRequest.FormComponentPropVo moneyComponentProp = new OapiProcessSaveRequest.FormComponentPropVo();
    moneyComponentProp.setRequired(true);
    moneyComponentProp.setLabel("金额(元)大写");
    moneyComponentProp.setPlaceholder("请输入");
    moneyComponentProp.setId("MoneyField-J78F0571");
    moneyComponentProp.setNotUpper("1"); // 是否禁用大写
    moneyComponent.setProps(moneyComponentProp);
    formComponentList.add(moneyComponent);
    
    // 数字输入框
    OapiProcessSaveRequest.FormComponentVo numberComponent = new OapiProcessSaveRequest.FormComponentVo();
    numberComponent.setComponentName("NumberField");
    OapiProcessSaveRequest.FormComponentPropVo numberComponentProp = new OapiProcessSaveRequest.FormComponentPropVo();
    numberComponentProp.setRequired(true);
    numberComponentProp.setLabel("数字输入框带单位");
    numberComponentProp.setPlaceholder("请输入");
    numberComponentProp.setId("NumberField-J78F057N");
    numberComponentProp.setUnit("元");
    numberComponent.setProps(numberComponentProp);
    formComponentList.add(numberComponent);
    
    // 日期
    OapiProcessSaveRequest.FormComponentVo dateComponent = new OapiProcessSaveRequest.FormComponentVo();
    dateComponent.setComponentName("DDDateField");
    OapiProcessSaveRequest.FormComponentPropVo dateComponentProp = new OapiProcessSaveRequest.FormComponentPropVo();
    dateComponentProp.setRequired(true);
    dateComponentProp.setLabel("日期");
    dateComponentProp.setPlaceholder("请选择");
    dateComponentProp.setUnit("小时"); // 小时或天
    dateComponentProp.setId("DDDateField-J8MTJZVE");
    dateComponent.setProps(dateComponentProp);
    formComponentList.add(dateComponent);
    
    // 日期区间
    OapiProcessSaveRequest.FormComponentVo dateRangeComponent = new OapiProcessSaveRequest.FormComponentVo();
    dateRangeComponent.setComponentName("DDDateRangeField");
    OapiProcessSaveRequest.FormComponentPropVo dateRangeComponentProp = new OapiProcessSaveRequest.FormComponentPropVo();
    dateRangeComponentProp.setRequired(true);
    dateRangeComponentProp.setLabel(JSON.toJSONString(Arrays.asList("a", "b")));
    dateRangeComponentProp.setPlaceholder("请选择");
    dateRangeComponentProp.setUnit("小时"); // 小时或天
    dateRangeComponentProp.setId("DDDateRangeField-J78F057Q");
    dateRangeComponent.setProps(dateRangeComponentProp);
    formComponentList.add(dateRangeComponent);
    
    saveProcessRequest.setFormComponentList(formComponentList);
    request.setSaveProcessRequest(saveProcessRequest);
    
    OapiProcessSaveResponse response = client.execute(request, accessToken);
    System.out.println(JSON.toJSONString(response));
    

    返回示例

    {
        "errcode": 0,
        "result": {
            "process_code": "PROC-7C8BB7AE-E758-4A96-9375-27CFD376B19C"
        },
        "request_id": "5av7ifh2atw0"
    }
    

    ——参考链接

    2023-12-04 08:07:38
    赞同 展开评论 打赏
问答标签:
来源圈子
更多
收录在圈子:
+ 订阅
问答排行榜
最热
最新

相关电子书

更多
钉钉小程序——为工作方式插上翅膀 立即下载
钉钉客户端自动化的应用 立即下载
使命必达 —— 钉钉企业级 消息服务的机遇与挑战 立即下载