Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
13 дек 2024, 23:49

Заполнение формы списка документа по отбору запросом

Автор Tgr11, 05 сен 2013, 16:13

0 Пользователей и 1 гость просматривают эту тему.

Tgr11

Добрый день, уважаемые пользователи. Столкнулась с такой задачей: Нужно в форме списка документа по отбору вывести новый список документов. Я собрала данные документы, сделала реквизит с отбором, но табличная часть формы не заполняется по отбору, не подскажите почему? Подскажите что написать после получения нового списка значений?
Процедура ОтборСметаПриИзменении(Элемент)
   СметныйДокумент = Элемент.Значение;
   ВывестиПодчиненныеДокументы();
КонецПроцедуры
Процедура ВывестиПодчиненныеДокументы()
   //для отображения актов по смете
   Список = Новый СписокЗначений;
   Запрос = Новый Запрос;
   Запрос.Текст =
   "ВЫБРАТЬ
   |   ВыполненныеРаботыПериод.Регистратор КАК Ссылка
   |ИЗ
   |   РегистрНакопления.ВыполненныеРаботы КАК ВыполненныеРаботыПериод
   |ГДЕ
   |   ВыполненныеРаботыПериод.СметныйДокумент = &Ссылка
   |   И ВыполненныеРаботыПериод.ВидДвижения = &Вид
   |СГРУППИРОВАТЬ ПО
   |   ВыполненныеРаботыПериод.Регистратор";
   Запрос.УстановитьПараметр("Ссылка", ЭлементыФормы.СметныйДокумент.Значение);
   Запрос.УстановитьПараметр("Вид", ВидДвиженияНакопления.Расход);
   ТабАктов = Запрос.Выполнить().Выгрузить();
   СписокДокументов.Колонки.Добавить("Ссылка");

Yura063

Цитата: Tgr11 от 05 сен 2013, 16:13ТабАктов = Запрос.Выполнить().Выгрузить();
   СписокДокументов.Колонки.Добавить("Ссылка");

ТабАктов - какой тип?
Помогли, отблагодари!

Новенькая

Не очень понятно что именно вы хотите сделать...На каком этапе вы хотите наложить отбор на список документов??? вы открываете форму списка по какой-то кнопке и хотите видеть список с отбором??? или как??? К примеру, отбор обычно на списки накладывается так:
ФормаВыбора=Документы.ПлатежноеПоручениеИсходящее.ПолучитьФормуВыбора();
   ФормаВыбора.ДокументСписок.Отбор.Организация.Значение                            = Организация;
   ФормаВыбора.ДокументСписок.Отбор.Организация.Использование                       = Истина;
в этом случае откроется форма с нужным отбором. Форма обычная или управляемая?

Tgr11

Это процедура будет выполняться при установке выбора документа, когда мы ставим документ в форме списка документа должны отобразиться акты подчиненные данному документу...реквизита Документ-основания нет, поэтому я собрала нужные документы в списке значений...то что написано на данный момент не работает(((не могу понять свой алгоритм действий, чтобы работал.. помогите пожалуйста
Добавлено: 05 сен 2013, 16:56


форма обычная
Добавлено: 05 сен 2013, 16:58


Цитата: Yura063 от 05 сен 2013, 16:43
Цитата: Tgr11 от 05 сен 2013, 16:13ТабАктов = Запрос.Выполнить().Выгрузить();
   СписокДокументов.Колонки.Добавить("Ссылка");

ТабАктов - какой тип?

таблица значений

Новенькая

ТабАктов - это таблицаЗначений на форме? как называется список на форме куда вы пытаетесь вывести?
Добавлено: 05 сен 2013, 17:09


Если на форме у вас табл часть "Список документов" и вы туда пытаетесь вывести, может это вам поможет:
ТабАктов = Запрос.Выполнить().Выгрузить();
      
Для Каждого ТекСтрока Из ТабАктов Цикл
                  
   НоваяСтрока = СписокДокументов.Добавить();
   НоваяСтрока.Документ= ТекСтрока.Ссылка;
               
КонецЦикла;

Tgr11

Цитата: Новенькая от 05 сен 2013, 17:06
ТабАктов - это таблицаЗначений на форме? как называется список на форме куда вы пытаетесь вывести?
Добавлено: 05 сен 2013, 17:09


Если на форме у вас табл часть "Список документов" и вы туда пытаетесь вывести, может это вам поможет:
ТабАктов = Запрос.Выполнить().Выгрузить();
      
Для Каждого ТекСтрока Из ТабАктов Цикл
                  
   НоваяСтрока = СписокДокументов.Добавить();
   НоваяСтрока.Документ= ТекСтрока.Ссылка;
               
КонецЦикла;
ДокументСписок.АктВыполненныхРабот тип значения на форме

Yura063

Совсем мало что понятно! у вас реквизит (тот который отображает вашу табличную часть на форме), куда вы хотите загрузить ссылки как называется?
Добавлено: 05 сен 2013, 17:55


ЦитироватьПроцедура ВывестиПодчиненныеДокументы()
   //для отображения актов по смете
   Список = Новый СписокЗначений;
   Запрос = Новый Запрос;
   Запрос.Текст =
   "ВЫБРАТЬ
   |   ВыполненныеРаботыПериод.Регистратор КАК Ссылка
   |ИЗ
   |   РегистрНакопления.ВыполненныеРаботы КАК ВыполненныеРаботыПериод
   |ГДЕ
   |   ВыполненныеРаботыПериод.СметныйДокумент = &Ссылка
   |   И ВыполненныеРаботыПериод.ВидДвижения = &Вид
   |СГРУППИРОВАТЬ ПО
   |   ВыполненныеРаботыПериод.Регистратор";
   Запрос.УстановитьПараметр("Ссылка", ЭлементыФормы.СметныйДокумент.Значение);
   Запрос.УстановитьПараметр("Вид", ВидДвиженияНакопления.Расход);
   ТабАктов = Запрос.Выполнить().Выгрузить();
   СписокДокументов.Колонки.Добавить("Ссылка");
дальше
    СписокДокументов.Загрузить(ТабАктов);
если конечно у вас СписокДокументов - таблица значений, если список значений выгружайте колонку из ТабАктов
Помогли, отблагодари!

Dethmontt

Если форма на которую вы хотите наложить отбор имеет тип "ДокументСписок" тогда примерно вот так (вам уже показывали выше!)


Список = Новый СписокЗначений;
//.............
//.............
   Запрос.УстановитьПараметр("Вид", ВидДвиженияНакопления.Расход);
   Список.ЗагрузитьЗначения(Запрос.Выполнить().Выгрузить().ВыгрузитьКолонку("Ссылка"));

СписокДокументов.Отбор.Ссылка.ВидСравнения = ВидСравнения.ВСписке;
СписокДокументов.Отбор.Ссылка.Значение = Список;
СписокДокументов.Отбор.Ссылка.Использование = Истина;
Если долго всматриваться в учебник...то в голову может прийти мысль его открыть!

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск