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

На майские праздники, как обычно хотим вырваться из «бетонных джунглей» на природу, как это мы с друзьями традиционно делаем каждый год. На этот раз решили вспомнить молодость и на несколько дней рвануть на воду. Долго думать не стали — пойдем по обычному маршруту — по Черемшану, тому, что в районе Димитровграда в Ульяновской области. Авторские […]


15 июня 2011 ·

Один клиент попросил настроить в торговой конфигурации 1С 7.7 механизм наложения на счета картинок — печатей и подписей руководителей и автоматическую отправку графического файла на почтовый ящик клиента. Я подошел к вопросу творчески и сделал универсальную внешнюю обработку, которая отправляет счет, накладную ТОРГ-12, счет-фактуру или акт выполненных работ с печатью и подписями должностных лиц на […]


Метки

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

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

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

Пишу клиенту конфигу с нуля, и так вышло, что элементы справочника необходимо сортировать по нескольким реквизитам в обоих направлениях (по возрастанию и убыванию), однако 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 равно еще хуже Касперского . Иди в жопу с ним
  • просто_чайник: Не люблю этот антивирус. Заметил такую особенность. Если обновить базы в начале работы, довольно часто...
  • Елена: Самое главное. Файл для совместной работы открыть нельзя! Если надо что-то отредактировать — только...
  • Виктор: Поставили мне на работе эту замечательную программку. Работать невозможно, ужасные тормоза. Стали...

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

Ссылки