14.12.2006, 09:56
общий
это ответ
Здравствуйте, Munster!
А как организован выпадающий список, создается ли для этого сначала СписокЗначений? Тогда СортироватьПоПредставлению() Вам поможет, особенно если в команде ДобавитьЗначение() Вы сумеете в символьное представление записать число обращений к элементу и (или) алфавитное его представление в нужном Вам порядке или код по справочнику МестаХранения. Число обращений к элементу можно подсчитывать автоматически. Например, комбинированный вариант, из которого выберите нужную Вам часть:
СписокСкладов.ДобавитьЗначение(СпрМестаХранения.ТекущийЭлемент(), "000"+Нрег(СпрМестаХранения.ТекущийЭлемент().Наименование));
- для новой позиции, а при обработке выбора позиции меню:
Знач=СписокСкладов.ПолучитьЗначение(ВыбранныйНомер,МенюСтрока);
ЧислоОбращений=Число(Лев(МенюСтрока,3))+1;
СписокСкладов.УстановитьЗначение(ВыбранныйНомер,Знач,Формат(ЧислоОбращений,"Ч(0)3")+Сред(МенюСтрока,4));
Тогда при сортировке сначала будут наиболее часто выбираемые позиции (а при равном числе - алфавитный порядок).
Имеется в виду, что Список сохраняется в процедуре ПриЗакрытии (из значений типа Справочник.МестаХранения можно сохранять только код) и считывается (и сортируется) в процедуре ПриОткрытии из фиксированного файла.