SilerKing 发表于 2022-7-11 08:24:49

请教一下调用怎么排序数据

本帖最后由 SilerKing 于 2022-7-11 08:26 编辑

https://www.o2oa.net/cms/datacenter/174.html这个页面最下面的调用例子在哪加order by进行排序?
var service = new QueryTableService({ tableFlag : "testTable" });//保存
service.save({
    "subject" : "标题",
    "name" : "zhangsan"
}, function(){
    this.form.notice("保存成功", "success");
}.bind(this))
//根据条件查询
service.listByWhere("o.name='zhangsan'", function( json ){
    //json 为符合条件的数据列表
}, null, false)
//根据id获取数据
service.get( id, function( json ){
    //json 为id对应的数据
}, null, false)

论坛管理员 发表于 2022-7-11 10:43:51

"o.name='zhangsan'"这里就是添加查询jpql的地方,您在这后面加就可以了

SilerKing 发表于 2022-7-11 13:32:01

本帖最后由 SilerKing 于 2022-7-11 13:35 编辑

C:\Users\Administrator\Desktop\小Q书桌-截图\小Q截图-20220711133034.png
再问一下是这么加的吗?
service.listByWhere("o.name='zhangsan' order by o.name", function( json ){
之前试过如果这么加是报错的

SilerKing 发表于 2022-7-12 11:24:04

本帖最后由 SilerKing 于 2022-7-12 11:33 编辑

解决了,后台Eclipse全局搜索ListRowSelectWhere,可以搜出两个类,名字都叫ActionListRowSelectWhere,一个位于com.x.query.assemble.designer.jaxrs.table包,另一个位于com.x.query.assemble.surface.jaxrs.table包,将两个ActionListRowSelectWhere中sql拼where串部分都改成
sql += " where " + where;
就是把括号去掉重新拼串,记得双引号中where前后预留空格。
然后重打x_query_assemble_designer和x_query_assemble_surface包替换原来的war包,重启后台即可在前台脚本里直接加order by了

因为目前所用的版本较老(旧版本够用并且没时间调试新版本),如果搜索发现ActionListRowSelectWhere中sql拼串就是没括号版本的那就不用修改了,前台直接加order by也应该好使。

论坛管理员 发表于 2022-7-12 16:43:44

:handshake
页: [1]
查看完整版本: 请教一下调用怎么排序数据