简体   繁体   English

odata 服务忽略 sql 视图中的排序定义(SAP HANA 云平台)

[英]odata service ignores sorting definition in sql view (SAP HANA Cloud Platform)

My first step to learning SAP HANA was usage of odata services related to database tables and database views.我学习 SAP HANA 的第一步是使用与数据库表和数据库视图相关的 odata 服务。 I created the XS Project, then a database table, fill it with content and then created the sql view and definded simple odata service topowners.xsodata .我创建了 XS 项目,然后创建了一个数据库表,用内容填充它,然后创建了 sql 视图并定义了简单的 odata 服务topowners.xsodata The sql view was grouped and ordered. sql 视图被分组和排序。 If i call (in Eclispe or WebIDE) the sql view "display content" , the entries are correct ordered by defined attribute.如果我调用(在 Eclispe 或 WebIDE 中)sql 视图“显示内容”,则条目按定义的属性正确排序。

If is call the odata service in XS Service (in browser) the entries are NOT ordered by defined attribute.如果在 XS 服务(在浏览器中)调用 odata 服务,则条目不按定义的属性排序。 How do I solve the problem?我该如何解决问题? Thank you谢谢


odata Service definition odata 服务定义

service { 
"DB_XS"."SUM_VIEW" as "TopOwners"
key  ("owner_code") 
    create forbidden
    update forbidden
    delete forbidden;
}

sql view definition sql视图定义

CREATE VIEW "DB_XS"."SUM_VIEW" ( "owner_code",
     "owner_count"
) AS select
     owners."owner_code" ,
     SUM("current_owner_cnt") as "owner_count"  

from "DB_XS"."owners" owners 

group by owners."owner_code"  

order by "owner_count" desc 
     p WITH READ ONLY

You can solve the problem by adding a $orderby in your oData request:您可以通过在 oData 请求中添加$orderby来解决问题:

 http:// ... /topowners.xsodata/TopOwners?$orderby=owner_count

See here for example例如,请参见此处

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM