Последнее обновление: 23 мая 2015 в 14:58
Подпишись на RSS
rss Подпишитесь на RSS, чтобы всегда быть в курсе событий.

Приобрел внешний жесткий диск, WD — шку. И при подключении Windows отказалась распознавать распознавать автоматически, выдав при этом сообщение Windows не удаётся загрузить программу для установки Volume. Причем в консоли управления дисками (мой компьютер (правой) — Управление — Управление Дисками) винчестер виден, но ему не присвоена буква, если присвоить ее вручную, то жесткий диск отлично […]


В 30 километрах от Пскова находится небольшой городок — Изборск (Старый Изборск). Интересен он тем, что там находится древняя крепость «Изборск». Примечательна она тем, что Изборская крепость древнее одного из старейших городов России — Пскова. Изборск, который в летописях упомянут в 862 году, древнее Пскова (903г.), чуть моложе Великого Новгорода (859г.), а некоторые считают, что […]


Метки

Метки записей
Свертка по партиям office 2003 партии Интренет Мужчина и женщина Игры Взлом 1 Фото Драйвер ODBC скачать Бухгалтерия Пошаговая свертка homachi локальная сеть через интернет перенос документов восстановить нумерацию Взлом 1С Отзывы свертка код защита уменьшить размер базы дравер MySQL скачать вирус эмулирует нажатие Win контент-провайдер LiveCD Dr.Web Печатные формы Загрузка с компакт - диска Автомобили связь свертка в картинках Новая форма счет-Фактуры Проблемы сертфикаты просроченная дебиторская задолженность перенумарация Драйвера Структура 1С расчет ПЗД мошенничество Zver DVD Программы Спорт антивирусы скачать конвертер office 2003-2007 Спутниковое ТВ Отчет заблокирован Взлом Ошибки 1С узнать пароль Свертка 1С Установка Windows открыть xlsx docx Интересные места переустановка windows Свертка базы 1С Анализ ПДЗ гаджеты свертка торговли Жизнь Методика свертки 1С jaws Документы на почту новости Лирика office 2007 Вирусы СМС автозапуск Командная строка Интернет Вопросы программы для слепых День жестянщика взломать пароль HP Pavilion dv6000 Интерент Экономика бесплатно вирус SMS Армия XPE Оптимизация Работа Oracle автоматизация Оборудование удаляем пароли Скачать 1С редактирование DBF Обзоры ZverCD портативный аккумулятор реестр вирус Drivers Программы для 1С сверка базы 1С Сайты Обработки печать от поставщика Asus Eee Подключить 1С к MySQL Юмор Файлы 1С Альпинизм Добавить новую метку 1с и MySQL удаление документов Отношения Делаем LiveCD пакетный запуск 1С Вся Кино Деньги Экстремальные игры Система Финансы сбились номера документов Windows XP сайт СМС оплата Удаление партий Видео антивирус 1с реестр
28 апреля 2011

Сортировка по реквизиту справочника в 1С 7.7

Автор статьи: , 28 апреля 2011 в рубрике . Метки: , , . Просмотров: 5 363

Пишу клиенту конфигу с нуля, и так вышло, что элементы справочника необходимо сортировать по нескольким реквизитам в обоих направлениях (по возрастанию и убыванию), однако 1С не позволила сортировать по убыванию напрямую, а очень надо.

juornal Сортировка по реквизиту справочника в 1С 7.7

Сортируем по нескольким реквизитам в любом направлении

Проблему решил с помощью ИспользоватьСписокЭлементов

Авторские права на предоставленный материал принадлежат автору сайта http://extremallife.ru

ИспользоватьСписокЭлементов(<?>);
Синтаксис:
ИспользоватьСписокЭлементов(<СписокЗначений>)
Назначение:
Реализует фильтрацию элементов справочника, используя нединамический фильтр.
Параметры:
<СписокЗначений> — необязательный параметр. Значение типа — »СписокЗначений» — должен представлять собой список элементов справочника, выбранных для просмотра. Если это значение пустое, то фильтр отключается.
Замечание:
Метод доступен только в контексте Модуля формы списка справочника и относится ко всему текущему справочнику.

То есть необходимо создать список элементов, которые будут отображаться в этом справочнике.
Фишка в том, что порядок элементов полученного списка мы можем выстраивать в нужном направлении, и этот порядок будет сохранен в форме списка.
Долго думать я не стал и просто сформировал Таблицу значений с полями, которые заполнены необходимыми реквизитами.


СпрЗаказы = СоздатьОбъект("Справочник.Заказы");
СпрЗаказы.ВыбратьЭлементы();
//Здесь можно поставить условия для формирования списка,
//можно грузить не все элементы справочника,
//а лишь те которые соответствуют какому-либо отбору
Пока СпрЗаказы.ПолучитьЭлемент() = 1 Цикл
Т.НоваяСтрока();
Т.Заказ = СпрЗаказы.ТекущийЭлемент();
Т.Менеджер = СпрЗаказы.Менеджер;
Т.Поставщик = СпрЗаказы.Поставщик;
Т.Дата = СпрЗаказы.ДатаЗаказа;
КонецЦикла;

Далее все просто — сортируем полученную таблицу как нам угодно, например так (простой вариант)


Если фДА = 1 Тогда
Т.Сортировать("+Дата");
ИначеЕсли фДЯ = 1 Тогда
Т.Сортировать("-Дата");
КонецЕсли;

И создаем на основе полученной таблицы список


Сп = СоздатьОбъект("СписокЗначений");
Т.ВыбратьСтроки();
Пока Т.ПолучитьСтроку() = 1 Цикл
Сп.ДобавитьЗначение(Т.Заказ);
КонецЦикла;

Далее используем полученный список


ИспользоватьСписокЭлементов(Сп);

Для отмены всех сортировок и отборов применяем (например вешаем на кнопку)


Процедура СнятьВсеОтборы()
УстановитьОтбор("",0);
НачДата = ПолучитьПустоеЗначение("Дата");
КонДата = ПолучитьПустоеЗначение("Дата");
ВыбМенеджер = ПолучитьПустоеЗначение("Справочник.Менеджеры");
КонецПроцедуры

Вот так я решил проблему отбора и сортировки в форме списка справочника




К записи "Сортировка по реквизиту справочника в 1С 7.7" 3 комментария

А зачем перебирать таблицу для формирования списка, если можно одной командой выгрузить столбец в список.

Ответить

Дельное замечание. Можно, и так даже правильнее и быстрее, если таблица получается большой

Ответить

Огромное спасибо за решение!Вот как его можно упростить, если нужно просто выводить элементы в обратном порядке: Зак.ОбратныйПорядок(1); Зак.ВыбратьЭлементы(); Пока Зак.ПолучитьЭлемент()=1 Цикл Сп.ДобавитьЗначение(Зак.ТекущийЭлемент()); КонецЦикла; ИспользоватьСписокЭлементов(Сп);

Ответить


Оставить комментарий

*

Блог программиста 1С. Программирование 1С
Если Вас что-то заинтересовало или возникли вопросы, пишите.
petr@evseev.ru
Skype - evseev_petr
ICQ - 262808698

Сохраните меня в социальных сервисах

Комментарии

Присоединяйтесь к обсуждению
  • Леха: Мало того, что это говно-антивирус требует .Net Framework не ниже 4.0, так он еще пожирает ресурсы компьютера,...
  • tommy: AVG равно еще хуже Касперского . Иди в жопу с ним
  • просто_чайник: Не люблю этот антивирус. Заметил такую особенность. Если обновить базы в начале работы, довольно часто...
  • Елена: Самое главное. Файл для совместной работы открыть нельзя! Если надо что-то отредактировать — только...
  • Виктор: Поставили мне на работе эту замечательную программку. Работать невозможно, ужасные тормоза. Стали...

Избранное видео

Ссылки