1С: Сортировка таблицы значений на управляемой форме
По умолчанию, не понятно почему на платформе не завезено средство сортировки таблицы значений отображаемой на форме. Поэтому выходом может быть например такое решение:
- добавляем команды СортироватьПоКолонкеВозр и СортироватьПоКолонкеУбыв
- добавляем их в контекстное меню
- Код команды может быть такой:
&НаКлиенте
Процедура СортироватьПоКолонке(Команда)
ТЭ_имя_объект=ТекущийЭлемент.Имя;
ТЭ_поле=ТекущийЭлемент.ТекущийЭлемент.имя;
имяКолонки=СтрЗаменить( ТЭ_поле,ТЭ_имя_объект,"");
если команда.имя="СортироватьПоКолонкеУбыв" тогда
СортироватьНасервере(ТЭ_имя_объект,имяКолонки,"Убыв");
конецесли;
если команда.имя="СортироватьПоКолонкеВозр" тогда
СортироватьНасервере(ТЭ_имя_объект,имяКолонки,"Возр");
конецесли;
КонецПроцедуры
&НаСервере
Процедура сортироватьНасервере(имяОбъекта,имяКолонки,ВидСортировки)
тз= РеквизитФормыВЗначение("БуферТЗ");
тз.Сортировать(имяКолонки+" "+ВидСортировки);
ЗначениеВРеквизитФормы(ТЗ,"БуферТЗ");
конецпроцедуры
В результате получаем что-то подобное:
