SAP UI5 - 将用户数据传递到后端以执行选择

时间:2018-01-31 11:14:00

标签: sql input filter odata sapui5

首先,我是UI5的新手。我正在Eclipse中开发。

我正在构建一个用户可以搜索航班的应用。因此,他有一个简单的表单,包括" Carrid"," Fldate"等文本字段。 按下按钮后,他将导航到第二个视图,其中相关数据列在表格中。

我创建了一个OData服务来从后端的表中获取数据。它可以工作,但我认为它可能非常低效,因为我从OData服务的getEntitySet方法中选择表中的所有数据。

  SELECT *
  FROM SFLIGHTS
  INTO TABLE et_entityset.

但我想要达到类似的目的:

  SELECT * FROM sflights INTO TABLE lt_sflights
  WHERE connid    IN ls_seloptions-connid    AND
        carrid    IN ls_seloptions-carrid    AND
        fldate    IN ls_seloptions-fldate    AND
        countryfr IN ls_seloptions-countryfr AND
        countryto IN ls_seloptions-countryto AND
        cityfrom  IN ls_seloptions-cityfrom  AND
        cityto    IN ls_seloptions-cityto.

所以基本上我需要将数据从输入字段传递到后端系统,以便以这种方式执行选择。

理论上我可以通过对模型应用过滤器来过滤用户输入的OData-entityset

    var oFilters = [new sap.ui.model.Filter("Carrid", "EQ", "AA")];
    oTable.bindRows("/SFLIGHTSSet", oFilters);

但是我认为当通过odata服务发送包含大量条目的表格时效率相当高?因此,我认为最好将用户数据发送到后端,并在后端选择正确的条目,然后通过OData发回。

我希望你理解我的问题并且可以帮助我!

0 个答案:

没有答案