Jump to content

Удаленная сортировка (в браузере) по дате


x11

Recommended Posts

2 minutes ago, Sherzod said:

Тип поля?

DateTime, Date?

Все возможные варианты испробовал. Назначую через TFDQuery. Сейчас буду пробовать делать невидимую колонку с юникс тайм и пробовать по ней сортировать.

Link to comment
Share on other sites

Выше код работает для datetime 

col.ct == "datetime"

Если тип поля Date, тогда Вы можете применить сл. условие:

col.ct == "date"

И соответственно формат:

'd.m.Y'
Link to comment
Share on other sites

Sherzod.  Я извиняюсь, а где это указать? Раньше я просто создавал поля в самой TFDQuery, через которую делал запросы к БД. Ну и в самой БД на выходе в хранимых процедурах указывал соответствующие.

Link to comment
Share on other sites

Вот к примеру для "date":

function reconfigure(sender, store, columns, oldStore, oldColumns, eOpts) 
{
    sender.getStore().setRemoteSort(false);
    
    columns.forEach(function(col) {  
       if (col.ct == "date" && col.sortable && sender.getStore().remoteSort == false) {
            col.setSorter({
                sorterFn: function(o1, o2) {
                    var v1 = Ext.Date.parse(o1.get(col.dataIndex), 'd.m.Y');
                    var v2 = Ext.Date.parse(o2.get(col.dataIndex), 'd.m.Y');
                    return v1 > v2 ? 1 : (v1 < v2 ? -1 : 0)
                }
            });
        }
    });
}

 

Link to comment
Share on other sites

Вроде через костыль получилось.

На стороне хранимой процедуры

CAST(t1.date_start AS int)  AS 'test'

На стороне клиента просто колонка 'Test' с форматом как int.
Вроде как сортировка по уровням соблюдается (сначала родительские ветви, после дочерние и тд).

error3.png

Link to comment
Share on other sites

На самом деле у меня есть небольшой список функционала который точно работает из под делфи, и не работает на билдере. Стараюсь его избегать. Возможно этот момент тоже добавлю к нему.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...