Группа: Пользователи
Сообщений: 181
Спасибо сказали: 2 раз
Рейтинг: 0
Натолкните на мысль, как установить отбор в форме выбора документа? Методы , что нашел только для УП. И , второе, возможно ли установить отбор по списку из нескольких значений документов (по двум и более документам)?
Группа: Пользователи
Сообщений: 181
Спасибо сказали: 2 раз
Рейтинг: 0
Нужно из одного документа открыть форму выбора документа ПриходнаяНакладная с отбором, например, по складу. Нашел штук пять методов в инете, но они работают только в УП. Вот код , что не так ? (конфигурация самописная)
Процедура РецептураПартия1НачалоВыбора(Элемент, СтандартнаяОбработка) СтандартнаяОбработка=Ложь; ЗначениеОтбора= Новый Структура("Склад", СкладМатериалов); ПараметрыВыбора= Новый Структура("Отбор", ЗначениеОтбора); Форма=ПолучитьФорму("Документ.ПриходнаяНакладная.ФормаВыбора",ПараметрыВыбора); Форма.Открыть();
СтандартнаяОбработка=Ложь; Форма = Документы.ПриходнаяНакладная.ПолучитьФормуВыбора(, Элемент); Отбор = Форма.ЭлементыФормы.ДокументСписок.Отбор; Отбор.ВидСравнения = ВидыСравнения.ВСписке; Отбор.Значение = СписокДокументов; // СписокДокументов - надо ранее где-то определить, это список значений Отбор.Использование = Истина; Форма.Открыть();
Пока Выборка.Следующий() Цикл СписокДокументов = Выборка.Ссылка;
КонецЦикла;
Форма = Документы.ПриходнаяНакладная.ПолучитьФормуВыбора(, Элемент); Отбор = Форма.ЭлементыФормы.ДокументСписок.Отбор; Отбор.ВидСравнения = ВидСравнения.ВСписке; Отбор.Значение = СписокДокументов; // СписокДокументов - надо ранее где-то определить, это список значений Отбор.Использование = Истина; Форма.Открыть(); КонецПроцедуры
Такая ошибка:
Цитата
{Документ.НарядЗаказПорошок.Форма.ФормаДокумента.Форма(98)}: Поле объекта не обнаружено (Отбор) Отбор = Форма.ЭлементыФормы.ДокументСписок.Отбор;
СписокДокументов = Результат.ВыгрузитьКолонку("Ссылка"); // Ниже не притендую на истину, но все же ФормаВыбора = Документы.ПриходнаяНакладная.ПолучитьФормуВыбора(); ФормаВыбора.Отбор.Ссылка.Значение = СписокДокументов; // Хотя может не Ссылка а Документ ФормаВыбора.Отбора.Ссылка.ВидСравнения = ВидСравнения.ВСписке ФормаВыбора.Отбор.Ссылка.Использование = Истина; Элемент.Значение = ФормаВыбора.ОткрытьМодально(); КонецПроцедуры
Личные бесплатные консультации не даю, для этого есть форум!
СписокДокументов = Результат.ВыгрузитьКолонку("Ссылка"); // Ниже не притендую на истину, но все же ФормаВыбора = Документы.ПриходнаяНакладная.ПолучитьФормуВыбора(); ФормаВыбора.Отбор.Ссылка.Значение = СписокДокументов; // Хотя может не Ссылка а Документ ФормаВыбора.Отбора.Ссылка.ВидСравнения = ВидСравнения.ВСписке ФормаВыбора.Отбор.Ссылка.Использование = Истина; Элемент.Значение = ФормаВыбора.ОткрытьМодально(); КонецПроцедуры
Цитата
{Документ.НарядЗаказПорошок.Форма.ФормаДокумента.Форма(93)}: Ошибка при установке значения атрибута контекста (Значение) ФормаВыбора.Отбор.Ссылка.Значение = СписокДокументов; // Хотя может не Ссылка а Документ по причине: Неверный тип значения
Группа: Местный
Сообщений: 9564
Из: Kharkiv, UA
Спасибо сказали: 2536 раз
Рейтинг: 0
Цитата(Vofka @ 03.06.13, 21:38)
Каждый когда-то шопопало писал
бесспорно. я лишь высказал свое мнение, и привел код который был бы правильным, а вместо спасибо за обучение, ткнули пальцем в ошибку, ну мне то что, главное, что человек разобрался где ошибка...
Цитата(alexkhua @ 03.06.13, 22:09)
logist, Ваш запрос ошибочный
Личные бесплатные консультации не даю, для этого есть форум!
1С Предприятие 8.3, 1С Предприятие 8.2, 1С Предприятие 8.1, 1С Предприятие 8.0, 1С Предприятие 7.7, Литература 1С, Общие вопросы по администрированию 1С, Методическая поддержка 1С - всё в одном месте: на Украинском 1С форуме!