Имя: Пароль:
1C
1С v8
Передать Таблицу Значений
,
0 ilyayakimets
 
12.09.19
17:15
Добрый день!
Как можно вывести на печать таблицу значений, которая формируется и заполняется в форме обработки?
1 fisher
 
12.09.19
17:16
Да как угодно.
Можно ручками секциями в табдок, можно выгрузить В ТЗ и скормить СКД.
2 fisher
 
12.09.19
17:17
А можно через стандартное "Вывести список" :)
3 VladZ
 
12.09.19
17:21
(0) Куда передать?
4 ilyayakimets
 
13.09.19
08:36
(1) Вот этот вариант мне больше всего подходит. Можно подробнее? В ТЗ я выгрузил, а вот как СКД передать, что-то не догоняю...
5 FIXXXL
 
13.09.19
08:39
(4) опиши внешний источник данных в схеме и, формируя кодом компоновку, подсунь свою ТЗ
6 ilyayakimets
 
13.09.19
08:39
(3) На этой же форме должна быть кнопка, которая и вывела бы ТЗ из этой формы на печать.
7 FIXXXL
 
13.09.19
08:39
(5) "Набор данных - объект"
8 ilyayakimets
 
13.09.19
08:40
(5) Пытался сделать как тут, но ничего не вышло:
http://wiki.programstore.ru/1s-skd-programmnoe-sozdanie-skd/

За ссылки тут не банят, надеюсь?
9 FIXXXL
 
13.09.19
08:41
10 ilyayakimets
 
13.09.19
08:52
(9) Через построитель ничего не выводит
11 dka80
 
13.09.19
08:54
12 FIXXXL
 
13.09.19
08:55
(10) пятый пост смотри
13 ilyayakimets
 
13.09.19
08:59
(12) Если делать как в (11) - я так понял эта процедура в модуле самого отчета на скд.
И как мне в него передать нужную ТЗ?
14 dka80
 
13.09.19
09:07
(13) Создай реквизит отчета строкового типа неограниченной длины.
Из формы помести в него твою тз
ДополнительныеДанные= ПоместитьВоВременноеХранилище(ОтветственныеТаб, Новый УникальныйИдентификатор);

Из модуля прочитай
ДанныеТЗ = ПолучитьИзВременногоХранилища(ДополнительныеДанные);
15 dka80
 
13.09.19
09:07
+14 ДополнительныеДанные= ПоместитьВоВременноеХранилище(ТВОЯТЗ, Новый УникальныйИдентификатор);
16 ilyayakimets
 
13.09.19
09:15
(14) Из формы отчета?
17 vova1122
 
13.09.19
09:25
(10) через построитель. 31 сообщение тут
Получить данные в отчёт
18 ilyayakimets
 
13.09.19
09:44
(17) Не получается через него, ничего не происходит.
19 hhhh
 
13.09.19
10:26
(18) получай тз в модуле отчета
20 ilyayakimets
 
13.09.19
10:38
(19) Да вот это у меня и не получается, как в модуле отчета получать тз из формы обработки, в которой вызывается отчет?
21 hhhh
 
13.09.19
10:55
(20) передать тз через параметр в процедуру модуля отчета
22 maxkras26
 
13.09.19
10:55
(20) Сделай табличную часть у отчета. Тз помести в табличную часть. и в модуле объекта сможешь к ней обращаться.
Ну или не переходи в модуль отчета. А печатай ТабДок из модуля формы.

Либо передавай ТЗ как параметр процедуры, когда переходишь из формы к модулю отчета.
23 SBorya
 
13.09.19
17:08
Пробуй так
На сервере

     ОбработкаОбъект    = РеквизитФормыВЗначение("Объект");
    
// перед эти рисуем макет СКД
// получаем его
     СхемаКомпоновкиДанных = ОбработкаОбъект.ПолучитьМакет("ОсновнаяСхемаКомпоновкиДанных");
    
     Настройки = СхемаКомпоновкиДанных.НастройкиПоУмолчанию;
    
     ВнешниеНаборыДанных    = Новый Структура;
// функци ПолучитьТаблицуДляСКД() = с формы таблицу значений
     ВнешниеНаборыДанных.Вставить("ВнешняяТаблица", ПолучитьТаблицуДляСКД());
    
     //Помещаем в переменную данные о расшифровке данных
     ДанныеРасшифровки = Новый ДанныеРасшифровкиКомпоновкиДанных;
    
     //Формируем макет, с помощью компоновщика макета
     КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных;
    
     //Передаем в макет компоновки схему, настройки и данные расшифровки
     МакетКомпоновки = КомпоновщикМакета.Выполнить(СхемаКомпоновкиДанных,
     Настройки, ДанныеРасшифровки);
    
     //Выполним компоновку с помощью процессора компоновки
     ПроцессорКомпоновкиДанных = Новый ПроцессорКомпоновкиДанных;
     ПроцессорКомпоновкиДанных.Инициализировать(МакетКомпоновки,    ВнешниеНаборыДанных);//, ДанныеРасшифровки);
    
    
     //Выводим результат в табличный документ
     ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент;
     ПроцессорВывода.УстановитьДокумент(Результат);
    
     ПроцессорВывода.Вывести(ПроцессорКомпоновкиДанных);