В этом посте опишем как сделать в табличной части документа пиктограммы, чтобы при клике на них менялись галочки как на картинке ниже.
Открываем документ в конфигураторе.
Внизу на панели нажимаем кнопку текст.
Потом наводим мышку на табличную часть и нажимаем левую кнопку мыши. В итоге у нас в конце должна появится новая колонка.
Нажимаем на шапку этой колонки. Она будет выделена. Потом в открывшемся по правой кнопки мыши меню выбираем свойства.
В свойствах на закладке «Дополнительно» ставим галочку «Показывать пиктограммы» и в поле формула пишем имя функции которая будет возвращать номер пиктограммы (НомПикт()).
Далее выделяем саму табличную часть документа. И выбираем свойства.
На закладке картинка, выбираем из библиотеки картинок, картинку с пиктограммами.
Пример реализации функции возвращающей номер пиктограммы.
Допустим нам необходимо хранить в базе документ с отмеченными пиктограммами. Для этого в табличной части сделаем новый реквизит «Флажок» тип «Число» длина 1.
Теперь напишем код который будет показывать пиктограммы. У нас будет одна функция НомПикт() которая будет возвращать номер пиктограммы равный числу в реквизите флажок. И предопределенная процедура ПриНачалеРедактированияСтроки() обрабатывает щелчок на пиктограмме и ПриЗакрытии() будет сохранять в реквизит Флажок номер выбранной пиктограммы.
Функция НомПикт ()
Возврат Флажок;
КонецФункции
//-----------------------------------
Процедура ПриНачалеРедактированияСтроки()
Если СокрЛП(Форма.ТекущаяКолонка())="" Тогда
Если Флажок=1 Тогда
Флажок=2;
ИначеЕсли Флажок=2 Тогда
Флажок=1;
КонецЕсли;
КонецЕсли;
КонецПроцедуры