Имя: Пароль:
1C
1C 7.7
v7: Печать карты эталона
0 rosalin
 
11.09.12
13:46
Ребята подскажите как сделать

На форме элемента справочника есть кнопка с процедурой печати

Процедура ПечатьЭталона()
   
   Таб = СоздатьОбъект("Таблица");  
   Таб.ИсходнаяТаблица("Эталон");

   СекцияШапка = Таб.ПолучитьСекцию("Шапка");

   Таб.ВывестиСекцию(СекцияШапка);
   

   Таб.Опции(0, 0, 0, 0, "ОпцииПечатиЭталона", "ОпцииПечатиЭталона");
//    Таб.ПараметрыСтраницы(2,,,,,0,0,,,1);
   Таб.ТолькоПросмотр(1);
   Таб.Показать();
   
КонецПроцедуры

Хотелось бы вынести для удобства кнопку на Основную форму списка
как написать туже процедуру для текущего элемента списка

Процедура ПечатьЭталона()

   Если (ТекущийЭлемент().Выбран() = 0) Тогда
   
       Предупреждение("Установите курсор на элемент справочника.", 60);
       Возврат;
   
   КонецЕсли;
   
   Если (ТекущийЭлемент().ЭтоГруппа() = 1) Тогда
   
       Предупреждение("Установите курсор на элемент справочника, а не на группу.", 60);
       Возврат;
   
   КонецЕсли;

   ?????????

КонецПроцедуры // ПечатьЭталона()

Конфа ПУБ ,
1 BlackSeaCat
 
11.09.12
13:52
Модифицировать макет так, чтобы обращение к печатаемым реквизитам делалось через ТекущийЭлемент().

То есть, вместо Наименование - ТекущийЭлемент().Наименование и т.д.
2 Voronve
 
11.09.12
13:53
(0) и выдернуть код процедуры из элемента в форму списка
3 Злопчинский
 
11.09.12
14:04
(1) что же вы кривые советы людям даетеи ;-)?
.
если сделать так как в (1) то, ПРИ ОТСУТСТВИИ ПРОВЕРКИ на то, что печатаемый элемент (из формы элемента справочника) актуализирован в базу - получим, что на форме элемента будут одни д анные, а в распечатке другие...
4 Ёпрст
 
11.09.12
14:09
(0)
не надо писать ТекущийЭлемент() в этом коде.

Сразу обращайся ко всем реквизитам и методам справочника:

Процедура ПечатьЭталона()

   Если ЭтоГруппа() = 1 Тогда
   
       Предупреждение("Установите курсор на элемент справочника, а не на группу.", 60);
       Возврат;
   
   КонецЕсли;
 
   //для примера
   Сообщить(Наименование);
   Сообщить(Код);

КонецПроцедуры
5 BlackSeaCat
 
11.09.12
14:46
(3) Забесплатно и такие сойдут. :-)
6 rosalin
 
11.09.12
14:58
Voronve, спасибо за совет все получилось
7 BlackSeaCat
 
11.09.12
15:00
Ну вот, автор даже и не понял про "кривость советов", что и требовалось доказать.
8 rosalin
 
11.09.12
15:09
(7) Конечно, не понял , я же поэтому спрашиваю , потому как новичок
Компьютер — устройство, разработанное для ускорения и автоматизации человеческих ошибок.