Здравствуйте. Как можно сделать место "Да или нет" поставить картинку (галку например)

https://prnt.sc/u8xzzh

```1c
    ЭлементСписок = ЭлементыФормы.ДокументСписок;

    ТекПозиция = 0;
    НовКолонка = ЭлементСписок.Колонки.Вставить(ТекПозиция + 1);
    НовКолонка.Имя = "Проверен";
    НовКолонка.Данные = "ФЛ_Проверен";
    НовКолонка.ТекстШапки = "Проверен";
    НовКолонка.КартинкаШапки = БиблиотекаКартинок.ЗеленаяГалка;
    НовКолонка.Ширина = 26;
```

Вот так сделал, но там галка сверху только криво вышла
Может кто делал?
---
в событии приВыводеСтроки:

```1c
    // можно добавить проверку на наличие колонки
    ОформлениеСтроки.Ячейки.Отметка.ОтображатьТекст = Ложь;
    ОформлениеСтроки.Ячейки.Отметка.ОтображатьФлажок = Истина;
    ОформлениеСтроки.Ячейки.Отметка.Флажок = ПолучитьЗначениеОтметки(ДанныеСтроки.Ссылка);
```
---
на закладке "Диалог", там где сама форма списка, Кликните по списку правой - "свойства" и там уже смотрите в самом низу события
---
в событии приВыводеСтроки:

```1c
    // можно добавить проверку на наличие колонки
    ОформлениеСтроки.Ячейки.Отметка.ОтображатьТекст = Ложь;
    ОформлениеСтроки.Ячейки.Отметка.ОтображатьФлажок = Истина;
    ОформлениеСтроки.Ячейки.Отметка.Флажок = ПолучитьЗначениеОтметки(ДанныеСтроки.Ссылка);
```
---
Не нашел такого события в БП 2.0
---
ДокументаСписка событие "ПриВыводеСтроки".. а в коде "отметка" надо заменить на данные вашей колонки.. ну и способ получения флажка в зависимости от нужного условия..
Может быть даже так:

```1c
    ОформлениеСтроки.Ячейки.Значение.Флажок = ДанныеСтроки.Настройка.ТипЗначения.ПривестиЗначение(ДанныеСтроки.Значение);
```
---
Я открыл форму списка документа и https://prnt.sc/u8yqv2
ПриВыводеСтроки не вижу или я не туда куда то смотрю
---
на закладке "Диалог", там где сама форма списка, Кликните по списку правой - "свойства" и там уже смотрите в самом низу события
---
Увидел пример, спасибо, сейчас буду смотреть как сделать

```1c
    Процедура ДокументСписокПриВыводеСтроки(Элемент, ОформлениеСтроки, ДанныеСтроки)
    ОформлениеСтроки.Ячейки.Скан.ОтображатьФлажок = Истина;
    Если Элемент.Колонки.Скан.Видимость Тогда

    Если Справочники.ХранилищеДополнительнойИнформации.НайтиПоРеквизиту("объект",ДанныеСтроки.Ссылка)<>Справочники.ХранилищеДополнительнойИнформации.ПустаяСсылка() Тогда
    ОформлениеСтроки.Ячейки.Скан.Флажок = Истина;
    Иначе
    ОформлениеСтроки.Ячейки.Скан.Флажок = Ложь;
    КонецЕсли;

    КонецЕсли;
```

КонецПроцедуры
---
Есть еще вариант для картинки, но там надо КартинкуСтроки устанавливать, да не простую ))

