Имя: Пароль:
1C
1С v8
v8: Пытаюсь вывести макет в 8.2. Пишет "невозможно осуществить вывод результата"
,
0 DGorgoN
 
17.10.11
11:34
&НаСервере
Функция СформироватьОтчетИвывестиНаПечать()
   Таб = Новый ТабличныйДокумент;
   Макет = Отчеты.КонтрольИсполнения.ПолучитьМакет("МакетОсновной");
   ТекущаяОбласть = Макет.ПолучитьОбласть("ЛицензионноеСоглашение");
   ТекущаяОбласть.Параметры.фтДата = ТекущаяДата();
   Таб.Вывести(ТекущаяОбласть);    
   Возврат(Таб);
КонецФункции

&НаКлиенте
Процедура СформироватьОтчет()
   Таб = Новый ТабличныйДокумент;
   Таб = СформироватьОтчетИвывестиНаПечать("");
   Таб.Показать();
КонецПроцедуры

P.S. Да, через СКД проще. Но блин у всех работает - а у меня не работает..
1 DGorgoN
 
17.10.11
11:34
&НаКлиенте
Процедура СформироватьОтчет()
   Таб = Новый ТабличныйДокумент;
   Таб.Показать();
КонецПроцедуры

Даже так ругается, на простой -.-
2 DGorgoN
 
17.10.11
11:36
У товарища в v8: Помогите с отчетом на 8.2 все работает. У меня нет =(
3 GenV
 
17.10.11
11:38
(0) У тебя Таб - реквизит формы?
4 DGorgoN
 
17.10.11
11:39
(3) не
5 DGorgoN
 
17.10.11
11:41
"Таб" вообще только в коде используется.

Пояснение - есть листок с текстом и датой. Его надо вывести если кнопку нажмешь на форме..
6 DGorgoN
 
17.10.11
11:41
Листок - это макет
7 DGorgoN
 
17.10.11
11:48
ап елы
8 mirrr
 
17.10.11
11:52
&НаКлиенте
Процедура а(Команда)
   ТабДок=аНаСервере();
   ТабДок.Показать();
КонецПроцедуры

&НаСервере
Функция аНаСервере()
   
   
   ОтчетОбъект = РеквизитФормыВЗначение("Отчет");
   МакетА=ОтчетОбъект.ПолучитьМакет("а");
   ТабДок = Новый ТабличныйДокумент;
   ТабДок.Очистить();
       ТекущаяОбласть = МакетА.ПолучитьОбласть("Шапка");

   ТабДок.Вывести(ТекущаяОбласть);    
   Возврат(ТабДок);
   

КонецФункции
9 mirrr
 
17.10.11
11:52
выводит
10 DGorgoN
 
17.10.11
11:53
щас гляну
11 DGorgoN
 
17.10.11
11:54
(9) неа
12 mirrr
 
17.10.11
11:55
убери на клиенте
 Таб = Новый ТабличныйДокумент;
13 acsent
 
17.10.11
11:56
табличныйдокумент нельзя передавать с сервера на клиент
14 mirrr
 
17.10.11
11:57
(13)это почему же?
15 mirrr
 
17.10.11
11:58
+(14) формируешь макет на сервере, а показать надо на клиенте
16 DGorgoN
 
17.10.11
12:00
(15) Дык не работает все равно
17 DGorgoN
 
17.10.11
12:00
щас скрины выложу
18 DGorgoN
 
17.10.11
12:01
19 DGorgoN
 
17.10.11
12:03
Через команду главное делает и не ругается. А через отчет - фига там..
20 DGorgoN
 
17.10.11
12:03
&НаКлиенте
Процедура СформироватьОтчет()
   ТабДок=аНаСервере();
   ТабДок.Показать();
КонецПроцедуры

&НаСервере
Функция аНаСервере()
   ТабДок = Новый ТабличныйДокумент;
   Возврат(ТабДок);
КонецФункции

Даже это не отрабатывает
21 DGorgoN
 
17.10.11
12:08
Ну же..
22 mirrr
 
17.10.11
12:09
выложи cf-ник, т.к. работает
23 mirrr
 
17.10.11
12:12
сформировать - станд. команда? Если да, то создай свою команду, должно заработать
24 GenV
 
17.10.11
12:13
(20) Стандартную кнопку Сформировать используешь (если да, то есть в модуле отчета ПриКомпоновкеРезультата)
25 DGorgoN
 
17.10.11
12:15
(22)
http://zalil.ru/31881848

(23) Угу. Только в этом ошибка? Ппц. Сейчас опробую
26 DGorgoN
 
17.10.11
12:18
О да. Именно в этом и была ошибка.

Только я не пойму смысла и логики. Проясните плиз.
27 mirrr
 
17.10.11
12:20
(26) типа надо через скд делать, тогда станд. кнопка работает
28 GenV
 
17.10.11
12:22
(26) Стандартная кнопка предназначена для вывода отчета на СКД (а у тебя где-то не хватает данных для этого). Или в модуле определить процедуру ПриКомпоновкеРезультата и в ней выводить.
29 DGorgoN
 
17.10.11
12:46
(27) Я уже делал через скд - да получалось, потом удалил СКД и попытался так и встрял. Всем спасибо за разъяснение. Просто логики 1с ных программистов я иногда не понимаю =)
Кaк может человек ожидaть, что его мольбaм о снисхождении ответит тот, кто превыше, когдa сaм он откaзывaет в милосердии тем, кто ниже его? Петр Трубецкой