Как добавить сортировку в журнале?

1. O-Planet 6432 13.08.08 15:45 Сейчас в теме
Есть некий документ, у него имеется форма списка. В одну из колонок списка вывожу дату, которая не является реквизитом документа, а берется по ссылке на документ в строке из некоего регистра:

Код
Процедура ДокументСписокПриВыводеСтроки(Элемент, ОформлениеСтроки, ДанныеСтроки)
  ТекДата=ПолучитьДатуОповещения(ДанныеСтроки.Ссылка);
  Если ТекДата=Неопределено Тогда
    ОформлениеСтроки.Ячейки.ДатаНапоминания.Значение="";
  Иначе   
    ОформлениеСтроки.Ячейки.ДатаНапоминания.Значение=Формат(ТекДата,"ДДММГГ");
  КонецЕсли;
КонецПроцедуры
Показать полностью


Вопрос: можно ли как-то организовать сортировку списка по этой дате?
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. poppy 13.08.08 16:35 Сейчас в теме
Имхо в такой постановке = никак.

Процедура "срабатывет" при прорисовке строк на экране. До этого необходимо выполнить сортировку строк, однако значение этой колонки пока не определено, потому что строки еще не выводились на экран. Замкнутый круг получется...

Может к таблице значений присмотреться?
3. ATOM_MAN 13.08.08 17:28 Сейчас в теме
Процедура ДокументСписокПриВыводеСтроки(Элемент, ОформлениеСтроки, ДанныеСтроки)
ДокументСписок.Порядок.Установить("ДатаНапоминания Возр");
КонецПроцедуры

Но при большом количестве записей будет очень тормозить, поэтому лучьше сделать отдельную кнопку для сортировки.
4. O-Planet 6432 13.08.08 18:04 Сейчас в теме
Итить! Проверю сейчас. Впервые на Инфостарте толковые ответы по восьмерке пришли раньше, чем на Мисте.
5. O-Planet 6432 13.08.08 18:10 Сейчас в теме
... разумеется, повешу ДокументСписок.Порядок.Установить("ДатаНапоминания Возр"); на кнопку...
6. ATOM_MAN 13.08.08 18:12 Сейчас в теме
7. poppy 14.08.08 03:01 Сейчас в теме
Планет, получилось?

Кстати, что ты хотел изобразить этим: Формат(ТекДата,"ДДММГГ");?

Может лучше так: Формат(ТекДата,"ДФ=dd.MM.yy")...
И условие явно лишнее, потому что Формат(Неопределено,"ДФ=dd.MM.yy") = ""
8. poppy 14.08.08 03:43 Сейчас в теме
Еще косяк.

В строке
ОформлениеСтроки.Ячейки.ДатаНапоминания.Значение=Формат(ТекДата,"ДДММГГ");
ячейке присваивается строковое представление даты. Сортировки строк и дат дают существенно разный результат. Поэтому, лучше написать так:
Код
ОформлениеСтроки.Ячейки.ДатаНапоминания.Значение=ТекДата;
ЭлементыФормы.ДокументСписок.Колонки.ДатаНапоминания.Формат = "ДФ=dd.MM.yy";
Показать полностью
9. dotBY 19.08.08 19:20 Сейчас в теме
попробуй устанавливать порядок, как советует атоммэн ДокументСписокПриПолученииДанных... срабатывает гораздо реже, имхо тормозить не должно очень сильно
10. O-Planet 6432 19.08.08 20:33 Сейчас в теме
Сегодня вечером руки дойдут. Отпишусь.
11. O-Planet 6432 08.09.08 08:39 Сейчас в теме
Кстати, не работает... Так и пришлось делать доп. реквизит.
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот