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

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

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

Автор: jojojoba2 13.09.19, 10:04

Добрый день!

Есть задача - необходимо в документе ЗаказПокупателя в поле ввода колонки формы списка вывести флажок напротив документа если в структуре подчиненных документов, есть Реализация и Налоговая накладная.

Подскажите каким методом, запросом это возможно сделать?
Как правильно настроить колонку в свойствах?
В каком событии лучше писать процедуру?

Если есть пример кода буду благодарен.

Автор: sava1 13.09.19, 10:12

УФ / оФ ?

Автор: fly 13.09.19, 10:36

jojojoba2 @ Сегодня, 11:04 * ,
http://pro1c.org.ua/redirect.php?https://its.1c.ru/db/metod8dev#content:2806:hdoc

Автор: jojojoba2 13.09.19, 11:23

sava1 @ Сегодня, 11:12 * ,
8.3 УПП

sava1 @ Сегодня, 11:12 * ,
Обычная форма

fly @ Сегодня, 11:36 * ,
Спасибо! Буду разбираться.

Автор: sava1 13.09.19, 11:29

в Список добавляем колонку "ЕстьДокументы" - тип Флаг, не выводить текст.....
вот вывод в списке состояния заказа

Процедура ДокументСписокПриПолученииДанных(Элемент, ОформленияСтрок)
    ЗаполнитьСостояниеЗаказа(ОформленияСтрок);
КонецПроцедуры

Процедура ЗаполнитьСостояниеЗаказа(ОформленияСтрок)    
    МасЗаказы = Новый Массив;
    Для Каждого Стр Из ОформленияСтрок Цикл
        ДанныеСтроки = Стр.ДанныеСтроки;
        МасЗаказы.Добавить(ДанныеСтроки.Ссылка);
    КонецЦикла;
    //
    запрос = Новый Запрос;
    запрос.Текст = "
    |ВЫБРАТЬ
    |    рр.Заказ,
    |    IsNull(рр.Состояние,4) Состояние
    |ИЗ РегистрСведений.А_СостояниеЗаказа КАК рр
    |ГДЕ рр.Заказ В (&СпЗаказы)
    |";
    запрос.УстановитьПараметр("СпЗаказы", МасЗаказы);    
    Выборка = Запрос.Выполнить().Выбрать();
    //
    //тКартинка =;
    Для Каждого Стр Из ОформленияСтрок Цикл
        тд = Стр.ДанныеСтроки;        
        Выборка.Сбросить();
        Если Выборка.НайтиСледующий(тд.Ссылка, "Заказ") Тогда

   ВОТ ЗДЕСЬ УСТАНАВЛИВАЕМ ФЛАЖОК

        //    **ИндексКарт = Выборка.Состояние;
        //Иначе
        //    ИндексКарт = 4;
        КонецЕсли;

    КонецЦикла;
    
КонецПроцедуры


Вам вместо запроса к регистру надо делать запрос к КритериюОтбора СвязанныеДокументы
определять есть-ли документы и устанавливать флажок

Автор: jojojoba2 13.09.19, 11:48

sava1 @ Сегодня, 12:29 * ,

Спасибо огромное!

Автор: Vofka 13.09.19, 12:43

jojojoba2, не забываем жать палец вверх.

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