```1c
    ОформлениеСтроки.Ячейки.Картинка.ОтображатьКартинку = Истина;
    ОформлениеСтроки.Ячейки.Картинка.ОтображатьТекст = Ложь;

    Если ЗначениеЗаполнено(ДанныеСтроки.Документ) Тогда
    Если ДанныеСтроки.Проведен Тогда
    ОформлениеСтроки.Ячейки.Картинка.ИндексКартинки = 0;
    Иначе
    ОформлениеСтроки.Ячейки.Картинка.ИндексКартинки = 2;
    КонецЕсли;
    Иначе
    ОформлениеСтроки.Ячейки.Картинка.ИндексКартинки = 4;
    КонецЕсли;
```
---
Только почему то у меня в отладку "ОформлениеСтроки.Ячейки" не показывает моего реквизита
---
колонка создается динамически, возможно событие срабатывает раньше, чем создалась колонка... Попробуйте ПередОткрытием добавить её, или на форме самой добавить колонку.
---
Хорошо, спасибо
---
Как то так получилось
Осталось убрать слово да или нет)
https://prnt.sc/u8zbko
---
а код какой получился ? тот что в втором ответе, как раз должен исправить ситуацию
---
Я пока что пробовал с примера который
Сейчас попробую ответ второй
---
А как узнать индекс у картинки? Я применил второй ответ, но там сейчас выходит текст да или нет
---
покажите код, чего-то не хватает в нём
---
В таком коде сейчас ничего не показывает, ни картинки ни текста (да или нет)

```1c
    ОформлениеСтроки.Ячейки.Проверен.ОтображатьКартинку = Истина;
    ОформлениеСтроки.Ячейки.Проверен.ОтображатьТекст = Ложь;

    Если ЗначениеЗаполнено(ДанныеСтроки.Ссылка) Тогда
    Если ДанныеСтроки.Проверен Тогда
    ОформлениеСтроки.Ячейки.Проверен.ИндексКартинки = 0;
    Иначе
    ОформлениеСтроки.Ячейки.Проверен.ИндексКартинки = 2;
    КонецЕсли;
    Иначе
    ОформлениеСтроки.Ячейки.Проверен.ИндексКартинки = 4;
    КонецЕсли;
```
---
попробуйте без картинки, так:

```1c
    ОформлениеСтроки.Ячейки.Проверен.ОтображатьТекст = Ложь;
    ОформлениеСтроки.Ячейки.Проверен.ОтображатьФлажок = Истина;
    ОформлениеСтроки.Ячейки.Проверен.Флажок = ДанныеСтроки.Проверен;
```
---
Получилось=) Спасибо большое)
Последний маленький вопрос, а чтоб убрать рамки у флажка, это надо видимость поменять?
https://prnt.sc/u904o2
---
Вот так же чтоб сделать
https://prnt.sc/u906xd
---
если не ошибаюсь, то надо "очистить" свойство "Данные" у колонки..
зы:правда тогда сломается код выше, который из данных берёт значение, можно через ссылку. получить их ОформлениеСтроки.Ячейки.Проверен.Флажок = ДанныеСтроки.Ссылка.Проверен;
---
Я сейчас смотрю как в примере с сканом

Там есть процедура

```1c
    Процедура ДокументСписокПриПолученииДанных(Элемент, ОформленияСтрок)

    Если Элемент.Колонки.РучнаяКорректировка.Видимость Тогда

    ОбщегоНазначения.РучнаяКорректировкаСписокПриПолученииДанных(ОформленияСтрок);

    КонецЕсли;

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

Потом попадаю сюда

```1c
    Процедура РучнаяКорректировкаСписокПриПолученииДанных(ОформленияСтрок) Экспорт

    Картинка = БиблиотекаКартинок.РучнаяКорректировка;
    Для Каждого Строка Из ОформленияСтрок Цикл

    Если Строка.ДанныеСтроки.РучнаяКорректировка Тогда
    Строка.Ячейки.РучнаяКорректировка.УстановитьКартинку(Картинка);
    Иначе
    Строка.Ячейки.РучнаяКорректировка.Текст = ";
    КонецЕсли;

    КонецЦикла

    КонецПроцедуры // РучнаяКорректировкаСписокПриПолученииДанных()
