【发布时间】:2016-03-14 13:19:14
【问题描述】:
我正在尝试使用从成功因素中提取的员工姓名填充下拉列表,但我无法正确显示响应。我可以显示 managerId 和 userId 没问题,只是不显示名字和姓氏。
回复如下:
{
"d": {
"results": [{
"__metadata": {
"uri": "https://apisalesdemo8.successfactors.com:443/odata/v2/EmpJob(seqNumber=1L,startDate=datetime'2010-02-01T00:00:00',userId='spappar1')",
"type": "SFOData.EmpJob"
},
"userId": "spappar1",
"managerId": "rmaxx1",
"employmentNav": {
"__metadata": {
"uri": "https://apisalesdemo8.successfactors.com:443/odata/v2/EmpEmployment(personIdExternal='spappar1',userId='spappar1')",
"type": "SFOData.EmpEmployment"
},
"personNav": {
"__metadata": {
"uri": "https://apisalesdemo8.successfactors.com:443/odata/v2/PerPerson('spappar1')",
"type": "SFOData.PerPerson"
},
"personalInfoNav": {
"results": [{
"__metadata": {
"uri": "https://apisalesdemo8.successfactors.com:443/odata/v2/PerPersonal(personIdExternal='spappar1',startDate=datetime'1990-01-01T00:00:00')",
"type": "SFOData.PerPersonal"
},
"lastName": "Pappar",
"firstName": "Steve"
}]
}
这是我的下拉数据绑定:
var employeeTemplate = new sap.ui.core.ListItem({
text: "{employeeDropDownModel/employmentNav/personNav/personalInfoNav/results>firstName} {employeeDropDownModel/employmentNav/personNav/personalInfoNav/results>lastName}"
});
sap.ui.getCore().getElementById('employeeId').bindItems("employeeDropDownModel>/d/results", employeeTemplate);
任何帮助都会很棒,我尝试了许多不同的组合以使绑定起作用,但无济于事。
【问题讨论】:
-
您是否使用命名模型
employeeDropDownModel?在这种情况下,你的绑定应该是employeeDropDownModel>/etc...(即,如果你使用命名模型,你的绑定应该以namedmodel>为前缀 -
我想知道您为什么尝试访问 array 的
lastName和firstName。因为数组显然没有那个属性。可能有效的方法如下:.....personalInfoNav/results/0/firstName. And as Qualiture said, the>` 属于其他地方。 -
为什么不使用带有扩展功能的 OData 模型?
标签: sapui5