SAPUI5 - Применить начальную сортировку для SmartTable

Я занимаюсь разработкой приложения SAPUI5 и у меня возникли проблемы с установкой начальной сортировки для SmartTable. Пробовал этот Sapui5: Как мне установить начальный порядок сортировки в smarttable? но не сработало.

Мой код: Просмотр

<smartTable:SmartTable entitySet="CustomerOrders" id="tbOrders" tableType="Table" useExportToExcel="true" beforeExport="onBeforeExport"
            header="Ordens de Manutenção" showRowCount="true" enableAutoBinding="true" beforeRebindTable="onBeforeRebindTable"
            initiallyVisibleFields="PriorityName,OrderTypeType,OrderTypeName,Id,DateOpen,HourOpen,BrandName,EquipmentId,EquipmentNumber,SymptomName"
            class="sapUiResponsiveContentPadding">

контроллер:

onBeforeRebindTable: function(oEvent) {
var oSmartTable = oEvent.getSource();
if (this._isOnInit == null) this._isOnInit = true; //To set this initial sorter only when view start
if (this._isOnInit) {
    oSmartTable.applyVariant({
        sort: {
            sortItems: [{
                    columnKey: "PriorityName",
                    operation: "Ascending"
                }
            ]
        }
    });
    this._isOnInit = false;
}

Но сортировка применяется только визуально, как эти изображения. 1

2

Правильный порядок таков. 3

1 ответ

Решение

Ознакомьтесь с документацией по API. Самый простой способ - это изменить массив "sorter", добавив его в параметр "oEvent" в хуке "beforeRebindTable".

Этот подход более легкий и стабильный. "ApplyVariant" был разработан, чтобы охватить немного другой сценарий.

Другие вопросы по тегам