国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

[UI5] ODATA V4中的CRUD

這篇具有很好參考價(jià)值的文章主要介紹了[UI5] ODATA V4中的CRUD。希望對大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。


前言

ODATA V4在CRUD方面與V2截然不同。
這篇文章簡單介紹V4中是如何進(jìn)行CRUD操作


一、Read

Model不再有read方法, 一般是把Path綁定到View中進(jìn)行讀取, 如果需要額外的讀取數(shù)據(jù),可使用如下方法

需要在Context中調(diào)用requestObject方法才能實(shí)現(xiàn)數(shù)據(jù)的讀取
oModel.bindContext方法需要綁定對應(yīng)的Entity或者路徑

  • 代碼:
var oModel = this.getView().getModel()
var oContext = oModel.bindContext("/Mara")
oContext.requestObject().then(function (oData) {
    // 處理成功的回調(diào)
    console.log("Data read successfully:", oData);
}).catch(function (oError) {
    // 處理失敗的回調(diào)
    console.error("Error reading data:", oError);
});

  • 結(jié)果:
    [UI5] ODATA V4中的CRUD,UI5,UI5,SAP,Fiori

二、Create

Model不再有create方法

創(chuàng)建和Read不一樣,需要調(diào)用bindList方法創(chuàng)建Binding,然后使用Binding.create方法創(chuàng)建。

// 創(chuàng)建需要的數(shù)據(jù)
var json = {
   "Matnr": 'GOOD',
   "Maktx": 'JOB',
   "Meins": '',
}


var oModel = this.getView().getModel();
var oBinding = oModel.bindList("/Mara")
//創(chuàng)建action
var oContext = oBinding.create(json)
//創(chuàng)建回調(diào)
oContext.created().then(
   function (res) {
       oModel.refresh()

   },
   function (res) {
       alert(res)
   }
)

如果已經(jīng)綁定了一個(gè)Table,則可以直接拿到Bidning
通過Table Binding創(chuàng)建時(shí)不需要刷新也會(huì)自動(dòng)更新數(shù)據(jù)。

var json = {
    "Matnr": 'GOOD',
    "Maktx": 'JOB',
    "Meins": '',
}

var oTable = this.byId("itemTable");
var oBinding = oTable.getBinding("items"); //get binding

// var oModel = this.getView().getModel();
// var oBinding = oModel.bindList("/Mara")

var oContext = oBinding.create(json)
oContext.created().then(
    function (res) {
        // oModel.refresh()  不需要refresh
    },
    function (res) {
        alert(res)
    }
)

三、Update

Model不再有update方法,通過setProperty方法設(shè)置字段屬性,即可自動(dòng)發(fā)送PUT請求并修改后端數(shù)據(jù)

  • 如果是綁定在Table
 var oTable = this.byId("itemTable")
 var selectedItems = oTable.getSelectedItems()

 selectedItems.forEach(item => {
     var oContext = item.getBindingContext()
     oContext.setProperty("Maktx", '測試'); // 方法結(jié)束時(shí),自動(dòng)執(zhí)行batch,如果是多個(gè)字段,則只會(huì)提交一次
 });
  • 或者額外綁定Context,然后再進(jìn)行字段屬性變更
 const contextBinding = oModel.bindContext("/Mara('ZZZ')");
 const targetContext = contextBinding.getBoundContext();
 targetContext.setProperty("Maktx", '測試');
  • 當(dāng)然,也可以綁定到一個(gè)組件之后,再進(jìn)行屬性變更
 this.byId("saveBox").bindElement("/Mara('ZZZ')")
 var oContext3 = this.byId("saveBox").getBindingContext()
 oContext3.setProperty("Maktx", '測試');

四、Delete

刪除可以通過context進(jìn)行,也可以通過model進(jìn)行, 刪除操作不需要調(diào)用refresh方法,刪除后會(huì)自動(dòng)刷新文章來源地址http://www.zghlxwxcb.cn/news/detail-811313.html

  • 在Table中刪除所選行
