Создание печатной формы табличной части документа с использованием СКД

12.12.11

Разработка - СКД

Создаем макет СКД, там произвольно или с какими-нибудь условиями выбираем в наборе данных поля табличной части, ставим условие на документ владелец,  и задаем оформление. В форме документа добавляем кнопку печать, прописываем в параметрах наш документ и оп-ля - печатная форма готова


Процедура ОсновныеДействияФормыПечать(Кнопка)



 Если
Ссылка = Документы.РасчетЗаказа.ПустаяСсылка() тогда

 
Предупреждение("Документ не записан");

 Возврат;

 Иначе

 
Схема = ПолучитьМакет("Макет1");

 
Настройки = Схема.НастройкиПоУмолчанию;

 
КомпоновщикНастроек = Новый КомпоновщикНастроекКомпоновкиДанных();

 
КомпоновщикНастроек.ЗагрузитьНастройки(Настройки);



 
ПараметрДок = Новый ПараметрКомпоновкиДанных("документ");

 
ЗначениеПараметраДок = КомпоновщикНастроек.Настройки.ПараметрыДанных.НайтиЗначениеПараметра(ПараметрДок);

 
ЗначениеПараметраДок.Значение = Ссылка;

 
ЗначениеПараметраДок.Использование = Истина;

 
Настройки = КомпоновщикНастроек.Настройки;



 
КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных;

 
МакетКомпоновки = КомпоновщикМакета.Выполнить(Схема, Настройки);

 
ПроцессорКомпоновкиДанных = Новый ПроцессорКомпоновкиДанных;

 
ПроцессорКомпоновкиДанных.Инициализировать(МакетКомпоновки);

 
ДокументРезультат = Новый ТабличныйДокумент;

 
ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент;

 
ПроцессорВывода.УстановитьДокумент(ДокументРезультат);

 
ПроцессорВывода.Вывести(ПроцессорКомпоновкиДанных);



 
ДокументРезультат.ОтображатьЗаголовки = Ложь;

 
ДокументРезультат.ОтображатьСетку = Ложь;

 
ДокументРезультат.АвтоМасштаб = Истина;

 
ДокументРезультат.Показать();



 КонецЕсли;



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

См. также

SALE! 20%

Infostart Toolkit: Инструменты разработчика 1С 8.3 на управляемых формах

Инструментарий разработчика Роли и права Запросы СКД Платформа 1С v8.3 Управляемые формы Запросы Система компоновки данных Конфигурации 1cv8 Платные (руб)

Набор инструментов программиста и специалиста 1С для всех конфигураций на управляемых формах. В состав входят инструменты: Консоль запросов, Консоль СКД, Консоль кода, Редактор объекта, Анализ прав доступа, Метаданные, Поиск ссылок, Сравнение объектов, Все функции, Подписки на события и др. Редактор запросов и кода с раскраской и контекстной подсказкой. Доработанный конструктор запросов тонкого клиента. Продукт хорошо оптимизирован и обладает самым широким функционалом среди всех инструментов, представленных на рынке.

13000 10400 руб.

02.09.2020    122076    670    389    

713

Генератор схемы компоновки данных (СКД), написание кода схемы программно

Инструментарий разработчика СКД Платформа 1С v8.3 Конфигурации 1cv8 1С:Зарплата и Управление Персоналом 3.x Абонемент ($m)

По выбранной схеме компоновки данных генерирует программный код, который генерирует СКД, аналогичную исходной схеме. Есть дополнительные инструменты для просмотра дерева схемы, сравнение исходной схемы и полученной по коду, а также сравнение изменений в сгенерированном коде для исходной схемы и для измененной.

3 стартмани

05.02.2024    4035    25    obmailok    17    

63

Набор-объект для СКД по тексту или запросу

Запросы СКД Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 Абонемент ($m)

Есть список полей в виде текста, или запрос - закидываем в набор СКД.

1 стартмани

31.01.2024    2000    2    Yashazz    0    

29

СКД на JavaScript в 1С

СКД WEB-интеграция Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

Долгое время поддерживаю web-портал, в котором появилась необходимость создавать отчеты. Просмотрев различные фреймворки на js, я решил сделать свое решение, которое позволяло бы быстро разрабатывать и добавлять новые отчеты на web-портал.

2 стартмани

11.12.2023    8155    20    John_d    25    

123

Использование менеджера временных таблиц в СКД

СКД Платформа 1С v8.3 Система компоновки данных Конфигурации 1cv8 Бесплатно (free)

Рассмотрим еще не получивший широкого распространения способ работы с внешними данным в СКД. В процессе обсуждения работы с СКД выяснилось, что многие не знакомы со способом помещения туда временной таблицы, полученной предварительно. Статья будет полезна разработчикам, знакомым с программным созданием СКД.

05.12.2023    4652    PROSTO-1C    13    

61

Модель СКД

Инструментарий разработчика СКД Платформа 1С v8.3 Система компоновки данных Абонемент ($m)

DSL для работы с СКД.

1 стартмани

15.11.2023    5805    15    kalyaka    5    

86

Пользовательские настройки отчетов 1С. Часть 1. Простые и расширенные настройки

СКД Инструкции пользователю Платформа 1С v8.3 Конфигурации 1cv8 1С:Бухгалтерия 3.0 Россия Бесплатно (free)

Простые приемы работы с отчетами на СКД. Что нужно знать пользователю про настройку отчетов, чтобы использовать их на полную катушку.

18.09.2023    6698    accounting_cons    5    

29

Разрыв страницы в СКД. Легко!

СКД Платформа 1С v8.3 Система компоновки данных Бесплатно (free)

