1. 在项目中添加SDK文件
1.1 下载SDK
https://openapi.open.kingdee.com/ApiSdkCenter
1.2 添加到Maven项目中
在pom.xml文件中添加代码(jar放在项目目录下libs/kingdee中,也可以添加到mvn库后进行配置)
<dependency>
<groupId>com.kingdee</groupId>
<artifactId>k3cloud-webapi</artifactId>
<version>1.0.0</version>
<scope>system</scope>
<systemPath>${project.basedir}/libs/kingdee/k3cloud-webapi-sdk.7.6.x.jar</systemPath>
</dependency>
1.3 在项目resource目录下添加kdwebapi.properties文件
注意:文件名不要修改,因为SDK中已有代码用于获取同名文件而配置信息。(SDK有该同名文件可以复制一份)
# 第三方系统登录授权的账套ID
X-KDApi-AcctID=
# 第三方系统登录授权的用户
X-KDApi-UserName=
# 第三方系统登录授权的应用ID
X-KDApi-AppID=
# 第三方系统登录授权的应用密钥
X-KDApi-AppSec=
# 服务Url地址
X-KDApi-ServerUrl=
# 账套语系,默认2052
# X-KDApi-LCID = 2052
# 组织编码,启用多组织时配置对应的组织编码才有效
# X-KDApi-OrgNum = 100
# 允许的最大连接延时,单位为秒
X-KDApi-ConnectTimeout=120
# 允许的最大读取延时,单位为秒
X-KDApi-RequestTimeout=120
接口参考:https://openapi.open.kingdee.com/ApiCenterDoc
2.测试代码
public static void main(String[] args) {
K3CloudApi client = new K3CloudApi();
String jsonData = "{\"FormId\":\"\",\"FieldKeys\":\"\",\"FilterString\":\"\"," +
"\"OrderString\":\"\",\"TopRowCount\":0,\"StartRow\":0,\"Limit\":0}";
JSONObject jsonObject = JSONObject.parseObject(jsonData);
//组织机构查询接口ID
jsonObject.put("FormId", "ORG_Organizations");
//需要获得的字段信息
jsonObject.put("FieldKeys", "FNumber,FName,FDescription,FAcctOrgType,FContact");
jsonObject.put("Limit", 10);
try {
List<List<Object>> result = client.executeBillQuery(jsonObject.toJSONString());
for (List<Object> obj : result) {
System.out.println(obj.toString());
}
} catch (Exception e) {
System.out.println(e.getMessage());
}
}