Имя: Пароль:
1C
1С v8
помогите новичку
0 vitalka
 
14.07.11
10:51
чуть-чуть зная семерку пытаюсь разобраться с восьмеркой и не могу понять элементарного, помогите кто может

В форме внешнего отчета есть реквизит ВыбДоговор типа справочник - Договоры,  этот справочник подчинен справочнику Контрагенты

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

так вот, если я вывожу в форме просто ВыбДоговор - получаю сам договор, а вот реквизиты его на печать почемуто не выводятся

Что я делаю не так?
1 le_
 
14.07.11
10:53
Покажи код.
2 Рэйв
 
14.07.11
10:57
(0)Скорее всего ты неправильно работаешь с параметрами макета.
Там все совсем не по семерочному.
3 kosts
 
14.07.11
10:59
в 8-ке параметр в макете должен быть без точек.
нужно так
Область.Параметры.ВыбДоговорДата = ВыбДоговор.Дата;
4 Ненавижу 1С
 
гуру
14.07.11
11:02
Лучше сделать Дата и юзать Заполнить()
5 vitalka
 
14.07.11
11:08
Процедура Печать(Элемент)
   ТабДок = Новый ТабличныйДокумент;
   Макет = ПолучитьМакет("Печать");
   // Заголовок
   Область = Макет.ПолучитьОбласть("Заголовок");
   ТабДок.Вывести(Область);
   // Шапка

   Шапка = Макет.ПолучитьОбласть("Шапка");
   Шапка.Параметры.Заполнить(ЭтотОбъект);
   ТабДок.Вывести(Шапка);

   ТабДок.ОтображатьСетку = Ложь;
   ТабДок.Защита = Ложь;
   ТабДок.ТолькоПросмотр = Ложь;
   ТабДок.ОтображатьЗаголовки = Ложь;
   ТабДок.Показать();

КонецПроцедуры
6 wraithik
 
14.07.11
11:13
(5)
а таблица случаем не имеет вид
Договор:    [ВыбДоговор.Наименоване]

Такое в 8-ке делать низя.
Сделай так.
Таблица:

СекцияДоговор: Договор [наименование] № [номер] от [дата]

Код:

Договор = Макет.ПолучитьОбласть("СекцияДоговор");
Договор .Параметры.Заполнить(ВыбДоговор);
ТабДок.Вывести(Договор);
7 palpetrovich
 
14.07.11
11:14
(5) когда используешь "Заполнить(.." - параметры в макете дожны совпадать с реквизитами справочника (документа)
8 le_
 
14.07.11
11:20
(5) Назови параметры в макете "Дата" и "ВалютаВзаиморасчетов".
9 vitalka
 
14.07.11
11:55
Процедура Печать(Элемент)
   ТабДок = Новый ТабличныйДокумент;
   Макет = ПолучитьМакет("Печать");
   // Заголовок
   Область = Макет.ПолучитьОбласть("Заголовок");
   ТабДок.Вывести(Область);
   // Шапка
   нннн = ВыбДоговор.Наименование;
   вввв = ВыбДоговор.Владелец;
   Шапка = Макет.ПолучитьОбласть("Шапка");
   Шапка.Параметры.Заполнить(ЭтотОбъект);
   ТабДок.Вывести(Шапка);

   ТабДок.ОтображатьСетку = Ложь;
   ТабДок.Защита = Ложь;
   ТабДок.ТолькоПросмотр = Ложь;
   ТабДок.ОтображатьЗаголовки = Ложь;
   ТабДок.Показать();

КонецПроцедуры

Просто чтоб для себя разобраться, в основах.
Как мне в секцию Шапка макета передать нннн и вввв?
10 le_
 
14.07.11
11:57
Шапка.Параметры.нннн = ВыбДоговор.Наименование;
Шапка.Параметры.вввв = ВыбДоговор.Владелец;
11 vitalka
 
14.07.11
11:59
это в модуле, а в макете просто нннн и вввв?
12 le_
 
14.07.11
12:00
(11) ага
13 le_
 
14.07.11
12:10
Но не нужно стараться разрабатывать отчеты на восьмерке так, как это делалось в семерке.
В 8 есть такие шутки, как ПостроительОтчетов и СКД. Их использование зачастую позволяет сократить время разработки в разы, и сами отчеты будут выводиться быстрее...

Подобное (5) только в печатных формах документов в основном используется...
14 vitalka
 
14.07.11
12:22
Мне надо к УПП 1.2 прикрутить возможность печати типового договора с контрагентами, причем вносить изменения в конфигурацию не хочется. вот и решил сделать внешний отчет с нужной мне печатной формой.
15 vitalka
 
14.07.11
12:32
принцип понял, все получилось

Огромное всем спасибо.
Компьютеры — это как велосипед. Только для нашего сознания. Стив Джобс