钉钉可以传递哪些控件数据到「发起审批实例」接口?
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
在钉钉中,你可以在POST请求的方式下,将表格控件和附件控件的数据传递给「发起审批实例」接口。首先,你需要在表格控件和附件控件中填写数据。然后,你可以在POST请求的body中,将这些数据作为参数传递。
此外,你还可以使用钉钉提供的“创建审批实例”API接口,在请求参数中设置子控件的值。例如,可以按照以下格式设置表单数据:其中,form_component_values表示表单数据,包含多个控件的值。在子控件中,需要将子控件的名称和值设置在一个对象中,作为children属性的值传递。
需要注意的是,根据是否指定审批人,发起审批实例有两种方式:指定审批人和不指定审批人。如果选择指定审批人方式,调用接口时,通过approvers或approvers_v2参数指定审批人。如果不指定审批人,复用审批后台设置的审批流程。
在钉钉中,发起审批实例接口支持许多控件数据。例如,单选框控件允许用户在借款流程中选择一个选项,如请假原因;多选框控件则让用户能在加速流程中选择多个选项,如加班时长。此外,文本框、日期选择器和文件上传等控件也得到了支持,它们分别允许用户输入信息、选择一个日期以及上传文件。
发起审批实例的参数设置较为复杂,包括了approvers、approvers_v2、cc_list和cc_position等。如果指定审批人,可以使用approvers或approvers_v2参数,其中approvers_v2还支持或签和会签。如果不指定审批人,审批流程将复用审批后台设置的审批流程。不过需要注意的是,指定审批人方式不支持审批模板的高级设置,比如手写签名、表单操作权限等均无法使用。
在传递控件数据到发起审批实例接口时,可以通过API接口向子控件中传递值。请求参数中需要设置子控件的值,格式例如:{"form_component_values": [ { "name": "单行输入框", "value": "单行输入框示例" }, { "name": "多行输入框", "value": "请输入多行文本内容,需要换行时请输入\r
", "children": [ { "name": "子控件名称", "value": "子控件值" } ] } ]}。其中,form_component_values表示表单数据,包含多个控件的值。
可以传递表单组件的数据到「发起审批实例」接口。具体实现方式为在请求体中添加formComponentValues参数,其中每个表单组件需要传递name和value两个值。例如:{ "name" : "请假天数", "value" : "3" }。 ,此回答整理自钉群“钉钉开发者社区(互助群)”
支持的表单控件https://open.dingtalk.com/document/orgapp/initiate-approval#title-zk0-k59-zdf
表单控件采用key/value的形式,其中key是每个控件对应的名称,value可以是普通字符串,也可以是json字符串。发起审批实例接口支持使用以下表单控件。