Model SAPUI5 OData模型在运行时更改属性
我有一个带有网格表的Fiori列表报告,希望设置属性的状态,以便突出显示该行。如何在extension controller中检索OData模型并对其进行迭代以设置property.status-“Error/Warning”并设置模型/刷新 我能够以Model SAPUI5 OData模型在运行时更改属性,model,odata,sapui5,Model,Odata,Sapui5,我有一个带有网格表的Fiori列表报告,希望设置属性的状态,以便突出显示该行。如何在extension controller中检索OData模型并对其进行迭代以设置property.status-“Error/Warning”并设置模型/刷新 我能够以this.getView().getModel().getProperty(“/”)的形式获取控制器中的模型 如何循环读取每个记录并根据某些条件设置属性的状态 提前谢谢 设置标签控制器格式的示例(使用setInterval模拟模型更改)—— 正文
this.getView().getModel().getProperty(“/”)的形式获取控制器中的模型
如何循环读取每个记录并根据某些条件设置属性的状态
提前谢谢 设置标签控制器格式的示例(使用setInterval模拟模型更改)——
正文
//格式化程序定义
var myFormatter={
formatText:函数(状态){
如果(状态==“正常”){
返回“好”;
}
返回“坏”;
}
};
//控制器定义
sap.ui.define([
“jquery.sap.global”,
“sap/ui/core/mvc/Controller”,
'sap/ui/model/json/JSONModel'
],函数(jQuery、控制器、JSONModel){
“严格使用”;
var cController=Controller.extend(“myView.Template”{
onInit:功能(oEvent){
var-oModel=newjsonmodel({
状态:“OK”,
});
var oView=this.getView();
oView.setModel(oModel);
setInterval(函数(){
oModel.setProperty(“/status”,oModel.getProperty(“/status”)==“OK”?“ERR”:“OK”);
}, 1000);
}
});
返回控制器;
});
//实例化视图和显示
var oView=sap.ui.xmlview({
viewContent:jQuery('#oView').html()
});
oView.placeAt(“内容”);
您不能在它们上面循环。将控件绑定到status属性。该模型已绑定到Grid Table,因此无需循环到以更新状态。条件可以在格式化程序中提供。谢谢,回答中是否提供了任何参考/链接/代码段谢谢代码段。然而,对于列表报告模板来说,这很棘手。找到了另一种方法,可以添加一个额外的列并将其设置为有效的格式化程序。谢谢
<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta charset="UTF-8">
<title>Text</title>
<script id="sap-ui-bootstrap" type="text/javascript" src="https://sapui5.hana.ondemand.com/resources/sap-ui-core.js" data-sap-ui-theme="sap_bluecrystal" data-sap-ui-libs="sap.m" data-sap-ui-xx-bindingSyntax="complex">
</script>
<!-- XML-based view definition -->
<script id="oView" type="sapui5/xmlview">
<mvc:View height="100%" controllerName="myView.Template" xmlns:core="sap.ui.core" xmlns:mvc="sap.ui.core.mvc" xmlns="sap.m" class="viewPadding">
<Label text="{path:'/status', formatter: 'myFormatter.formatText'
}" />
</mvc:View>
</script>
<script>
//Formatter Definition
var myFormatter = {
formatText: function(status) {
if (status === "OK") {
return "Good";
}
return "Bad";
}
};
// Controller definition
sap.ui.define([
'jquery.sap.global',
'sap/ui/core/mvc/Controller',
'sap/ui/model/json/JSONModel'
], function(jQuery, Controller, JSONModel) {
"use strict";
var cController = Controller.extend("myView.Template", {
onInit: function(oEvent) {
var oModel = new JSONModel({
status: "OK",
});
var oView = this.getView();
oView.setModel(oModel);
setInterval(function() {
oModel.setProperty("/status", oModel.getProperty("/status") === "OK" ? "ERR" : "OK");
}, 1000);
}
});
return cController;
});
// Instantiate the View and display
var oView = sap.ui.xmlview({
viewContent: jQuery('#oView').html()
});
oView.placeAt('content');
</script>
</head>
<body class="sapUiBody" role="application">
<div id="content"></div>
</body>
</html>