Версия для печати темы (https://pro1c.org.ua/index.php?s=78c8747acd78e65db8ab7fb99dd7f177&showtopic=44119)

Нажмите сюда для просмотра этой темы в обычном формате

Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7 _ Программирование обычных форм 1С 8.2 и не интерфейсной логики _ Вывод пиктограммы всписке документов

Автор: Alex007 12.02.18, 11:35

Здравствуйте. Создал колонку в списке документов Реализации с элементом управления "поле ввода" . В оформлении поля ввода выбрал картинку. Необходимо при значении реквизита в документе (тип Булево) МойРеквизит= истина выводить картинку в колонку списка. Не могу сообразить как сделать. В сети инфо мало на этот счет.

Автор: sava1 12.02.18, 13:41

гугл в помощь
http://pro1c.org.ua/redirect.php?https://www.google.com/search?q=1%D1%818+%D0%B2%D1%8B%D0%B2%D0%BE%D0%B4+%D0%BA%D0%B0%D1%80%D1%82%D0%B8%D0%BD%D0%BA%D0%B8+%D0%B2+%D1%82%D0%B0%D0%B1%D0%BB%D0%B8%D1%87%D0%BD%D0%BE%D0%BC+%D0%BF%D0%BE%D0%BB%D0%B5&ie=utf-8&oe=utf-8

Автор: Alex007 12.02.18, 17:02

Цитата(sava1 @ 12.02.18, 13:41) *
гугл в помощь

послать на гугл легче всего конечно, а помочь нет желания? там описан вывод в табл. часть и для управляемых форм. Цепляют все это дело в процедуру ПриВыводеСтроки. А куда эту процедуру вешать? У меня нет ее сейчас в модуле. Дописал без всяких условий, чтобы проверить и вывести во все ячейки по колонке "Пикто"но ничего не выводит .

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

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

Автор: sava1 12.02.18, 18:22

У табличного поля есть событие ПриВыводеСтроки - его никуда "вешать" не надо. Просто создайте обработчик.

Цитата(Alex007 @ 12.02.18, 17:02) *
помочь нет желания?

Вам расписать все "азы".

Автор: Alex007 12.02.18, 20:08

sava1 @ Сегодня, 18:22 * ,
алгоритм. в 7 я такое делал легко, тут иной совсем подход. Вот создал я колонку, в "КартинкиСтрок" выбрал стандартную пиктограмму 16х16, написал пока простую процедурку что выше. как связать?

Цитата(sava1 @ 12.02.18, 18:22) *
У табличного поля есть событие ПриВыводеСтроки - его никуда "вешать" не надо. Просто создайте обработчик.

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

Но не могу добраться до самого документа( закомментировал), чтобы задать условие вывода согласно реквизита документа.Вывел этот реквизит в таблицу- работает. Но хотелось бы из документа доставать а не ч/з ...

Автор: sava1 12.02.18, 20:22

Если реквизит в шапке - тогда

Если МойРеквизит Тогда
        ...Картинка  = картинка1;
Иначе
        ...Картинка = ПустаяКартинка;
КонецЕсли;


Если реквизит в строке, тогда юзаем ДанныеСтроки

Автор: logist 12.02.18, 22:09

Цитата(Alex007 @ 12.02.18, 20:08) *
Но хотелось бы из документа доставать а не ч/з ...

К чему такое желание? У вас в таблице есть необходимые данные, скройте колонку, если глаз мылит, а так при выводе каждой строки (а это любой обновление списка) будет выполнятся запрос к документу по каждой строке, а вы еще там ПолучитьОбъект зачем-то делаете...

Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7
https://pro1c.org.ua