Delphi Xe 10.3 钉钉SDK开发——审批流接口(获取表单ProcessCode)

开发钉钉审批流时,需要用到钉钉表单的Processcode,有两种方法 :

一、手动获取:

管理员后台——审批——找到对应的表单:如图:

 

ProcessCode后面就是了!

二、接口获取:今天的重点,不说了,直接上代码。

function TDingtalkNew.GetProcessCode(ProcessName: string): string;
constProcessCodeAPI: string = 'https://oapi.dingtalk.com/topapi/process/get_by_name';
varHttpClient: TNetHTTPClient;Params: TStringList;Response: TStringStream;
varJO: TJSONObject;errcode: string; //返回代码
beginHttpClient := TNetHTTPClient.Create(nil);Params := TStringList.Create();Response := TStringStream.Create('', 65001);tryParams.Add('access_token=' + Token);Params.Add('name=' + ProcessName);HttpClient.post(ProcessCodeAPI, Params, Response);JO := TJSONObject.ParseJSONValue(Response.DataString) as TJSONObject;tryif JO <> nil thenbeginJO.TryGetValue<string>('errcode', errcode);if errcode.ToInteger = 0 thenbegin
//          Result := Response.DataString;JO.TryGetValue<string>('process_code', Result);endelsebeginJO.TryGetValue<string>('errmsg', Result);//这里最好做日志记录错误信息end;end;finallyJO.Free;end;finallyHttpClient.Free;Params.Free;Response.Free;end;end;

下面就是调用了:

复制代码

procedure TMainForm.ToolButton6Click(Sender: TObject);
vardk: TDingtalkNew;
begindk := TDingtalkNew.Create;trydk.Getappid := '你企业钉钉的APPID';dk.Getappsecret := '你企业钉钉的Appsecret';Log.Debug(dk.GetProcessCode('ERP客户订单'),'debug');finallydk.Free;end;
end;

复制代码

 

中年大叔学Delphi

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/823375.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

JDK8垃圾回收机制

导读 JDK8&#xff08;Java Development Kit 8&#xff09;的垃圾回收机制是Java语言内存管理的重要组成部分&#xff0c;它负责自动回收不再使用的对象&#xff0c;释放内存空间&#xff0c;从而防止内存泄漏和内存溢出。下面将对JDK8的垃圾回收机制进行详细的解析。 一、垃…

机器学习周报第37周

目录 一、文献阅读&#xff1a;You Only Look Once: Unified, Real-Time Object Detection1.1 摘要1.2 背景1.3 论文模型1.4 网络设计1.5 YOLO的局限性1.6 实现代码 一、文献阅读&#xff1a;You Only Look Once: Unified, Real-Time Object Detection 1.1 摘要 YOLO是一种新…

JDBC入门

JDBC java database connectivity: 就是使用java语言操作关系型数据库的一套API

Pytest测试用例中的mark用法(包含代码示例与使用场景详解)

在软件开发中&#xff0c;测试是确保代码质量和功能稳定性的重要环节。Python作为一门流行的编程语言&#xff0c;拥有丰富的测试工具和框架&#xff0c;其中pytest是其中之一。pytest提供了丰富的功能来简化测试用例的编写&#xff0c;其中的mark功能允许我们对测试用例进行标…

LeetCode———100——相同的树

目录 ​编辑 1.题目 2.解答 1.题目 . - 力扣&#xff08;LeetCode&#xff09; 给你两棵二叉树的根节点 p 和 q &#xff0c;编写一个函数来检验这两棵树是否相同。 如果两个树在结构上相同&#xff0c;并且节点具有相同的值&#xff0c;则认为它们是相同的。 示例 1&…

【数据挖掘】实验8:分类与预测建模

实验8&#xff1a;分类与预测建模 一&#xff1a;实验目的与要求 1&#xff1a;学习和掌握回归分析、决策树、人工神经网络、KNN算法、朴素贝叶斯分类等机器学习算法在R语言中的应用。 2&#xff1a;了解其他分类与预测算法函数。 3&#xff1a;学习和掌握分类与预测算法的评…

《QT实用小工具·二十七》各种炫酷的样式表

1、概述 源码放在文章末尾 该项目实现了各种炫酷的样式表&#xff0c;如单选、多选、按钮、日历、表格、下拉框、滚轮等&#xff0c;下面是项目demo演示&#xff1a; 项目部分代码如下&#xff1a; #include "frmmain.h" #include "ui_frmmain.h" #inc…

从入门到精通C++之类和对象(续)

目录 初始化列表构造函数&#xff1f;拷贝构造&#xff1f;浅谈explicit关键字友元 内部类static成员总结 初始化列表 引入初始化列表&#xff1a;简化代码&#xff0c;提高效率 在编程中&#xff0c;初始化列表是一种用于在创建对象时初始化成员变量的快捷方式。通过初始化列…

