Я пытаюсь связать SmartTable с сервисом odata, но таблица показывает «Нет данных». Мой код, как показано ниже:SmartTable Binding с сервисом oData
<smartTable:SmartTable
id="PersonSmartTable"
entitySet="DataSetInODataService"
tableBindingPath = "Odata 2 Model Name definded in Menifest.json"
tableType="ResponsiveTable"
useExportToExcel="false"
useVariantManagement="false"
useTablePersonalisation="true"
header="The Persons"
showRowCount="true"
enableAutoBinding="false">
<!-- layout data used to make the table growing but the filter bar fixed -->
<smartTable:layoutData>
<FlexItemData growFactor="1"/>
</smartTable:layoutData>
</smartTable:SmartTable>
В таблице сетки я использовал код связывания данных, как
rows="{ path: 'oData 2 Model Name>/DataSetInODataService' }"
Может ли один предоставить мне образец кода для этого?
Благодаря Суман
Я обновленный код XML и удалили «tableBindingPath = OData 2 Название модели definded в Menifest.json ' раздел. Также я добавил 'enableAutoBinding = true'. Но я все еще не вижу данных. Я упомянул Model в «manifest.json», и модель может быть доступна из контроллера, потому что я могу получить модель с этим кодом «var oModel = this.getView(). GetModel (МОДЕЛЬНОЕ ИМЯ)». @marcelbrueckner –
Если вы хотите связать именованную модель вместо стандартной по умолчанию (которая является моделью «без имени» (пустая строка) ниже пути /sap.ui5/models вашего manifest.json), вы должны привязать ее к Управление SmartTable выглядит так: 'oSmartTable.setModel (oModel)'. Я соответствующим образом обновил свой ответ. – marcelbrueckner
Вероятно, проблема возникает для '$ metadata'. Теперь я установил модель для SmartTable 'var oSmartTable = this.getView(). ById (« PersonSmartTable »); oSmartTable.setModel (oModel); 'но все же показывается Нет данных. Я могу видеть метаданные в сервисе, если в браузере url 'HANA_SERVICES.xsodata? $ Metadata', проверьте, но, вероятно, мне нужно сделать что-то еще для аннотаций. Мне непонятно, нужно ли мне создавать файл metadata.xml и загружать локально, как вы показали? Можете ли вы предоставить некоторую ссылку/код, который может мне помочь. –