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

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

Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7 _ Программирование обычных форм 1С 8.2 и не интерфейсной логики _ Отбор по значению в текущей колонке со Значениями реквизита из родительского документа.

Автор: Vzonder 09.02.17, 18:12

1С 8.2 УП 10.3

В Документа ЗаказПокупателя создан дополнительный реквизит ЭтапыПродажи.
Выведен в колонку отдельно созданную ФормыСписка ЗаказаПокупателя, где по значению данного реквизита произведен отбор:

         ДокументСписок.Отбор.Сбросить();
         ДокументСписок.Отбор.ЭтапыПродажи.ВидСравнения=ВидСравнения.Равно;
         ДокументСписок.Отбор.ЭтапыПродажи.Значение="Отгружать ТК";
         ДокументСписок.Отбор.ЭтапыПродажи.Установить();

Возникла необходимость вывести этот реквизит в Форму Списка Документа РеализацияТоваровУслуг.
Вывел так:
Если ЗначениеЗаполнено(ДанныеСтроки.Сделка) И ТипЗнч(ДанныеСтроки.Сделка) = Тип("ДокументСсылка.ЗаказПокупателя") Тогда

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

Все отлично работает, вот только ни аппаратный, ни программный отбор не работает.
Помогите, пожалуйста допилить данную задумку.



Автор: logist 09.02.17, 18:44

Что бы работал отбор - это должен быть реквизит списка, у вас это просто несвязанная колонка с текстом.

Автор: Vzonder 09.02.17, 18:54

logist @ Сегодня, 19:44 * ,
Я новичок.
Правильно я понимаю - реквизит списка - это реквизит документа?
Если да, то так-то работает...
Если нет, подскажите, как его создать?

Автор: logist 09.02.17, 19:14

Цитата(Vzonder @ 09.02.17, 19:54) *
Правильно я понимаю - реквизит списка - это реквизит документа?

Да. Добавлять колонку в список не надо, надо в свойствах поля списка в отображаемых колонках выбрать ваш реквизит документа, колонка сама добавится, и станет доступна в отборе

Автор: Vzonder 09.02.17, 20:09

Скорее всего я чего-то не понимаю.

Можно поподробнее?

Автор: logist 09.02.17, 20:16



Размещение данных вызывается правой кнопкой по полю списке.

Автор: Vzonder 09.02.17, 20:44

logist @ Сегодня, 21:16 * ,
Вот теперь понимаю, что Вы меня неправильно поняли...
Речь идет не о реквизите документа РеализацияТоваровУслуг.
А именно о Реквизите "Родительского" Документа ЗаказПокупателя:

ОформлениеСтроки.Ячейки.ЭтапыПродажи.УстановитьТекст(ДанныеСтроки.Сделка.ЭтапыПродажи);

Автор: logist 09.02.17, 21:15

Цитата(Vzonder @ 09.02.17, 21:44) *
А именно о Реквизите "Родительского" Документа ЗаказПокупателя:

Тогда добавляйте на форму списка поле в котором осуществляйте выбор нужного значения для отбора, затем запросом собирайте нужные реализации по этому значению, и запихивайте их в типовой отбор списка как Ссылка. Только так.

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