Страница 1 из 1
А вдруг ! (про сортировку по колонкам в BROWSE)
Добавлено: 05 Февраль 2021, 14:12
Игорь Столяров
Привет всем !
Имею непреодолимое желание задать один старый вопрос ...
(если сказать точнее, то меня имеют пользователи, а я стараюсь как-то вывернуться).
В BROWSE есть прекрасная опция Enable Sort Header.
Мы щелкаем мышкой по колонке - и список сортируется по значению в этой колонке.
Всё очень хорошо, но это должны быть значения из полей просматриваемой таблицы.
А можно (как-то) прикрутить такое же, но по расчётной колонке ?
Например в списке у нас есть колонки СУММА и ОПЛАТА. Их разница показана в колонке ДОЛГ.
И вот совсем очень хочется, что бы можно было щелкать мышкой по шапке и сортировать список по значению в колонке ДОЛГ.
Может я изобретаю телепортатор и всё уже придумано ?
Заранее спасибо за посильное воспоможение и содействие !
А вдруг ! (про сортировку по колонкам в BROWSE)
Добавлено: 05 Февраль 2021, 17:41
gopstop2007
пока нашел решение с помощью доп. таблицы и memory driver
А вдруг ! (про сортировку по колонкам в BROWSE)
Добавлено: 05 Февраль 2021, 18:25
Игорь Столяров
Можно сказать по другому - если некой манипуляцией засунуть расчётное значение в VIEW
по которому строится BROWSE, то мы сможем по нему сортировать LIST ... Надо думать !
А вдруг ! (про сортировку по колонкам в BROWSE)
Добавлено: 06 Февраль 2021, 14:16
kreator
Это фантастика. В смысле допилить этот класс. Самое интересное, что в SQL я это сделаю запросто! Я где-то уже писал, что универсальность классов (поддержка и ISAM и SQL) сильно вредит. Я порой не могу воспользоваться какими-то возможностями SQL.
Для gopstop2007. Можно поле переобозначить через prop:Name. Я правда не проверял.
PS. Замечали поведение данного поделия при наличии пустых полей в столбце? Вроде что-то сделано, а полноценно пользоваться невозможно. Хочешь-не хочешь, либо сам запиливай, либо ищи на стороне (ещё и не найдёшь).
А вдруг ! (про сортировку по колонкам в BROWSE)
Добавлено: 06 Февраль 2021, 15:17
finsoftrz
Сортировать по динамически вычисляемым полям не получится по определению. Вы вначале должны получить и зафиксировать результаты в выборке, а уж потом по ним сортировать. Применительно к клариону, например, получить результат в кьюшку или in memory, а дальше сортируйте, как душе угодно. Динамически вычисляемые значения в кларионовских броузерах добавляют в приложения итерактивность, то есть позволяют видеть некоторые значения без формирования всей выборки. По ним можно фильтровать записи при про смотре, а не сортировать.
А вдруг ! (про сортировку по колонкам в BROWSE)
Добавлено: 06 Февраль 2021, 15:40
Игорь Столяров
Эх !
Через In-Memory любой Игорь может.
А вдруг ! (про сортировку по колонкам в BROWSE)
Добавлено: 07 Февраль 2021, 12:39
artgkx
Formulas - Format Browse - Result: в локальную перем. - Statement: Выражение для вычисления
Локальная перем. - колонка Browse.
Как-то так. У меня формируется строка, в которую собираются значения из нескольких полей. Наверное можно и вычислить.
А вдруг ! (про сортировку по колонкам в BROWSE)
Добавлено: 07 Февраль 2021, 15:09
Игорь Столяров
artgkx писал(а): ↑07 Февраль 2021, 12:39
У меня формируется строка
Это очень хорошо. А сортировка списка щелчком мышки на шапке колонки у Вас работает ?
А вдруг ! (про сортировку по колонкам в BROWSE)
Добавлено: 07 Февраль 2021, 19:27
gopstop2007
Игорь Столяров писал(а): ↑06 Февраль 2021, 15:40
Эх !
Через In-Memory любой Игорь может.
знаю одного, который не может
А вдруг ! (про сортировку по колонкам в BROWSE)
Добавлено: 07 Февраль 2021, 20:29
Игорь Столяров
gopstop2007 писал(а): ↑07 Февраль 2021, 19:27
знаю одного, который не может
Обидеть художника может каждый !
Но не каждый может сказать как сделать сортировку по расчётной колонке ...