数据交互-QiyuJSON类
*-- 单纯的键值对 append(键,值) 输出 {键,值}
oQiyuJson=newobject("QiyuJson","QiyuJson.prg")
oQiyuJson.Append("name","123")
?oQiyuJson.ToJSON(1)
*-- 单纯的键值对 append(键,值) 输出 {errno,errmsg,键,值} 0为默认值
oQiyuJson=newobject("QiyuJson","QiyuJson.prg")
oQiyuJson.Append("name","123")
?oQiyuJson.ToJSON(0)
*-- 输出表JSON *appendcursor(表名) 添加一个表 total 记录总数 count 当前记录数,rows数组 存放表记录
CREATE CURSOR TEMP (Name c(50), age i)INSERT INTO temp VALUES ("张三",20)
oQiyuJson=newobject("QiyuJson","QiyuJson.prg")
oQiyuJson.appendcursor("TEMP")
?oQiyuJson.ToJSON()*-- 输出:*--{ "errno": 0, "errmsg": "ok", "total": 1, "count": 1, "rows": [ { "name": "张三", "age": 20 } ] }
*--输出表,属性组合
CREATE CURSOR TEMP (Name c(50), age i)INSERT INTO temp VALUES ("张三",20)
oQiyuJson=newobject("QiyuJson","QiyuJson.prg")
oQiyuJson.Append("name","123")
oQiyuJson.appendcursor("temp")
?oQiyuJson.ToJSON()
*-- 分页用,传入total值 *appendcursor(表名,total) 另传入,记录总数total值 用于分页程序
CREATE CURSOR TEMP (Name c(50), age i)INSERT INTO temp VALUES ("张三",20)
oQiyuJson=newobject("QiyuJson","QiyuJson.prg")
oQiyuJson.appendcursor("TEMP",20)
?oQiyuJson.ToJSON()
*--输出 与上式不同的是total值 *--{ "errno": 0, "errmsg": "ok", "total": 20, "count": 1, "rows": [ { "name": "张三", "age": 20 } ] }
*--多表输出
CREATE CURSOR TEMP (Name c(50), age i)INSERT INTO temp VALUES ("张三",20)CREATE CURSOR TEMP2 (操作员 c(50), 工号 C(4))INSERT INTO temp2 VALUES ("张三",'001')
oQiyuJson=newobject("QiyuJson","QiyuJson.prg")
oQiyuJson.appendcursor("temp")
oQiyuJson.appendcursor("temp2")
?oQiyuJson.ToJSON()*--输出 结构 表名:{rows:[]},表名:{rows:[]} *--{ "errno": 0, "errmsg": "ok", "temp": { "total": 1, "count": 1, "rows": [ { "name": "张三", "age": 20 } ] }, "temp2": { "total": 1, "count": 1, "rows": [ { "操作员": "张三", "工号": "001" } ] } }
如果在框架之外使用,请加载如下库 Set Library To foxjson.fll Additive Set Procedure To foxJson Additive Set Procedure To foxJson_Parse Additive