Вот основной блок кода, для тех, кому не терпится узнать как это работает или нужен только принцип работы.
Перем СписокДокументовДляОбработки;
Процедура ДокументСписокПриПолученииДанных(Элемент, ОформленияСтрок)
Для Каждого ОформлениеСтроки Из ОформленияСтрок Цикл
ОформлениеСтроки.Ячейки.Флажок1.УстановитьФлажок(СписокДокументовДляОбработки.Получить(ОформлениеСтроки.ДанныеСтроки.Ссылка) <> Неопределено);
КонецЦикла;
КонецПроцедуры
Процедура ДокументСписокПередНачаломИзменения(Элемент, Отказ)
Если ЭлементыФормы.ДокументСписок.ТекущаяКолонка.Имя = "Флажок1" Тогда
Отказ = Истина;
Ссылка = ЭлементыФормы.ДокументСписок.ТекущиеДанные.Ссылка;
Если СписокДокументовДляОбработки.Получить(Ссылка) = Неопределено Тогда
СписокДокументовДляОбработки.Вставить(Ссылка, Ссылка);
Иначе
СписокДокументовДляОбработки.Удалить(Ссылка);
КонецЕсли;
КонецЕсли;
КонецПроцедуры
Процедура Кнопка1Нажатие()
Для каждого т Из СписокДокументовДляОбработки Цикл
ДокСсылка = т.Ключ;
КонецЦикла;
КонецПроцедуры
СписокДокументовДляОбработки = Новый Соответствие;
Колонка = ЭлементыФормы.ДокументСписок.Колонки.Вставить(0, " ");
Колонка.Имя = "Флажок1";
Колонка.Ширина = 3;
Колонка.Данные = "";
Колонка.ДанныеФлажка = "ПометкаУдаления";
Колонка.ИзменятьПозицию = Ложь;
Колонка.ИзменениеРазмера = ИзменениеРазмераКолонки.НеИзменять;
Колонка.ИзменятьВидимость = Ложь;
Колонка.ИзменятьНастройку = Ложь;
Колонка.РежимРедактирования = РежимРедактированияКолонки.Непосредственно;
В списке документов нет возможности добавить колонку с данными, соответственно и нет возможности добавить свой флажок?...
Не стоит печалиться, попробуем обойти данное ограничение с помощью некоторых возможностей списков.
У списков есть возможность использовать флажок "Пометка удаления". Вот и задействуем эту возможность в своих целях.
Принцип работы такой, при изменении пометки удаления будем запоминать (или забывать) отмеченные документы.
В то же время заблокируем фактическую установку пометки. Не забудем показать состояние флажка отмечен/снят вместо пометки удаления.
Вот собствено и весь принцип работы.
Список отмеченных документов будем хранить в соответствии:
Перем СписокДокументовДляОбработки;
Отображение нашего состояния флажка поручим процедуре
Процедура ДокументСписокПриПолученииДанных(Элемент, ОформленияСтрок)
Запомним или забудем отмеченные документы в процедуре
Процедура ДокументСписокПередНачаломИзменения(Элемент, Отказ)
С помощью нажатия на кнопку обработаем выбранные документы
Процедура Кнопка1Нажатие()
Вариант 2. Без использования "Пометки удаления". Добавлено после обсуждений в комментариях.
Способ почти идентичный, по этому расписывать подробно нет смысла.
Перем СоотвДокументыДляОбработки;
Процедура ДокументСписокПриПолученииДанных(Элемент, ОформленияСтрок)
Для Каждого ОформлениеСтроки Из ОформленияСтрок Цикл
ОформлениеСтроки.Ячейки.Флажок1.УстановитьФлажок(СоотвДокументыДляОбработки.Получить(ОформлениеСтроки.ДанныеСтроки.Ссылка) <> Неопределено);
КонецЦикла;
КонецПроцедуры
Процедура Кнопка1Нажатие()
Для каждого т Из СоотвДокументыДляОбработки Цикл
ДокСсылка = т.Ключ;
Сообщить("Обработан документ " + ДокСсылка, СтатусСообщения.Информация);
КонецЦикла;
КонецПроцедуры
Процедура ДокументСписокПриИзмененииФлажка(Элемент, Колонка)
Если ЭлементыФормы.ДокументСписок.ТекущаяКолонка.Имя = "Флажок1" Тогда
Ссылка = ЭлементыФормы.ДокументСписок.ТекущиеДанные.Ссылка;
Если СоотвДокументыДляОбработки.Получить(Ссылка) = Неопределено Тогда
СоотвДокументыДляОбработки.Вставить(Ссылка, Ссылка);
Иначе
СоотвДокументыДляОбработки.Удалить(Ссылка);
КонецЕсли;
КонецЕсли;
КонецПроцедуры
СоотвДокументыДляОбработки = Новый Соответствие;
Колонка = ЭлементыФормы.ДокументСписок.Колонки.Вставить(0, "");
Колонка.Имя = "Флажок1";
Колонка.Ширина = 3;
Колонка.ИзменятьПозицию = Ложь;
Колонка.ИзменениеРазмера = ИзменениеРазмераКолонки.НеИзменять;
Колонка.ИзменятьВидимость = Ложь;
Колонка.ИзменятьНастройку = Ложь;
Колонка.РежимРедактирования = РежимРедактированияКолонки.Непосредственно;
Примечание. Данные способы (с галочками) не следует использовать при разработке форм с нуля, для этого существует механизм выделенных строк. Данный способ удобен для навешивания на готовые типовые формы. Возникшие в комментариях споры это подтверждают.
В приложенной к публикации обработке выложен расширенный, полностью рабочий код, который можно скопировать в типовой документ и пользоваться. Изменение интерфейса происходит полностью программно в модуле формы. Это обеспечивает более удобное обновление типовых конфигураций. При обновлении достаточно будет снимать необходимые галочки с процедур.
При добавлении кода из обработки в типовой модуль формы необходимо проследить, есть ли в модуле обработчики ДокументСписокПередНачаломИзменения или ДокументСписокПриПолученииДанных и при их наличии раскомментировать соответствующие строки в процедурах ДокументСписокПередНачаломИзменения_Подключаемая и ДокументСписокПриПолученииДанных_Подключаемая. Что бы не забывались вызываться типовые процедуры.
А так же необходимо проследить за именем списка документов и при необходимости переименовать в добавляемом коде имя "ДокументСписок" на необходимое.
Примечание. В обработке представлены оба способа (на всякий случай).