Текущий проект настройки, над которым я работаю, требует отображения/редактирования сетки с «порядком сортировки» для записей. Поле «SortOrder» считывается только с помощью кнопок «вверх/вниз», чтобы пользователь мог повторно заказать элементы в сетке.Перемещение записей вверх/вниз в сетке с полем «SortOrder» и кнопками «Вверх»/«Вниз»
Столбец «SortOrder» в ЦАП является простым полем Int.
Оператор PXSelect для сетки использует OrderBy >> для отображения записей.
Сетка в ASPX является определяется с «SyncPosition = True»
Я добавил кнопку вверх/вниз, который увеличивает/уменьшает значение «SortOrder» для текущей выбранной записи.
Проблема, с которой я сталкиваюсь, заключается в том, что при первом нажатии «Вверх» или «Вниз» поле «SortOrder» обновляется, однако строки не перемещаются. Как только я нажму «Сохранить», чтобы сохранить обновление, сетка затем обновится с правильным порядком.
Я просмотрел остальную часть кода, но все другие ситуации, когда это используется, предназначены для древовидных представлений, а не для сеток.
Я попытался добавить View.RequestRefresh() в конце моего действия, но это не вызывает переупорядочения.
Что было бы лучшим способом без Персиста после каждого перехода, чтобы получить сетку, чтобы обновить и отобразить текущий порядок из значений кеша? Как обычно, я предполагаю, что я пропускаю что-то простое.
Любые советы будут оценены.
Благодарим за указатель. В итоге он удалил «Order By» в начальном виде и обновил методы перемещения, чтобы быть более симулятивными к приведенным выше. Методы javascript просто удерживают текущую строку после перемещения, поэтому вы можете продолжать нажимать вверх/вниз –
@JeffWilliams благодарит за продолжение – Gabriel