通过WebApi提取数据
为了演示WebApi的作用,在Excel服务器的填报网站ESWeb中包含了一个测试接口,用来模拟第三方系统,后面我们将用这个模拟接口,演示WebApi 的使用。
前提:
Excel服务器做完整安装,或自选的安装模块要包含ESWeb。
ESWeb 中包含的测试接口定义如下:
接口的功能:提取示例数据库 ESSample 中的订单信息
请求地址:
http://{ESWeb服务器的域名或ip}/esweb/api/testApi/OrderState
其中{ESWeb服务器的域名或ip} 要替换成您实际安装的信息,当然,如果您就在服务器本机上通过浏览器访问填报网站,{ESWeb服务器的域名或ip}就是 localhost
请求参数:为url参数, orderNO表示订单编号,为文字类型。
返回参数:是如下形式的JSON,其中如果 code=0,就表示调用成功。
{
"code": "",
"description": "",
"orderNo": "",
"khNo": "",
"khName": "",
"orderdate": "",
"productNames": [''],
"product": [{
"productName": "",
"productNo": ""
}]
}
WebApi的配置实际上包含两个部分,一是定义接口,二是指定接口的调用方式。
定义 WebApi接口
1. 设计栏目下选中【WebApi】-【第三方接口】,点击【新建】,按下图所示输入“基本信息”内容。
2.点击【下一步】,设置“请求参数”内容。
Query参数(查询参数): 请求地址中,问号后面的参数。
3.点击【下一步】至“返回参数”,输入(或粘贴)JSON格式的返回参数(目前只支持json格式)到“返回参数示例”:
4.点击【自动识别】,跳转至“参数集”选项卡,显示识别出的返回参数,按照接口规定,选择code 的数据类型为文字,指定0是成功返回码:
勾选“返回参数存入数据库,每个子集都会创建成一个数据表,表名为子集名”,在成功调用此WebApi后,其返回数据会自动保存到数据库中,可做为数据源使用。
WebApi返回参数用于WebApi 查询公式时,则必需存入数据库;
WebApi 返回参数用于WebApi 调用公式,返回参数可不存入数据库。
若想清除子集数据表中数据,可选中对应的WebApi定义右键点击【删除数据】菜单。
5.点击【下一步】,显示完整定义内容。
6.点击【确定】完成WebApi定义。
指定接口的调用方式
定义了接口之后,还需要指定何时/怎样调用此接口。我们把调用WebApi 当成一种特别的表间公式看待,调用接口就是对表间公式的执行,可以选择各种执行的时机。
以下通过示例应用中,如下图所示的“提取订单信息”查询模板,举例说明定义过程。
定义 WebApi 查询
1.选中“提取订单信息”模板,新建“WebApi 查询”类型表间公式
2.输入公式名称后点击【选择WebApi】按钮,选择“api_提取订单信息”,【确定】。
3.点击【来源数据】按钮,选择“api_提取订单信息_resp_t2”,【确定】。
4.点击【请求数据】,设置目的字段数据。
5.点击【填充方式】按钮,选择填充目的表为“提取订单信息_列表”,输入如下目的字段表达式,【确定】。
6.点击【保存】。
7.设置应用时机,点击【保存】,完成表间公式定义。
应用“WebApi查询“提取数据
我的工作台中选中“提取订单信息”模板,输入存在的订单编号“070525004”执行“调用WebApi查询订单信息_列表”表间公式。提取正确数据。