Подскажите, как передать Организация и Склад из документа в обработку печать ценников?
Вывожу на из документа Поступления на печать ценники, т.е. при нажатии в доке на печать открывается обработка и туда передается номенклатура дока. А как передать Организация и Склад ?
Функция ПечатьЦенников()
Запрос = Новый Запрос("
|ВЫБРАТЬ РАЗЛИЧНЫЕ
| ИСТИНА КАК Печать,
| Док.Номенклатура КАК Номенклатура,
| Док.ХарактеристикаНоменклатуры КАК ХарактеристикаНоменклатуры,
| Док.Номенклатура.ЕдиницаХраненияОстатков КАК ЕдиницаИзмерения,
| 0 КАК Цена,
| 1 КАК Количество
|ИЗ
| Документ.ПоступлениеТоваровУслуг.Товары КАК Док
|ГДЕ
| Док.Ссылка = &Док
|");
Запрос.УстановитьПараметр("Док", Ссылка);
ОбработкаПечатьЦенников = Обработки.ПечатьЦенниковСШаблонами.Создать();
ОбработкаПечатьЦенников.Товары.Загрузить(Запрос.Выполнить().Выгрузить());
СтруктураПараметров = Новый Структура;
//СтруктураПараметров.Вставить("ЗаполнитьЦены", Истина);
ФормаПечатьЦенников = ОбработкаПечатьЦенников.ПолучитьФорму("Форма");
ФормаПечатьЦенников.Параметр = СтруктураПараметров;
ФормаПечатьЦенников.Открыть();
КонецФункции // ПечатьЦенников()
Altem @ Сегодня, 11:28
,
Вариантов много.
Например, через "СтруктураПараметров".
Petre @ Сегодня, 13:41
,
Пробывал
СтруктураПараметров = Новый Структура;
СтруктураПараметров.Вставить("ЗаполнитьЦены", Истина);
СтруктураПараметров.Вставить("Организация", Истина);
Один из вариантов помог вывести только склад
ОбработкаПечатьЦенников.Склад= СкладОрдер;
ОбработкаПечатьЦенников.Организация = Организация;
Если Организация реквизит объекта, можно так:
ОбработкаПечатьЦенников.Объект.Организация = Организация;
Flexy @ Сегодня, 14:56
,
реквизит Организация есть
Выдает ошибку
{Документ.ПоступлениеТоваровУслуг.МодульОбъекта(109)}: Поле объекта не обнаружено (Объект)
Давайте весь код функции. Ошибка связанна с самим документов, а не с обработкой.
Или так:
ОбработкаПечатьЦенников.Организация = ЭтотОбъект.Организация;
Параметры = Новый Структура("Организация",Организация);
ФормаВыбора = ПолучитьФорму("Обработки.ОбработкаПечатьЦенников",Параметры);
Flexy @ Сегодня, 15:03
,
Код Функции
Функция ПечатьЦенников()
Запрос = Новый Запрос("
|ВЫБРАТЬ РАЗЛИЧНЫЕ
| ИСТИНА КАК Печать,
| Док.Номенклатура КАК Номенклатура,
| Док.ХарактеристикаНоменклатуры КАК ХарактеристикаНоменклатуры,
| Док.Номенклатура.ЕдиницаХраненияОстатков КАК ЕдиницаИзмерения,
| 0 КАК Цена,
| 1 КАК Количество
|ИЗ
| Документ.ПоступлениеТоваровУслуг.Товары КАК Док
|ГДЕ
| Док.Ссылка = &Док
|");
Запрос.УстановитьПараметр("Док", Ссылка);
ОбработкаПечатьЦенников = Обработки.ПечатьЦенниковСШаблонами.Создать();
ОбработкаПечатьЦенников.Товары.Загрузить(Запрос.Выполнить().Выгрузить());
ОбработкаПечатьЦенников.Склад= Ссылка.СкладОрдер;
СтруктураПараметров = Новый Структура;
//СтруктураПараметров.Вставить("ЗаполнитьЦены", Истина);
ФормаПечатьЦенников = ОбработкаПечатьЦенников.ПолучитьФорму("Форма");
ФормаПечатьЦенников.Параметр = СтруктураПараметров;
ФормаПечатьЦенников.Открыть();
КонецФункции // ПечатьЦенников()
Petre @ Сегодня, 16:21
,
отладчиком остановил. Параметр правильно определяется именно той организации, как в документе.
А в форме обработке не заполняет.
Petre @ Сегодня, 16:59
,
Спасибо большое! Помогло.
А также всем кто помогал
Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7
https://pro1c.org.ua