Отбор на управляемой форме из списка значений

09.08.19

Разработка - Работа с интерфейсом

Пример простого удобного отбора любых данных ссылочного типа на управляемой форме. Работа обработки проверена на релизе: 1С:Предприятие 8.3.13.1513.

Скачать файлы

Наименование Файл Версия Размер
Отбор на управляемой форме из списка значений:
.epf 7,20Kb
61
.epf 1.0 7,20Kb 61 Скачать

Это простой пример отбора на управляемой форме из списка значений. В копилку для тех, кому это необходимо. 

В обработке весь код прокомментирован, ниже само описание создания отбора. 

Описание:

 

1. На форме создаем реквизит и на вкладке "Основные" выбираем тип "СписокЗначений".

2. На вкладке "Объект" тип значения, выбираем ссылку на необходимый справочник.

3. Создаем на форме еще один реквизит со строковым типом, и переносим его на форму. В свойствах реквизита перенесенного  на форму на вкладке "Использование" - КнопкаВыбора ставим "ДА", создаем событие НачалоВыбора

4. Для самой формы, в свойствах, устанавливаем на вкладке "Использование" - АвтоматическоеСохранениеДанныхВНастройках в значение Использовать и ставим галочки для созданных реквизитов, это для того чтобы при открытии обработки сохранялись предыдущие выбранные значения, а при открытии выбора пользователь видел галочки, которые устанавливал ранее.

При желании, можно в событии ПриОткрытии на клиенте описать установку нужного отбора с заранее выбранными значениями.

5. В модуле формы создаем функцию, которая возвращает СписокЗначений.

Описание возврата:

РезультатЗапроса = Запрос.Выполнить();
Список = Новый СписокЗначений;
Список.ЗагрузитьЗначения(РезультатЗапроса.Выгрузить().ВыгрузитьКолонку("Ссылка")); 
	
Возврат Список;

6. В обработчике ПриВыборе, который мы создали пишем следующее:

&НаКлиенте
Процедура НашРеквизитНачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка)

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

КонецПроцедуры

Процедура оповещения:

//Обработка оповещения (не модальный вызов)
&НаКлиенте
Процедура ПослеОтметкиЭлементов(Элементы, Параметры) Экспорт
 
	Если Элементы <> Неопределено Тогда
		ЗаголовокТекста = "<<Пусто>>";//переменная для сбора выбранных значений
		ЭтотОбъект.СписокЗначений.Очистить();//очищаем список значений
		Для Каждого МойФЛ Из Элементы Цикл
			Если МойФЛ.Пометка Тогда
				Если ЗаголовокТекста = "<<Пусто>>" Тогда
					ЗаголовокТекста = "";
					ПодстановкаСимвола = "";
				Иначе
					ПодстановкаСимвола = "; ";
				КонецЕсли;
				ЭтотОбъект.СписокЗначений.Добавить(МойФЛ.Значение); //добавляем элементы запроса в список значений.
				ЗаголовокТекста = ЗаголовокТекста + ПодстановкаСимвола + СокрЛП(МойФЛ.Значение); //собираем строку для отображения пользователю
			КонецЕсли;
		КонецЦикла;
		ЭтаФорма.СтрокаСписка = ЗаголовокТекста; //присваиваем собранную строку
	КонецЕсли;
 
КонецПроцедуры

Как результат, мы получаем следующее:

Далее уже можете обрабатывать выбранные значение, как душе угодно, мне данный простой способ выбора очень часто полезен, пользователям он нравиться, единственно, что список выбора должен быть не очень большой, чтобы было проще работать с ним. В отбор можно даже собрать значения дополнительных реквизитов (Справочник.ЗначенияСвойствОбъектов) в самописных отчетах и не только.

Пользуйтесь!

обработка отбор управляемая форма СписокЗначений 8.3

См. также

Богатый редактор картинок, хранимых в базе, с возможностью РИСОВАНИЯ. Редактор внешних файлов картинок. Объект, расширяющий возможности работы с картинками из встроенного языка (Три в одном) + Обработка «Стандартизация картинок»

Работа с интерфейсом Рабочее место Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 Платные (руб)

Обработка предназначена для редактирования картинок в режиме «Предприятие», с возможностью РИСОВАТЬ на них. Поддерживается работа как в обычных формах (толстый клиент) так и на управляемых формах (тонкий клиент). Обработка позволяет редактировать как картинки, хранимые в базе, так и графические файлы с диска на файловой системе. Помимо базовых функций (изменение размеров, преобразование формата, обрезание картинки, повороты и т.п.) – редактор имеет богатый набор инструментов для рисования. Доступна функция вставки изображения из буфера обмена. Также обработка может быть использована из встроенного языка как объект для редактирования картинок. Объект может быть использован: на стороне клиента, на стороне сервера, из внешнего соединения. Данная обработка будет особенно полезна тем, кто вносит картинки в базу (изображения номенклатуры, фотографии физических лиц и т.п.). Функционал реализуется с использованием JavaScript и бесплатного ПО ImageMagick (без использования внешних компонент).

6000 руб.

16.01.2015    61697    43    59    

80

[Расширения] Динамическое управление видимостью и доступностью элементов форм (УФ) (8.3.6+)

Работа с интерфейсом Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 Платные (руб)

Механизм «Динамическое управление доступом к элементам форм объектов 1С8» предназначен для обеспечения возможности оперативного управления видимостью и доступностью элементов форм документов и справочников продуктов фирмы «1С» «1С:Предприятие 8». Решение универсальное, встраивается в любую конфигурацию с минимальными доработками, что позволяет без проблем обновлять типовые решения.

5000 руб.

14.01.2016    54312    16    21    

42

Управление дашбордами

Работа с интерфейсом Платформа 1С v8.3 Конфигурации 1cv8 Платные (руб)

Обработка предназначена для создания и управления дашбордами.

2400 руб.

29.06.2020    16623    21    4    

35

Новогоднее оформление для 1С

Работа с интерфейсом Платформа 1С v8.3 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Зарплата и Управление Персоналом 3.x 1С:Управление нашей фирмой 3.0 Бесплатно (free)

Добавьте новогоднего настроения! Расширение создает декорацию в виде гирлянды на некоторых формах объектов.

27.12.2023    10560    745    elcoan    45    

106

Конструктор HTML, CSS и javascript

Инструментарий разработчика Работа с интерфейсом Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

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

2 стартмани

10.04.2023    9484    150    acces969    31    

115

Модель состояния для MVC

Работа с интерфейсом Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

"MVC плохо применима в 1С" - познакомьтесь с моделью состояния и, возможно, ваше мнение поменяется! Представленное решение является эволюционным развитием идеи реализации MVC для 1С. В новой версии добавлены DSL для описания модели состояния, а также параметризация свойств параметров и элементов формы.

1 стартмани

05.07.2022    3577    kalyaka    2    

27

Табло очереди заказов на экран телевизора

WEB-интеграция Работа с интерфейсом Платформа 1С v8.3 1С:Розница 2 Платные (руб)

Связка из веб-приложения и расширения для 1С: Розница 2.3.

3600 руб.

29.04.2022    12009    1    5    

10