Некорректное расположение полей в детали Связи карточки задачи
После добавления одного поля в карточку задачи и в EntityConnection, поля начинают "плясать". Иногда открывается в таком виде, при этом заполненные значения не видны.
И после рефреша всё проходит, но потом может появиться снова
Как с этим бороться?
Нравится
1) Делаем select запрос в EntityConnection, видим поле Position, радуемся, настраиваем порядок.
2) Обновляем деталь, видим беспорядок, грустим (сортировка как бы есть, но её нет, т.к. в коде детали хлам, который не работает)
3) Вспоминаем, что у нас есть руки, и редактируем EntityConnectionsDetailV2:
methods: { /** * Убираем позиции с 999 индексом (исключаем ненужные связи) * */ removePositions: function(item) { return item.$Position !== 999; }, /** * обработка и сортировка связей * */ processEntityConnectionsResponse: function(collection) { var filtered = collection.filterByFn(this.removePositions, this); var sorted = filtered.sort(null, null, function(a, b) { var v1 = a.$Position; var v2 = b.$Position; return v1===v2 ? 0 : (v1 > v2 ? 1 : -1); }); collection.clear(); collection.loadAll(sorted); this.loadColumnValues(collection); return sorted; } }
Молитвой и божьим словом, на сколько я помню обращения в саппорт коллег))
1) Делаем select запрос в EntityConnection, видим поле Position, радуемся, настраиваем порядок.
2) Обновляем деталь, видим беспорядок, грустим (сортировка как бы есть, но её нет, т.к. в коде детали хлам, который не работает)
3) Вспоминаем, что у нас есть руки, и редактируем EntityConnectionsDetailV2:
methods: { /** * Убираем позиции с 999 индексом (исключаем ненужные связи) * */ removePositions: function(item) { return item.$Position !== 999; }, /** * обработка и сортировка связей * */ processEntityConnectionsResponse: function(collection) { var filtered = collection.filterByFn(this.removePositions, this); var sorted = filtered.sort(null, null, function(a, b) { var v1 = a.$Position; var v2 = b.$Position; return v1===v2 ? 0 : (v1 > v2 ? 1 : -1); }); collection.clear(); collection.loadAll(sorted); this.loadColumnValues(collection); return sorted; } }