```

Возможно мне что то похожее нужно сделать
---
можно и так и так сделать. попробуйте сперва колонку без данных, и код чуть измените, чтоб ошибка не выходила.
Если не получится, или есть на примете нужная картинка, то можно переделать и на картинку )
---
Получилось сделать проще) Дописал только это "НовКолонка.ТолькоПросмотр = Истина;"
Через форму списка пользователи всё равно не будут редактировать
https://prnt.sc/u90op4
---
тогда еще ширину колонку уменьшить осталось
---
это у колонки должна быть выбрана соответствующая картинка-коллекция
---
Хотел еще узнать, привязки делать это обязательно? или желательно только?
---
у колонок их нет.
Смотря какая форма, если программно добавлять элементы на сложную форму, то скорее всего - да. Если в предприятии (или в просмотре) они "съезжают", то тоже обязательно править привязки.
---
Вот я вывел реквизит на форму документа программно (https://prnt.sc/u92a6a)
И теперь не знаю как правильно делать привязку
Например я знаю что внизу область "ОсновнаяПанель" и слева элемент формы "ЗатратыВТабличнойЧасти"

А как привязку по ним сделать пока не понимаю
Пример нашел:
(НоваяКнопка.УстановитьПривязку(ГраницаЭлементаУправления.Лево, ЭлементыФормы.ИнфНадписьТекущаяСумма, ГраницаЭлементаУправления.Лево);
    НоваяКнопка.УстановитьПривязку(ГраницаЭлементаУправления.Право, ЭлементыФормы.ИнфНадписьТекущаяСумма, ГраницаЭлементаУправления.Лево);
    НоваяКнопка.УстановитьПривязку(ГраницаЭлементаУправления.Верх, ЭлементыФормы.Товары, ГраницаЭлементаУправления.Низ);
    НоваяКнопка.УстановитьПривязку(ГраницаЭлементаУправления.Низ, ЭлементыФормы.ИнфНадписьТекущаяСумма, ГраницаЭлементаУправления.Верх);

Вот сам код как выводил элемент на форму

```1c
    //Добавляем надпись "Проверен"
    ЭлементФормы_НадписьПреверен
    = ЭтаФорма.ЭлементыФормы.Добавить(Тип("Надпись"), "НадписьПроверен", Истина,);
    ЭлементФормы_НадписьПреверен.Заголовок = "Проверен";
    ЭлементФормы_НадписьПреверен.Верх = ЭтаФорма.ЭлементыФормы.ЗатратыВТабличнойЧасти.Верх + 1;
    ЭлементФормы_НадписьПреверен.Лево = 600;
    ЭлементФормы_НадписьПреверен.Ширина = 50;
    ЭлементФормы_НадписьПреверен.Высота = 19;
    //Добавляем флажок
    ЭлементФормы_Проверен
    = ЭтаФорма.ЭлементыФормы.Добавить(Тип("Флажок"), "Проверен", Истина, );
    ЭлементФормы_Проверен.Данные = "Проверен";
    ЭлементФормы_Проверен.Верх = ЭтаФорма.ЭлементыФормы.ЗатратыВТабличнойЧасти.Верх + 1;
    ЭлементФормы_Проверен.Лево = 585;
    ЭлементФормы_Проверен.Ширина = 3;
    ЭлементФормы_Проверен.Высота = 19;
```
---
привязки
походу в требовании-накладной вообще не делали привязок в типовой)

Можно особо не заморачиваться, в этом случае.. ну или сделать минимальную типа :

```1c
    ЭлементФормы_Проверен.УстановитьПривязку(ГраницаЭлементаУправления.Лево, ЭлементыФормы.ЗатратыВТабличнойЧасти, ГраницаЭлементаУправления.Право);
    ЭлементФормы_Проверен.УстановитьПривязку(ГраницаЭлементаУправления.Право , ЭлементФормы_Проверен, ГраницаЭлементаУправления.Лево);
```

 Левую границу галочки привязываем к правой части "Затрат", а правую к самой себе, чтобы не растягивалась. По этой же схеме можно и надпись к флажку привязать.
Верх и низ особо нет смысла устанавливать
---
Сделал, спасибо большое за помощь=)