SAP UI5 - Associazione dati
In SAP UI5, data binding conceptviene utilizzato per aggiornare i dati automaticamente associando i dati ai controlli che contengono i dati dell'applicazione. Utilizzando l'associazione dati, è possibile associare controlli semplici come il campo di testo, il pulsante semplice ai dati dell'applicazione ei dati vengono aggiornati automaticamente quando è presente un nuovo valore.
Utilizzando l'associazione dati a due vie, i dati dell'applicazione vengono aggiornati quando il valore del controllo associato cambia. Il valore può essere modificato tramite diversi metodi, come l'input dell'utente, ecc.
In SAP UI5, è possibile utilizzare diversi modelli di dati per il data binding. Questi modelli di dati supportano diverse funzionalità:
Modello JSON
Il modello JSON viene utilizzato per associare oggetti JavaScript ai controlli. Questo modello di dati è un modello lato client ed è consigliato per piccoli set di dati. Non fornisce alcun meccanismo per il paging o il caricamento lato server.
Le caratteristiche principali includono:
- Il modello JSON per il data binding supporta i dati nel formato di notazione JavaScript.
- Supporta il data binding a due vie.
Creating a model instance −
Var oModel = new sap.ui.model.json.JSONModel(dataUrlorData);
Modello XML
Il modello XML di data binding consente di associare i controlli ai dati XML. Viene utilizzato per oggetti lato client e per piccoli set di dati. Non fornisce alcun meccanismo per il paging o il caricamento lato server.
Le caratteristiche principali includono:
- Il modello XML di data binding supporta i dati XML.
- Supporta anche il data binding bidirezionale.
Creating a model instance −
Var oModel = new sap.ui.model.xml.XMLModel(dataUrlorData);
Modello OData
Il modello OData è un modello lato server, quindi tutti i dati sono disponibili sul lato server. Il lato client può vedere solo righe e campi e non puoi utilizzare l'ordinamento e il filtro sul lato client. È necessario inviare questa richiesta al server per completare queste attività.
Il data binding nel modello OData è unidirezionale, ma puoi abilitare il binding bidirezionale usando il supporto di scrittura sperimentale.
Le caratteristiche principali includono:
- Il modello di associazione dati OData supporta dati conformi a Odata.
- Questo modello di dati consente di creare richieste OData e gestire le risposte.
- Supporta l'associazione sperimentale a due vie.
Creating a model instance −
Var oModel = new sap.ui.model.odata.ODataModel (dataUrl [,useJSON, user, pass]);
Assegnazione del modello
È possibile utilizzare il metodo setModel per assegnare il modello a controlli o core specifici.
Sap.ui.getcore().setModel(oModel);
Per associare un modello alla visualizzazione:
Var myView = sap.ui.view({type:sap.ui.core.mvc.ViewType.JS, viewname:”view name”});
myView.setModel(oModel);
Per associare un modello a un controllo:
Var oTable = sap.ui.getCore().byId(“table”);
oTable.setModel(oModel);
È possibile associare le proprietà di un controllo alle proprietà del modello. È possibile associare le proprietà di un modello a un controllo utilizzando il metodo bindproperty -
oControl.bindProperty(“controlProperty”, “modelProperty”);
or by using below methodvar
oControl = new sap.ui.commons.TextView({
controlProperty: “{modelProperty}”
});
Associazione di aggregazione
È possibile utilizzare l'associazione di aggregazione per associare una raccolta di valori come l'associazione di più righe a una tabella. Per utilizzare l'aggregazione, è necessario utilizzare un controllo che funge da modello.
È possibile definire l'associazione di aggregazione utilizzando il metodo bindAgregation.
oComboBox.bindaggregation( “items”, “/modelaggregation”, oItemTemplate);