2015-10-26 3 views
1

Я разрабатываю приложение Fiori для отображения некоторых данных о продажах, вызванных из службы OData. У меня есть заголовок (invoiceHeaderSet) с полем «Waerk» для отображения ключа валюты.XML-представление: как привязать два разных пути к одному элементу?

У меня есть позиции (/ invoiceHeaderPositionsNav), привязанные к таблице. Теперь я хочу отобразить поле заголовков «Waerk» рядом с полем позиций каждой позиции «Netwr».

Как это сделать в представлениях XML без создания избыточных локальных моделей? Ниже вы увидите пример моей проблемы с .

// this view is bound to OData /invoiceHeaderSet 
<ObjectHeader 
    numberUnit="{Waerk}"/> <-- does work 
    <Table 
    items="{ 
     path: 'invoiceHeaderPositionsNav' 
     }" /> 
     <ColumnListItem 
     <Text text="{'Netwr'} <-- does work 
        {'/invoiceHeaderSet/Waerk'}"/> <-- does not work    

ответ

0

Раствор А

ли вы активируете сложный синтаксис связывания в самонастройки части вашего index.html?

data-sap-ui-bindingSyntax="complex" 

Раствор B

Что вы могли бы также сделать, это писать свой собственный метод форматирования. Для этого вы должны изменить ваши привязки к чему-то вроде этого:

text="{ parts: [{ path: 'Netwr' }, { path: '/invoiceHeaderSet/Waerk' }], formatter: '.formatTitle' }" 

А в вашем контроллере вы должны реализовать функцию formatTitle, е. г.

formatTitle: function (sNetwr, sWaerk) { 
    return sNetwr + " " + sWaerk; 
}, 
+0

Прошу прощения, если я вводит вас в заблуждение, но '/ invoiceHeaderSet/Waerk' был просто счастливым догадком. Вы уверены, что это сработает? – SDD64

+1

Я думал, что ваша проблема состояла в том, чтобы связать несколько путей с одним элементом. Мое решение помогает в решении этой проблемы. Если ваша проблема заключается в доступе к определенному пути вашей модели, тогда вы должны показать нам свою модель (некоторые json) и перефразировать ваш вопрос. – Marc

Смежные вопросы