onDeleteButtonPress: function () {
    var that = this
    var oTable = this.byId("itemTable")
    var selectedItems = oTable.getSelectedItems()

    selectedItems.forEach(item => {
        var oContext = item.getBindingContext()
        oContext.delete().then(
            function (res) {
                // oModel.refresh()
                alert("ok")
            },
            function (res) {
                alert("error")
            })
    });
},
  • 使用Model進(jìn)行刪除
var oModel = this.getView().getModel()
oModel.delete("/Mara('ZZZ')").then(
    function (res) {
        // oModel.refresh()
        // alert("ok")
    },
    function (res) {
        // alert("error")
    })

到了這里,關(guān)于[UI5] ODATA V4中的CRUD的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • SAP UI5 walkthrough step4 XML Views

    SAPUI5 指出多種VIEW類型,包括XML,HTML,JavaScript 推薦使用XML,因?yàn)榭勺x性更高 我們提前介紹一下MVC架構(gòu)。 MVC是一種軟件架構(gòu)模式,它包括三個(gè)主要組件:模型(Model)、視圖(View)和控制器(Controller)。這三個(gè)組件分別負(fù)責(zé)處理應(yīng)用程序的數(shù)據(jù)、用戶界面和用戶輸入。MVC的設(shè)計(jì)

    2024年02月04日
    瀏覽(60)
  • SAP UI5 Gateway Export 和 Client Export 的比較

    SAP UI5 SmartTable 控件支持兩種類型的 Excel 導(dǎo)出操作: 客戶端導(dǎo)出。這種類型的導(dǎo)出是默認(rèn)類型。 SAP Gateway Foundation 的 SAP Gateway 導(dǎo)出。 SAP Gateway:如果有超過 100,000 個(gè)單元格或最多 500,000 個(gè)單元格,則顯示警告,具體取決于會(huì)話和 ABAP 內(nèi)存的配置。 SAP Client:根據(jù)使用的設(shè)備來

    2024年02月04日
    瀏覽(18)
  • SAP Fiori開發(fā)中的JavaScript基礎(chǔ)知識(shí)15 - 原型,object,constructor,class,繼承

    SAP Fiori開發(fā)中的JavaScript基礎(chǔ)知識(shí)15 - 原型,object,constructor,class,繼承

    本文將介紹JavaScript中的核心概念 - 原型,并會(huì)介紹基于原型的應(yīng)用場景object,constructor,class,繼承。 本文會(huì)將這幾個(gè)核心概念匯總在一篇博客中,因?yàn)檫@些概念是觸類旁通的,希望對你有幫助。 在JavaScript中,幾乎所有的東西都是對象,每個(gè)對象都有一個(gè) 特殊的內(nèi)部屬性

    2024年04月23日
    瀏覽(43)
  • 【SAP UI5 控件學(xué)習(xí)】DAY04 Input組Part IV 完結(jié)&&List組Part I

    【SAP UI5 控件學(xué)習(xí)】DAY04 Input組Part IV 完結(jié)&&List組Part I

    和Data Picker類似,Time Picker允許用戶選擇相應(yīng)的時(shí)間。 它有以下一些比較常用的屬性。 value 用于顯示Input中的時(shí)間的值,這個(gè)屬性只能接受字符串的值,如果是 UI5.getInstance() 獲取到的時(shí)間,需要轉(zhuǎn)化成相應(yīng)的字符串才可以 valueFormat 用于設(shè)置顯示日期的格式,這個(gè)格式會(huì)影響

    2024年02月13日
    瀏覽(22)
  • 以前編寫好能夠正常運(yùn)行的 SAP UI5 代碼,幾個(gè)月后忽然不能運(yùn)行了該怎么辦?

    以前編寫好能夠正常運(yùn)行的 SAP UI5 代碼,幾個(gè)月后忽然不能運(yùn)行了該怎么辦?

    以筆者本套教材為例,每一步驟的源代碼都托管在本人 Github 倉庫里,每次上傳之前,都確保本地測試通過。 但筆者編寫過程中發(fā)現(xiàn),之前測試通過的代碼,可能幾個(gè)月之后再執(zhí)行,就會(huì)遇到白屏現(xiàn)象,即應(yīng)用無法正常加載,或者無法在調(diào)試模式下正常加載。 舉個(gè)具體的例子

    2024年02月03日
    瀏覽(22)
  • SAP Fiori 問題收集

    SAP Fiori 問題收集

    事務(wù)代碼篇 啟動(dòng)工作臺(tái):/N/UI2/FLP 錯(cuò)誤日志:? ?/n/IWFND/ERROR_LOG 服務(wù)清單:? /n/IWFND/MAINT_SERVICE? 創(chuàng)建語義對象:/N /UI2/SEMOBJ 創(chuàng)建目錄: /N/UI2/FLPD_CONF(cross-client)或 /N/UI2/FLPD_CUST(specfic client) 問題篇 問題1.SAP Gateway has been deactivated 去如下路徑去激活網(wǎng)關(guān) 問題2. No System Alias

    2024年02月13日
    瀏覽(12)
  • 10. SAP ABAP OData 服務(wù)如何支持修改(Update)操作

    10. SAP ABAP OData 服務(wù)如何支持修改(Update)操作

    本教程的前九篇文章,我們已經(jīng)先后介紹了 SAP ABAP OData 服務(wù),如何支持讀取和過濾這兩種不會(huì)引起系統(tǒng)出現(xiàn) Side Effect(即系統(tǒng)狀態(tài)被影響)的操作,以及創(chuàng)建(Create)和刪除(Delete) 這兩種會(huì)引起系統(tǒng)出現(xiàn) Side Effect 的操作。 本文繼續(xù)介紹 SAP ABAP OData 服務(wù)如何實(shí)現(xiàn)修改(Update)操作。

    2024年02月01日
    瀏覽(12)
  • [UI5 常用控件] 01.Text

    [UI5 常用控件] 01.Text

    Text是UI5中最常用的控件之一。 記錄Text常用的功能。 控件路徑是sap.m.Text Controller View 普通綁定: 別名綁定: binding綁定: 別名binding綁定: bindText bindText with alias bindProperty bindElement setText getText

    2024年01月24日
    瀏覽(26)
  • [UI5 常用控件] 09.IconTabBar,IconTabHeader,TabContainer

    [UI5 常用控件] 09.IconTabBar,IconTabHeader,TabContainer

    本章節(jié)記錄常用控件 IconTabBar,IconTabHeader, TabContainer 其路徑分別是: sap.m.IconTabBar sap.m.IconTabHeader sap.m.TabContainer 在SAP UI5中,IconTabBar 是一種用戶界面控件,通常用于創(chuàng)建具有多個(gè)標(biāo)簽頁的導(dǎo)航界面。它允許用戶通過標(biāo)簽切換內(nèi)容區(qū)域,每個(gè)標(biāo)簽通常與一個(gè)特定的視圖或功能相關(guān)

    2024年02月20日
    瀏覽(49)
  • [UI5 常用控件] 02.Title,Link,Label

    [UI5 常用控件] 02.Title,Link,Label

    本章節(jié)記錄常用控件Title,Link,Label。 其路徑分別是: sap.m.Title sap.m.Link sap.m.Label Title可以結(jié)合其他控件一起使用 可以在Panel-headerToolbar-OverflowToolbar中添加Title 記錄Link的5種用法: 綁定press事件,不可用狀態(tài),綁定地址,下劃線,加粗 Labe一般是給Input添加標(biāo)簽時(shí)使用 分別是必輸

    2024年01月25日
    瀏覽(23)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包