Я пытаюсь сделать привязку odata на tableselectdialog. По некоторым причинам мне сложно сделать фрагмент с использованием SAP WEB IDE, поэтому я не использовал фрагменты для диалога и просто сделал диалог на контроллере. Предполагая, что большинство свойств таблицы можно увидеть на tableelectdialog, я ожидал, что у меня не возникнут какие-либо ошибки. Я смог связать свою одату на столе. Но когда я реализовал tableelectdialog, привязка данных не работает. Может ли кто-нибудь помочь мне решить эту ошибку. Ниже мой код.OData Binding в TableSelectDialog SAPUI5
Комбинированный вызов вызывает событие с помощью метода handleAddressType. OData я использую/сок/ОП/OData/srmnxp/UTIL
handleAddressType: function(oEvent) {
alert(oEvent.oSource.getSelectedKey());
var selectedAddressKey = oEvent.oSource.getSelectedKey();
var otableSelectDialog = new sap.m.TableSelectDialog("tableSelectD", {
noDataText: "No Address Found",
title: "Select Address",
columns: [
new sap.m.Column({
header: new sap.m.Label({
text: "AddressNo"
})
}),
new sap.m.Column({
header: new sap.m.Label({
text: "Name"
})
}),
new sap.m.Column({
header: new sap.m.Label({
text: "City"
})
}),
new sap.m.Column({
header: new sap.m.Label({
text: "Country"
})
})
],
items: {
path: "/",
template: new sap.m.ColumnListItem({
cells: [
new sap.m.Text({
text: "{UTIL>AddressNo}"
}),
new sap.m.Text({
text: "{UTIL>Name}"
}),
new sap.m.Text({
text: "{UTIL>City}"
}),
new sap.m.Text({
text: "{UTIL>Country}"
})
]
})
}
});
otableSelectDialog.bindAggregation("items", "UTIL>/ShipToAddressCollection?$filter=Addrtype%20eq%20%27" + selectedAddressKey + "%27",
new sap.m.ColumnListItem({
cells: [
new sap.m.Text({
text: "{UTIL>AddressNo}"
}),
new sap.m.Text({
text: "{UTIL>Name}"
}),
new sap.m.Text({
text: "{UTIL>City}"
}),
new sap.m.Text({
text: "{UTIL>Country}"
})
]
}));
otableSelectDialog.open();
}
Спасибо заранее
My Util Odata установлен в component.js. Я предполагаю, что, поскольку я буду связывать путь viw bindAggregation, не имеет значения, что я наложу на путь, поскольку он все равно будет заменен. – melai
На самом деле это на configuration.js { название: "UTIL", masterCollection: "ShipToAddressCollection", serviceUrl:. URI ("/ сок/ОПУ/OData/srmnxp/UTIL /") каталог(), isDefault: false, mockedDataSource: "/srm.shoppingcart.create/model/metadata.xml" }, – melai
@melai Вы можете связать несколько моделей одновременно, поэтому вы их назовете (UTIL в этом случае). Если вы указали имя, вы должны использовать его. В противном случае структура будет искать модель без имени (глобальная модель). – Marc