SAP UI5 - vinculação de dados
No SAP UI5, data binding concepté usado para atualizar os dados automaticamente, associando os dados aos controles que contêm os dados do aplicativo. Usando a vinculação de dados, você pode vincular controles simples, como campo de texto, botão simples aos dados do aplicativo, e os dados são atualizados automaticamente quando há um novo valor.
Usando a vinculação de dados bidirecional, os dados do aplicativo são atualizados quando o valor do controle vinculado é alterado. O valor pode ser alterado por meio de diferentes métodos, como entrada do usuário, etc.
No SAP UI5, diferentes modelos de dados podem ser usados para vinculação de dados. Esses modelos de dados oferecem suporte a diferentes recursos -
Modelo JSON
O modelo JSON é usado para vincular objetos JavaScript a controles. Este modelo de dados é um modelo do lado do cliente e é sugerido para pequenos conjuntos de dados. Ele não fornece nenhum mecanismo para paginação ou carregamento do lado do servidor.
Os principais recursos incluem -
- O modelo JSON para vinculação de dados suporta dados no formato de notação JavaScript.
- Suporta vinculação de dados bidirecional.
Creating a model instance −
Var oModel = new sap.ui.model.json.JSONModel(dataUrlorData);
Modelo XML
O modelo XML de vinculação de dados permite vincular os controles aos dados XML. É usado para objetos do lado do cliente e para pequenos conjuntos de dados. Ele não fornece nenhum mecanismo para paginação ou carregamento do lado do servidor.
Os principais recursos incluem -
- O modelo XML de ligação de dados suporta dados XML.
- Ele também suporta vinculação de dados bidirecional.
Creating a model instance −
Var oModel = new sap.ui.model.xml.XMLModel(dataUrlorData);
Modelo OData
O modelo OData é um modelo do lado do servidor, portanto, todos os dados estão disponíveis no lado do servidor. O lado do cliente pode ver apenas linhas e campos e você não pode usar classificação e filtragem no lado do cliente. É necessário enviar essa solicitação ao servidor para concluir essas tarefas.
A vinculação de dados no modelo OData é uma maneira, mas você pode habilitar a vinculação bidirecional usando o suporte de gravação experimental.
Os principais recursos incluem -
- O modelo OData de vinculação de dados oferece suporte a dados compatíveis com Odata.
- Este modelo de dados permite que você crie solicitações OData e manipule respostas.
- Suporta ligação experimental bidirecional.
Creating a model instance −
Var oModel = new sap.ui.model.odata.ODataModel (dataUrl [,useJSON, user, pass]);
Atribuindo o modelo
Você pode usar o método setModel para atribuir o modelo a controles específicos ou núcleo.
Sap.ui.getcore().setModel(oModel);
Para vincular um modelo à visualização -
Var myView = sap.ui.view({type:sap.ui.core.mvc.ViewType.JS, viewname:”view name”});
myView.setModel(oModel);
Para ligar um modelo a um controle -
Var oTable = sap.ui.getCore().byId(“table”);
oTable.setModel(oModel);
Você pode vincular as propriedades de um controle às propriedades do modelo. Você pode vincular as propriedades de um modelo a um controle usando o método bindproperty -
oControl.bindProperty(“controlProperty”, “modelProperty”);
or by using below methodvar
oControl = new sap.ui.commons.TextView({
controlProperty: “{modelProperty}”
});
Vinculação de agregação
Você pode usar a vinculação de agregação para vincular uma coleção de valores, como vincular várias linhas a uma tabela. Para usar a agregação, você deve usar um controle que atua como um modelo.
Você pode definir a ligação de agregação usando o método bindAgregation.
oComboBox.bindaggregation( “items”, “/modelaggregation”, oItemTemplate);