数据结构(七)——B树和B+树

7.4.1_1 B树 5叉查找树 //5叉排序树的结点定义 struct Node {ElemType keys[4]; //最多4个关键字struct Node &child[5]; //最多5个孩子int num; //结点中有几个关键字 }; 如何保证查找效率&#xff1f; eg:对于5叉排序树&#xff0c;规定…

校园智能水电预付费管理系统

校园智能水电预付费管理系统是一种专为学校水电资源管理而设计的智能化系统&#xff0c;旨在提供全面的水电资源管理解决方案&#xff0c;满足校园管理者对水电资源管理的需求。该系统整合了先进的智能技术和云计算&#xff0c;为校园管理者提供了实时监控、自动计费、节能管理…

Java面试八股之经验总结

我们先来聊聊面试的技巧吧&#xff0c;只是单纯的个人经验总结&#xff0c;如果大家觉得有道理&#xff0c;就选择性吸收一下就好了。如果觉得没用&#xff0c;可以直接跳过。 自我介绍一定要好好准备。我之前对自我介绍这部分也不是很重视&#xff0c;面试多了之后我发现&…

钉钉OA审批评论接口,如何@ 人并发送通知

钉钉OA审批评论接口&#xff0c;如何 人并发送通 问题描述&#xff1a; 相关接口&#xff1a;https://oapi.dingtalk.com/topapi/process/instance/comment/add 我希望在钉钉oa审批流程中&#xff0c;添加评论的同时通过“”或者其他方式提醒流程发起人去跟进审批工作。 但我…

数据寻址方式

立即数寻址速度>寄存器寻址>直接寻址 https://blog.csdn.net/qq_58099084/article/details/120602982

【Linux】Linux信号

目录 信号的概念 生活中的信号 Linux中的信号 kill命令 kill 命令的使用 常见的信号 命令行代码示例 注意事项 信号的处理方式 产生信号 信号的捕捉 信号捕捉示意图 内核如何实现信号捕捉 信号的捕捉与处理 小结 阻塞信号 信号在内核中的表示图 信号集操作函数…

Java时间戳转换全攻略:从1712560695839到日期

哈喽&#xff0c;大家好&#xff0c;我是木头左&#xff01; 一、时间戳是什么&#xff1f;为什么需要它&#xff1f; 时间戳&#xff0c;简单来说&#xff0c;就是一个表示特定时间点的数字。在计算机科学中&#xff0c;时间戳是一个非常重要的概念&#xff0c;因为它们被广泛…

linux 挂载云盘 NT只能挂载2T,使用parted挂载超过2T云盘

一、删除原来挂载好的云盘和分区 1、查看挂载号的云盘 fdisk -l 发现我们有5千多G但是只挂载了2T&#xff0c;心里非常的慌张&#xff01;十分的不爽&#xff01; 好&#xff0c;我们把它干掉&#xff0c;重新分区&#xff01; 2、解除挂载 umount /homeE 没保存跳转到&…

「每日跟读」英语常用句型公式 第14篇

「每日跟读」英语常用句型公式 第14篇 1. As far as __ is concerned 就__ 而言 As far as the project timeline is concerned, we’re running ahead of schedule. &#xff08;就项目时间表而言&#xff0c;我们进度超前了。&#xff09; As far as the exam results ar…

【高精度算法】【蓝桥杯备考训练】:高精度加法、高精度减法、高精度乘法、高精度除法【已更新完成】

目录 1、高精度加法 2、高精度减法 3、高精度乘法 4、高精度除法 1、高精度加法 给定两个正整数&#xff08;不含前导 0&#xff09;&#xff0c;计算它们的和。 输入格式 共两行&#xff0c;每行包含一个整数。 输出格式 共一行&#xff0c;包含所求的和。 数据范围 1≤…

二分查找的时间复杂度的讲解

二分查找的代码&#xff1a; 二分查找的时间复杂度&#xff1a; 最坏的情况&#xff1a; 就是找不到和查找区间只剩一个值的时候&#xff0c;这两种都是最坏的结果&#xff0c;假设查找了x次&#xff0c;达到了最坏的结果&#xff1a; N代表每一次折半区间数据的个数&#xf…

基于unlink 和黑白名单实现删除脚本(日志清理、历史备份清理)

零 摘要 rm 过于强大&#xff0c;当使用root 用运行删除脚本时&#xff0c;总是担心误删除&#xff0c;本脚本改用unlink 命令删除单文件&#xff0c;使用黑白名单限制删除文件所在目录&#xff0c;只有被删除文件不在黑名单目录下且同时在白名单目录下才能删除 一 脚本 #!/…