找回密码
 立即注册

QQ登录

只需一步,快速开始

赛龙周
金牌服务用户   /  发表于:2022-12-15 11:10  /   查看:2091  /  回复:4
本帖最后由 赛龙周 于 2022-12-15 11:14 编辑

项目开发过程中,有时需要将主子表生成json格式的数据,用来保存或传输数据,经过摸索,活字格能够通过以下三种方式实现:
  • 通过“发送http请求命令”实现
  • 通过“对象操作”插件实现
  • 通过“for json  ”的sql命令实现(需要mssql 2016以上版本)
下面分享下实现过程:
首先,数据准备:从模板库“库存管理系统”导入销售订单详情表作为演示数据
image.png346022338.png
1.第一种方法:通过“发送http请求命令”实现

最早想到就是用http命令,它是天生用来处理json数据。碰到的第一个问题是,这个地址该填什么?
image.png459530333.png
以前都是有api的地址调用的,现在没有接口啊!



其实活字格的服务端命令就是一个API接口,我们现在需要返回一个json数据,那就简单了,就先建个返回数据的服务端命令(jsonpara):接收一个参数,再把这个参数以json返回,命令就一条:返回命令
image.png522644042.png image.png720807189.png
接下来就是组织主子表数据了:
再写个服务端命令(ReturnJson):定义好表头、表体参数(body),其中表体是个数组类型的,需要再定义好数组项
image.png351218871.png image.png172391661.png
在命令中,发送http请求,调用前面创建的服务端命令:ServerCommand/Jsonpara,注意请求体参数要对应好
image.png616362914.png
接下来就是构建主子表参数了
image.png637541808.png
然后就前端页面调用该命令了
image.png64110411.png
image.png363424681.png
2.第二种方法:通过“对象操作”插件实现
根据之前使用“对象操作”插件的经验,它的返回结果也是个json
同样我们创建个服务端命令(ArrayJson),定义好表头、表体参数:
image.png174355467.png
创建表头对象head,配置好属性名与属性值
image.png178373717.png
创建表体对象body,配置好属性名与属性值
image.png656636047.png
最后创建我们要返回的json
image.png998036193.png
前端页面调用该命令了,传参数
image.png573793639.png
同样的结果
image.png395540465.png
3.第三种方法:通过“for json  ”的sql命令实现,因需要mssql 2016以上版本,我这就把sql语句放下面:
select * from SaleOrderQ with (nolock) inner join SaleOrderSQ with (nolock) on SaleOrderQ.id=SaleOrderSQ.id
where SaleOrderQ.id ='1000000008'
FOR JSON auto
image.png617662047.png
总体效果
image.png387171630.png

image.png922686462.png
image.png118945921.png

主子表生成json格式的几种方式.fgcc

374.88 KB, 下载次数: 16

售价: 20 金币  [记录]

评分

参与人数 1金币 +1000 收起 理由
Nancy.Yin + 1000 赞一个!

查看全部评分

4 个回复

倒序浏览
heroniu50
初级会员   /  发表于:2022-12-15 17:12:43
沙发
感谢大佬分享,每次来论坛都能学好多东西
回复 使用道具 举报
小白学员
银牌会员   /  发表于:2022-12-16 10:32:06
板凳
干货,点赞!
回复 使用道具 举报
阿南哥活字格认证
银牌会员   /  发表于:2022-12-22 09:11:43
地板

这里多了一个body
微信截图_20221222091059.png
回复 使用道具 举报
李大姐
注册会员   /  发表于:2022-12-28 12:01:44
6#

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部