Когда отчет надо разделить по страницам, это всегда проблема для разработчика. Поскольку в СКД нет стандартных вариантов, как это сделать. Нашел (на свой взгляд) самое простое и оптимальное решение.

01.09.2023    4518    KVIKS    15    

80
Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
0. sanja 153 12.12.11 14:09 Сейчас в теме
Создаем макет СКД, там произвольно или с какими-нибудь условиями выбираем в наборе данных поля табличной части, ставим условие на документ владелец, и задаем оформление. В форме документа добавляем кнопку печать, прописываем в параметрах наш документ и оп-ля - печатная форма готова

Перейти к публикации

1. Yasen 490 12.12.11 14:09 Сейчас в теме
Это все замечательно конечно, но кто потом за Вами будет конфигурацию обновлять?

Вот здесь народ копья ломает чтоб форму не менять лишний раз, а Вы не удосужитесь почитать ИТС про внешние печатные формы...

Ни одна из "1С:Комплексная автоматизация 8, 1С:Бухгалтерия 8, 1С:Зарплата и Управление Персоналом 8, 1С:Управление торговлей 8, 1С:Управление производственным предприятием 8" не годится для предлагаемого решения.
Минус.

Доржи, и зачем же ты придумал инфостарт-деньги...
SiAl; Winstoncuk; +2 2 Ответить
4. fomix 33 14.12.11 11:45 Сейчас в теме
(1) Yasen,
Может (sanja) Алек4сандр и не знает как ими (внешними формами) пользоваться?! А так, кто мешает подобный механизм реализовать во внешней печатной форме...
2. sanja 153 12.12.11 16:47 Сейчас в теме
Добавленная кнопка с процедурой и макет нисколько не усложнят обновление с новыми возможностями платформы... Создание внешней печатной формы вообще не проблема: создать внешнюю обработку, создать макет СКД, в модуле прописать экспортную функцию печать, далее вставить код из публикации. Все
Минус не понимаю. И причем тут инфостарт-деньги, публикация выложена текстом
Gendelf; Serg_KSV; ben19791010; Vary; +4 Ответить
3. vkt 125 13.12.11 12:17 Сейчас в теме
(2)
Публикация имеет место быть. В существующем потоке информации не всегда можно легко найти то что нужно. А здесь - то что проверено и работает. Применять или нет - дело личное.

sanja, ты бы еще файлик с реализованным примером выложил для наглядности
11. MyPuK_OLD 28.04.13 11:17 Сейчас в теме
(2) Доброго времени суток!!!
Можно ли получить более подробное описание?..Желательно со скринами как сделать вот это все: "Создаем макет СКД, там произвольно или с какими-нибудь условиями выбираем в наборе данных поля табличной части, ставим условие на документ владелец, и задаем оформление"...
5. dim0n_la 94 14.12.11 13:22 Сейчас в теме
В каком-то очень частном случае может и нужна такая печатная форма..
6. isn 15 16.12.11 16:08 Сейчас в теме
Печатные формы "ТЧ документа с использованием СКД" очень распространены в УТ 11. Рекомендую ознакомится с печатью документа "ПриказНаПроведениеИнвентаризацииТоваров" - "печать инвентаризационной описи". там собираются данные из 3 документов ссылающихся на текущий документ.
На мой взгляд автору сего опуса будет полезно.
10. mikhailv 19 01.08.12 11:17 Сейчас в теме
"ПриказНаПроведениеИнвентаризацииТоваров" - "печать инвентаризационной описи"

(6) isn, ткните носом: в модуле документа не увидел схемы. Только стандартный запрос и макет.
(детально смотрел СформироватьПечатнуюФормуИНВ3, если имелась в виду "Инвентаризационная опись ИНВ3")
7. Valerich 1633 19.12.11 11:14 Сейчас в теме
Если Ссылка = Документы.РасчетЗаказа.ПустаяСсылка() тогда


от таких перлов советую избавляться сразу. Переменная Ссылка может быть равна и неопределено и другой ссылке вовсе не на нужный тип объекта...
Так что надо проверять на заполненность в общем, на соответствие нужному типу.

Очень начинающий код.

Советую автору не выкладывать в виде обработок, а выносить в форум на обсуждение (если действительно хочет научиться, а не набрать плюсиков на неограниченное скачивание).
8. master_yoda 27 12.01.12 16:04 Сейчас в теме
Да и еще один момент:

ЗначениеПараметраДок.Использование = Истина; не в том месте стоит

надо ставить перед

ЗначениеПараметраДок.Значение = Ссылка;

Согласе с тем что это очень начинающий код
9. Jon2011 80 28.02.12 19:32 Сейчас в теме
Полезная вещь. Сам долго ковырялся с настройкой СКД, а тут все на конкретном примере показано. Спасибо.
Такая форма нужна чтобы не мудрить табличные макеты, с их бесконечными настройками.
12. MyPuK_OLD 06.05.13 08:15 Сейчас в теме
В эту публикацию заглядывает хоть кто-нибудь?..
13. ya.Avoronov 115 03.11.15 11:54 Сейчас в теме
Отлично работающий код! Спасибо!
14. busy1 11 09.04.19 23:15 Сейчас в теме
Официальный пример от разработчиков, приведен в книге Хрусталева Е.Ю. "Разработка сложных отчетов". Страница.189.
https://its.1c.ru/db/pubcomplexreports#content:65:hdoc
asv_izts; +1 Ответить
15. G_117106206056832682599 11.05.21 14:37 Сейчас в теме
Мне показалось важным еще один момент: при инициализации процессора компоновки данных, если в отчете использовались вычисляемые поля при помощи функций общего модуля, необходимо устанавливать флаг использования.
Оставьте свое сообщение