Имя: Пароль:
1C
1С v8
Макет СКД в форме
, ,
0 Necessitudo
 
19.09.11
20:27
Добрый вечер. Есть обработка, у нее в списках макетов - макет на СКД. Хотел бы выводить этот макет в форму обработки - например, в табличный документ. Может быть кто-нибудь подкинет работающий код, делающий аналогичные действия?
1 wertyu
 
19.09.11
20:29
(0) а зачем тебе текст выводить в табличный документ?
2 Necessitudo
 
19.09.11
20:35
(0) Ну я к примеру. Мне главное вывести его на форму, а во что - дело десятое. Да, кстати - 8.1 к сожалению.
3 IronDemon
 
19.09.11
21:09
Макет оформления или макет схема?
4 Demasiado
 
19.09.11
21:11
Сто пудов схема)
5 IronDemon
 
19.09.11
21:13
Если схема - то ЧТО ты хочешь увидеть?
6 IronDemon
 
19.09.11
21:14
(4) Сначала прочитал "сто пудов смеха" :)
7 wertyu
 
19.09.11
21:19
(2) консоль схемы компоновки данных выводит в форму правда в текстовый документ, для этого надо схему сохранить в xml и открыть в консоле
8 wertyu
 
19.09.11
21:21
+(7) xml конечно можно не только там открыть, просто объясни чего ты хочешь получить
9 Necessitudo
 
19.09.11
21:29
Вот что я хотел:) Спасибо Гилеву!




Процедура КнопкаВыполнитьНажатие(Кнопка)
    Схема = ПолучитьМакет("Макет");
    Настройки = Схема.НастройкиПоУмолчанию;
   
    КомпоновщикМакета = Новый  КомпоновщикМакетаКомпоновкиДанных;
   
    Макет = КомпоновщикМакета.Выполнить(Схема, Настройки);
   
    ПроцессорКомпоновки  = Новый ПроцессорКомпоновкиДанных;
    ПроцессорКомпоновки.Инициализировать(Макет);
   
    ПроцессорВывода  = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент;
   
    ТабДок = ЭлементыФормы.ТабДок;
    ПроцессорВывода.УстановитьДокумент(ТабДок);
    ПроцессорВывода.Вывести(ПроцессорКомпоновки);
   
КонецПроцедуры
10 Necessitudo
 
19.09.11
21:30
В 8.1 заработает, как думаете?
11 IronDemon
 
19.09.11
21:31
Тьфу ты, тебе программно СКД выполнить и на форму результат вывести. А мы уже гадали - что и зачем :)
12 wertyu
 
19.09.11
21:32
(9) ну это программируемое исполнение и вывод просто, в 8.1 конечно заработает
13 Kookish
 
19.09.11
21:39
А еще есть Хрусталева с ее "Разработкой сложных отчетов", изданной аж в 2008 г. Там подобных примеров просто завались.
14 Kookish
 
19.09.11
21:40
Я по этой книге СКД изучал.
15 Necessitudo
 
19.09.11
22:01
У меня есть - я полисал-полистал, да забросил. Стал изучать по тому, что сейчас написано внизу слева на экране:)
16 wertyu
 
19.09.11
22:04
(15) плохо, надо учиться пользоваться литературой ))
17 Necessitudo
 
19.09.11
22:41
(16) Проблема в том, что 1С быстро совершенствуется...А книга была выпущена в 2008 г.
18 Kookish
 
19.09.11
23:21
(17) Как это согласуется с (10)?
19 Necessitudo
 
20.09.11
06:35
(18) А никак. Была бы возможность отказаться от работы с 8.1 - с удовольствием отказался бы. К счастью, из всех баз на 8.1 только одна.          

Так, а у меня еще вопрос. Скажем, в макете СКД, который я получаю, есть параметр ДатаНачала. И на форме есть такой же параметр(ЭлементыФормы.ДатаНачала). Как модифицировать код вывода, чтобы эти параметры связать? Это где-то на уровни Настройки?
20 Necessitudo
 
20.09.11
09:09
Ну же
21 IronDemon
 
20.09.11
09:45
22 Necessitudo
 
20.09.11
10:11
Оки....А как получить расшифровку по нужному полю?
23 Necessitudo
 
20.09.11
10:16
Пишу вот так - не работает




ЭлементыФормы.ТабДок.Очистить();
    Схема = ПолучитьМакет("Макет");
    Настройки = Схема.НастройкиПоУмолчанию;
    ДанныеРасшифровки = Новый ДанныеРасшифровкиКомпоновкиДанных;
    ДанныеРасшифровки.Элементы.Добавить(Тип("ДокументСсылка.РеализацияТоваровУслуг"),, "Ссылка");
   
   
   
    КомпоновщикМакета = Новый  КомпоновщикМакетаКомпоновкиДанных;
       
    Макет = КомпоновщикМакета.Выполнить(Схема, Настройки, ДанныеРасшифровки);
   
    ПроцессорКомпоновки  = Новый ПроцессорКомпоновкиДанных;
    ПроцессорКомпоновки.Инициализировать(Макет,,ДанныеРасшифровки);
   
    ПроцессорВывода  = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент;
   
    ТабДок = ЭлементыФормы.ТабДок;
    ПроцессорВывода.УстановитьДокумент(ТабДок);
    ПроцессорВывода.Вывести(ПроцессорКомпоновки);
24 IronDemon
 
20.09.11
10:37
25 Necessitudo
 
20.09.11
10:44
(24) Чтобы я без тебя делал:)
26 IronDemon
 
20.09.11
10:50
(25) Книжки бы читал ;)
27 Necessitudo
 
20.09.11
15:47
(26) Можешь тогда тебе и не лень объяснить, должно ли работать то, что я написал в (23)?:)
Здесь можно обсудить любую тему при этом оставаясь на форуме для 1Сников, который нужен для работы. Ymryn