点击此处---> 群内免费提供SAP练习系统(在群公告中)
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
嗨,
我正在UI5应用程序中实现购物车功能,以收集项目集合以进行进一步处理。 我的购物车可以作为我的主从应用程序的功能正常工作。
我要添加的一件事是购物车按钮旁边的计数器,用于通知用户当前购物车中有多少个物品。 当我使用$ count选项时,我的网关服务愉快地返回正确的值。 到目前为止,一切都很好。
我正在努力的是
- 更新按钮旁边的计数器的正确位置
- 检索oData响应
re 1:我决定在 onBeforeRendering 方法中检索计数器。 尽管我很高兴在这里听任何建议。
关于2:我正在使用下面的代码。
onBeforeRendering:function(){ var oCountModel = new sap.ui.model.odata.v2.ODataModel(" <oData GW service>"); oCountModel.read("/img/cartSet/$ count",{ 方法:" GET", 异步:假, 成功:功能(数据){ var response =(JSON.stringify(data)); }, 错误:function(){ } }); },
上面的代码同步调用服务,但不返回服务响应("数据未定义")。 但是,稍后我可以在Chrome的"网络"标签中看到响应。
因此,基本上,该服务可以正常工作并被调用,但是由于某种原因,我似乎无法获得最终的响应。
任何想法/提示我在哪里出错?
servicecall-response.jpeg (29.0 kB)
迈克尔,你好,
您可以在manifest.json中定义模型,然后在控制器的onInit方法中调用。 否则,您也可以调用component.js。
oResult直接返回一个整数值,您可以将其绑定到本地json模型。
将本地json模型属性绑定到购物车按钮
刚刚意识到我回复了我的原始帖子,而不是您的答案。 无论如何...:-)
您好Tarun
首先谢谢您的答复。
我已经将您建议的代码添加到我的onInit方法中,如下所示:
manifest.json中的模型现在看起来像这样:
detailView.xml
Chrome中的网络消息响应如下:
Chrome控制台告诉我:"段'cartSet'找不到资源",这似乎表明我的元数据不匹配,但我看不到原因。 我还尝试提供服务参数,例如:找不到服务接受的段'cartSet(Username = xyz',ItemNo = 1)'的资源。 但这导致控制台中的响应相同(但仍可在GW客户端中使用)。
当我使用$ count参数测试GW服务时,这是成功的响应。 我也尝试过为服务提供服务参数(键和项号),而根据GW服务的编码,则不需要这些参数。 但这并没有改变。
希望这可以进一步阐明这一点。 任何进一步的帮助表示赞赏。
再次感谢
M
我看到您的模型名称是data ..您应该在.getModel()期间添加模型名称
另外,buttontext应该映射到json模型detailView。
嗨,迈克尔,
您是否已将数据源映射到ur manisfeat.json中的模型?
此致
Tarun
您是否尝试过事务/n/iwfnd/traces来查找SAP网关系统收到的http请求的样子?
此致
安德烈
一周热门 更多>