ЗапомнитьВыделенныеСтроки (БСП)

Автор: 1С
ОбщийМодуль.ОтчетыСервер
БСП

Запомнить выделенные строки. Сохранение состояния формы

////////////////////////////////////////////////////////////////////////////////
// Сохранение состояния формы

Функция ЗапомнитьВыделенныеСтроки(Форма, ИмяТаблицы, КлючевыеКолонки) Экспорт
	ТаблицаРеквизит = Форма[ИмяТаблицы];
	ТаблицаЭлемент = Форма.Элементы[ИмяТаблицы];
	
	Результат = Новый Структура;
	Результат.Вставить("Выделенные", Новый Массив);
	Результат.Вставить("Текущая", Неопределено);
	
	ТекущаяИдентификатор = ТаблицаЭлемент.ТекущаяСтрока;
	Если ТекущаяИдентификатор <> Неопределено Тогда
		СтрокаТаблицы = ТаблицаРеквизит.НайтиПоИдентификатору(ТекущаяИдентификатор);
		Если СтрокаТаблицы <> Неопределено Тогда
			ДанныеСтроки = Новый Структура(КлючевыеКолонки);
			ЗаполнитьЗначенияСвойств(ДанныеСтроки, СтрокаТаблицы);
			Результат.Текущая = ДанныеСтроки;
		КонецЕсли;
	КонецЕсли;
	
	ВыделенныеСтроки = ТаблицаЭлемент.ВыделенныеСтроки;
	Если ВыделенныеСтроки <> Неопределено Тогда
		Для Каждого ВыделеннаяИдентификатор Из ВыделенныеСтроки Цикл
			Если ВыделеннаяИдентификатор = ТекущаяИдентификатор Тогда
				Продолжить;
			КонецЕсли;
			СтрокаТаблицы = ТаблицаРеквизит.НайтиПоИдентификатору(ВыделеннаяИдентификатор);
			Если СтрокаТаблицы <> Неопределено Тогда
				ДанныеСтроки = Новый Структура(КлючевыеКолонки);
				ЗаполнитьЗначенияСвойств(ДанныеСтроки, СтрокаТаблицы);
				Результат.Выделенные.Добавить(ДанныеСтроки);
			КонецЕсли;
		КонецЦикла;
	КонецЕсли;
	
	Возврат Результат;
КонецФункции

///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2019, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются 
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////

Рекомендации

Похожие публикации

Выделенные строки

ВосстановитьВыделенныеСтроки (БСП)

Получить выделенные строки списка (с сохранением выделения)

Выделение текущей строки в отчете

СкопироватьСтрокиВБуферОбмена (БСП)

ИзменитьВыделенные (БСП)

ПараметрыРасчетаПоказателейЯчеек (БСП)

ОбъединитьВыделенные (БСП)

ЗаменитьВыделенные (БСП)

Обновлятор-1С: групповое (пакетное) обновление и обслуживание всех баз за один раз