Имя: Пароль:
1C
1С v8
Обращение к реквизиту объекта из модуля менеджера
0 lirt82
 
06.10.16
13:54
Необходимо доработать обработку а именно ее макет, по условию задачи нужно создать реквизит тип булево, разместить его на форме обработки и в зависимости от его значения выводить данные в макет обработки, процедура печати находиться в модуле менеджера. Вопрос как обратиться из модуля менеджера (процедура Печать) к значению реквизита объекта?
пробовал через Метаданные, получаю сам реквизит но его значения нет.
1 DrShad
 
06.10.16
13:55
блин, только давеча была ровно такая же тема

НИКАК
2 zak555
 
06.10.16
13:56
Передавай в менеджер объект
3 DrShad
 
06.10.16
13:56
даже проверил, вчерашняя тема не ТС, откуда у людей массово такие мысли появляются
4 Михаил Козлов
 
06.10.16
13:56
В процедуру Печать обычно передается "массив" объектов для печати.
5 DrShad
 
06.10.16
13:58
(4) +1
но массив из одного элемента тоже массив )))
6 Михаил Козлов
 
06.10.16
15:31
(5) ТС нужно сообразить, что он должен делать для массива.
7 azernot
 
06.10.16
15:34
Нужно тупо передать в процедуру "печать" в менеджере нужный параметр.. в составе структуры других параметров, если таковая уже есть, или прямым параметром.

Например:

Процедура Печать(РеквизитТипБулево)

  Если РеквизитТипБулево Тогда

  Иначе

  КонецЕсли;

КонецПроцедуры
8 lirt82
 
07.10.16
07:15
(7) да структура есть как этот параметр передать в процедуру печат в менеджере?
реквизит объекта формы создал имя ВыводитьПодвалСподписями тип Булево
вот код из менеджера обработки
// Формирует печатные формы.
//
// Параметры:
//  МассивОбъектов  - Массив    - ссылки на объекты, которые нужно распечатать;
//  ПараметрыПечати - Структура - дополнительные настройки печати;
//  КоллекцияПечатныхФорм - ТаблицаЗначений - сформированные табличные документы (выходной параметр)
//  ОбъектыПечати         - СписокЗначений  - значение - ссылка на объект;
//                                            представление - имя области в которой был выведен объект (выходной параметр);
//  ПараметрыВывода       - Структура       - дополнительные параметры сформированных табличных документов (выходной параметр).
//
Процедура Печать(МассивОбъектов, ПараметрыПечати, КоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода) Экспорт
    
    // Печать Опись ОС при вводе остатков
    НужноПечататьМакет = УправлениеПечатью.НужноПечататьМакет(КоллекцияПечатныхФорм, "СреднийЗаработок");
    Если НужноПечататьМакет Тогда
        УправлениеПечатью.ВывестиТабличныйДокументВКоллекцию(
            КоллекцияПечатныхФорм,
            "СреднийЗаработок",
            НСтр("ru = 'Печать'"),
            ПечатьСреднегоЗаработка(МассивОбъектов, ОбъектыПечати, ПараметрыПечати),
            ,
            "Обработка.РасчетПоСреднемуЗаработку.ПФ_MXL_Макет");
    КонецЕсли;
    
КонецПроцедуры

Функция ПечатьСреднегоЗаработка(МассивОбъектов, ОбъектыПечати, ПараметрыПечати)
    
    УстановитьПривилегированныйРежим(Истина);
    
    ДанныеОбъекта = ПараметрыПечати.ДанныеОбработки;
    
    ТабДокумент = Новый ТабличныйДокумент;
    
    Макет = ПолучитьМакет("ПФ_MXL_Макет");
    
    ТабДокумент = Новый ТабличныйДокумент;
9 azernot
 
07.10.16
14:24
(8) Давай кусок кода из формы обработки. Где вызывается процедура из модуля менеджера?
Требовать и эффективности, и гибкости от одной и той же программы — все равно, что искать очаровательную и скромную жену... по-видимому, нам следует остановиться на чем-то одном из двух. Фредерик Брукс-младший