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);