Шаблон отчета на СКД (обычные и управляемые формы)

11.11.17

Разработка - Инструментарий разработчика

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

Скачать файлы

Наименование Файл Версия Размер
ШаблонОтчета_СКД
.erf 77,33Kb
1038
.erf 1.8.3 77,33Kb 1038 Скачать

Также этот шаблон будет полезен начинающим разработчикам для примера реализации следующих ситуаций (как для обычных, так и для управляемых форм):

  1. Программное выполнение отчета на СКД.
  2. Программная установка отборов в СКД.
  3. Программная установка параметров в СКД.
  4. Программное изменение параметров вывода в СКД.
  5. Привязка своего макета оформления в отчет на СКД.
  6. Расшифровка ячейки отчета и получения значений группировки выбранной ячейки результата отчета.
  7. Обработка расшифровки в очете на СКД, в виде отдельного отчета со своей компоновкой данных.
  8. Удобное меню для выбора периода.
  9. Удобная функция сохранения в Excel.
  10. Установка параметров документа Excel при сохранении (границы, ориентация и пр.)
  11. Сохранение в Excel из WEB-Клиента
  12. ...

Смотрите также: Шаблон обработки (обычные и управляемые формы)

См. также

SALE! 20%

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

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

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

13000 10400 руб.

02.09.2020    122277    673    389    

715

SALE! 25%

Infostart PrintWizard

Пакетная печать Печатные формы Инструментарий разработчика Платформа 1С v8.3 Запросы 1С:Зарплата и кадры бюджетного учреждения 1С:Конвертация данных 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 Платные (руб)

Инструмент, позволяющий абсолютно по-новому взглянуть на процесс разработки печатных форм. Благодаря конструктору можно значительно снизить затраты времени на разработку печатных форм, повысить качество и "прозрачность" разработки, а также навести порядок в многообразии корпоративных печатных форм.

18000 15300 руб.

06.10.2023    7325    22    6    

39

SALE! 20%

Infostart УДиФ: Управление данными и формами

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

Расширение позволяет без изменения кода конфигурации выполнять проверки при вводе данных, скрывать от пользователя недоступные ему данные, выполнять код в обработчиках. Не изменяет данные конфигурации, легко устанавливается практически на любую конфигурацию на управляемых формах.

10000 8000 руб.

10.11.2023    3571    11    1    

34

SALE! 30%

PowerTools

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

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

3600 2520 руб.

14.01.2013    177772    1074    0    

849

Многопоточность. Универсальный «Менеджер потоков» 2.1

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

Восстановление партий или взаиморасчетов, расчет зарплаты, пакетное формирование документов или отчетов - теперь все это стало доступнее. * Есть желание повысить скорость работы медленных алгоритмов! Но... * Нет времени думать о реализации многопоточности? * о запуске и остановке потоков? * о поддержании потоков в рабочем состоянии? * о передаче данных в потоки и как получить ответ из потока? * об организации последовательности? Тогда ЭТО - то что надо!!!

5000 руб.

07.02.2018    99364    239    97    

296

[ЕХТ] Фреймворк для Расширений 1С

Инструментарий разработчика Платформа 1С v8.3 Управляемые формы Платные (руб)

"Фреймворк для Расширений 1С" это универсальное и многофункциональное решение, упрощающее разработку и поддержку создаваемых Расширений. Поставляется в виде комплекта из нескольких Расширений с открытым исходным кодом. Работает в любых Конфигурациях в режиме Управляемого приложения с режимом совместимости 8.3.12 и выше без необходимости внесения изменений в Конфигурацию.

3000 руб.

27.08.2019    18129    6    8    

40

1С HTML Шаблоны / HTML Templates

Инструментарий разработчика Платформа 1С v8.3 Конфигурации 1cv8 Платные (руб)

Быстрая и удобная обработка для работы с шаблонами HTML. Позволяет легко и быстро формировать код HTML.

2040 руб.

27.12.2017    28115    3    10    

15

Выполнение произвольного кода или запроса с параметрами через Web-сервис (замена COM-подключений)

Инструментарий разработчика Обмен между базами 1C Платформа 1С v8.3 Платные (руб)

В процессе работы в 1С часто возникает потребность получить данные из другой базы.  Обычно это делается через COM-соединение, и время выполнения запроса при этом оставляет желать лучшего. В данной публикации представлено универсальное решение, позволяющее практически моментально выполнить произвольный код или запрос с параметрами в другой информационной базе через Web-сервис.

2400 руб.

24.09.2019    23605    15    15    

32
Вознаграждение за ответ
Показать полностью
Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. PrinzOfMunchen 83 25.12.13 07:01 Сейчас в теме
А чем он лучше типового шаблона?
4. Tavalik 3352 14.01.14 06:11 Сейчас в теме
(1) PrinzOfMunchen,
Старался его сделать очень похожим на типовой. А лучше тем, что не зависит от конфигурации и не требует дополнительных модулей, работая "сам по себе".

(3) DAnry,
А какие еще нужны скрины? Весь описанный функционал в коде.
2. Alex1Cnic 148 25.12.13 08:29 Сейчас в теме
3. DAnry 8 26.12.13 01:21 Сейчас в теме
Скрины в студию! На представленных иллюстрировано лишь пункт 7. Удобное меню для выбора периода. Хотелось бы больше ...
5. mikl79 118 17.01.14 14:48 Сейчас в теме
хотел плюсануть, но как?
6. Tavalik 3352 17.01.14 15:05 Сейчас в теме
(5) mikl79,
Авторизируетесь на сайте и нажимаете кнопку в виде оранжевой звездочки чуть ниже таблички "Файлы". :)
7. mikhailovaew 127 12.03.14 16:42 Сейчас в теме
Плюсану авансом, может пригодится )
8. higs 25.03.14 21:46 Сейчас в теме
Забрал, спасибо. Очень не люблю расписывать всякие интерфейсные плюшки. Почему-то достаются отчеты со сложными выборками данных. Поэтому готовые шаблоны забираю;)
9. dyak84 15.04.14 12:39 Сейчас в теме
Автору спасибо за проделаный труд. Обязательно скачаю как появятся деньги. отчет написать ето одно но зделать его юзабилика как говорят ето совсем другое. Поетому людям которые решились на ето вызывают у меня уважение. СПАСИБО та к держать
10. sergiobargio1 118 14.05.14 12:10 Сейчас в теме
Tavalik, добрый день. Подскажите, пожалуйста, в Вашей разработке есть ли возможность задавать имена листам
(не название сохраняемого файла) сохраняемым в xls или xlsx ? Решается ли проблема "съедания" ведущих нолей в текстовых полях "Код" ? Спасибо.
11. Tavalik 3352 15.05.14 08:32 Сейчас в теме
(10) sergiobargio1,
Доброго времени суток.
К сожалению на данный момент нет возможности задавать имена, проблема пропадания ведущих нулей также не решена.
Сохранение в Excel вынесено в отдельную процедуру, пока только могу предложить Вам доработать ее самостоятельно.
12. CITRUM 19.05.14 16:37 Сейчас в теме
проблема пропадания ведущих нулей также не решена

Эта проблема решается, например, добавлением пользовательского поля X такого вида "'" + [Код]. В итоге все значения будут иметь вид "'0000000001", что при сохранении в Excel штатными методами даст нормальную текстовую ячейку со всеми нулями, символ апострофа же при обработках формулами и т.д. игнорируется.
Об этом уже писали на Инфостарте и это абсолютно штатная фича как Excel так и Open(Libre)Office.
13. Константин С. 666 11.06.14 13:04 Сейчас в теме
Есть два вопросика:
1. нет дает открыть два отчет(внешних) разработанных используя шаблон
2. нажимаю сформировать отчет, слетает схема, обычная форма.
17. Tavalik 3352 14.08.14 12:55 Сейчас в теме
(13) Константин С.,
Скопируйте основную форму отчета, назначьте ее основой, а старую удалите.
Тогда новый отчет будет открываться с новым идентификатором формы.
14. master_yoda 27 16.06.14 15:45 Сейчас в теме
Огромное спасибо автору за труды, обязательно качну как только появится бабосы....
15. Tangram 158 05.08.14 13:32 Сейчас в теме
Отлично подходит для нетиповых конфигураций, спасибо. Работа с вариантами отчетов не реализована или я не увидел?
16. Tavalik 3352 05.08.14 10:50 Сейчас в теме
(15) Tangram,

Нет, работу с вариантами я не делал, т. к. для обычных форм на практике почти всегда используем механизм сохранения настроек типовых конфигураций. Если конфигурация нетиповая, то как мне кажется, проще допилить ее, добавив один регистр сведений и один общий модуль.
18. BlackStar 03.09.14 18:41 Сейчас в теме
Отличный шаблон, аккуратно сделан, порадовала панель с периодом! Попробую в работе и буду использовать для внешних отчетов, вместо текущего шаблона.
Спасибо за работу!

Есть предложения по развитию, все касаются управляемых форм:

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

2. При нажатии на кнопки выбора периода постоянно появляется сообщение "Использование модальных окон в данном режиме запрещено!", не критично, но отвлекает. К стати в выборе периода с.. по можно использовать стандартный диалог выбора периода (в виде календаря, который например в БП 3.0 в стандартных отчетах)

3. В отчет можно сразу добавить код для подключения его в качестве внешнего
AzagTot; klaus38; +2 Ответить
31. AzagTot 40 16.11.15 17:41 Сейчас в теме
(18) BlackStar, Чтобы не появлялось сообщение "Использование модальных окон в данном режиме запрещено!" замените ВыбратьИзМеню на ПоказатьВыборИзМеню:

Оповещение = Новый ОписаниеОповещения("ПослеВыбораИзМеню", ЭтотОбъект);
ПоказатьВыборИзМеню(Оповещение, СписокИнтервалов);

&НаКлиенте
Процедура ПослеВыбораИзМеню(Интервал, Параметры = Неопределено) Экспорт

Если Интервал <> Неопределено Тогда
Отчет.Период = Интервал.Значение;
Элементы.ПериодУстановка.Заголовок = Отчет.Период;
ПериодУстановка(Неопределено);
КонецЕсли;

КонецПроцедуры
19. Константин С. 666 25.09.14 17:57 Сейчас в теме
предложение:
добавить Функция СведенияОВнешнейОбработке() Экспорт
для автоматической регистрации в типовых конфигурациях)))
klaus38; BlackStar; +2 Ответить
20. BlackStar 10.10.14 14:09 Сейчас в теме
В последней версии исправили обновление дат, это здорово, а вариант отчета не обновляется, если выбрать другой вариант.
Надо к событию формы ПриЗагрузкеВариантаНаСервере привязать код

&НаСервере
Процедура ПриЗагрузкеВариантаНаСервере(Настройки)
	//Обновляем заголовок
	ЭтаФорма.Заголовок = ВернутьСинонимОтчета() + " (" + НаименованиеТекущегоВарианта + ")";

КонецПроцедуры
21. Константин С. 666 22.10.14 13:50 Сейчас в теме
Пожелание к оформлению публикации. Можно указывать номер текущей версии шаблона.)))
22. klaus38 22.11.14 16:39 Сейчас в теме
Замечательно, забираю. Спасибо автору
23. lisrws 143 04.12.14 16:15 Сейчас в теме
Добрый день. Подскажите, если отчет строится для остатков, то есть нужна одна конкретная дата, а не диапозон, то как ему это задать?
24. dyak84 15.12.14 10:56 Сейчас в теме
Автор если планируется развитие даной обработки можно ли добавить. Кнопку для отправки отчета на електроную почту.
25. aikosyapr 25 02.06.15 22:24 Сейчас в теме
Спасибо. Красиво и аккуратно. Небольшой косячок: установка видимости заголовка отчета через УстановитьВидимостьЗаголовкаОтчета() глючит. Например, с отчетом в виде таблицы с двумя группировками в строках затираются заголовки столбцов:) Не страшно, но я вот не сразу понял, что происходит, думал всё, допрограммировался)
26. NGPhoenix 8 04.09.15 16:14 Сейчас в теме
Посмотрел, действительно работает без всяких модулей, только при каждом закрытии требует сохранения варианта отчета. Надоедает страшно. Теперь голову ломаю, как это убрать. Сообщение "Вариант "Имя варианта" был изменен. Сохранить измененный вариант?" обыскался, в обработке такого сообщения нет и события при закрытии тоже, откуда ноги не понятно.
27. NGPhoenix 8 04.09.15 16:56 Сейчас в теме
Поборол, убрав свойство модальности варианта отчета
&НаКлиенте
Процедура ПередЗакрытием(Отказ, СтандартнаяОбработка)
Если ЭтаФорма.ВариантМодифицирован=Истина тогда
ЭтаФорма.ВариантМодифицирован = ложь;
КонецЕсли;
КонецПроцедуры
38. levran 201 27.09.17 10:57 Сейчас в теме
Что-то у меня в УТ 11 (11.2.3.189) ошибка при открытии настроек выходит ...

{ОбщаяФорма.ФормаНастроекОтчета.Форма(27)}: Не передан служебный параметр "НастройкиОтчета".
ВызватьИсключение НСтр("ru = 'Не передан служебный параметр ""НастройкиОтчета"".'");
40. Tavalik 3352 11.11.17 14:41 Сейчас в теме
(38)
в УТ 11 по умолчанию используется форма настроек отчетов из БСП. Если нужна именно эта форма, то рекомендую и основную форму отчета брать из БСП.

Добавил в отчет управляемую форму настроек отчета.
28. pbabincev 132 10.09.15 10:45 Сейчас в теме
Очень хорошо!
Еще можно добавить автосуммирование по выделенным ячейкам.
Спасибо!
29. konstruktiv 10.09.15 12:57 Сейчас в теме
А объясните кто-нибудь, пожалуйста, что за вопрос, за решение которого дается вознаграждение, я что-то запутался
30. HobbitT 23.10.15 16:33 Сейчас в теме
Спасибо за хороший шаблон. Неоднократно успешно им пользовалась. Безумно нравится что он реально самостоятельный и нет ограничения в программе. Мелочи типа установки видимости заголовка не в счет (легко подпиливаются).
32. mad_maksim 87 21.11.15 11:18 Сейчас в теме
Проблема с периодом обнаружилась. Делаем отчёт для УТ 11.0. При загрузке отчёт показывает один период, а формируется совершенно за другой. Как будто при формировании берётся период из какого-то кэша от прошлого запуска отчёта. Тоже самое происходит при выборе вариант отчёта. Пробовал ПередЗагрузкойВариантаНаСервере очищать период, но всё равно формируется он по прошлому заданному периоду. Никак не могу найти ошибку. А без этого отчёт не удобен в использовании.
39. Exit_in 66 08.11.17 12:59 Сейчас в теме
(38)
Что-то у меня в УТ 11 (11.2.3.189) ошибка при открытии настроек выходит ...

{ОбщаяФорма.ФормаНастроекОтчета.Форма(27)}: Не передан служебный параметр "НастройкиОтчета".
ВызватьИсключение НСтр("ru = 'Не передан служебный параметр ""НастройкиОтчета"".'");


(32)
Делаем отчёт для УТ 11.0.


Когда сделаете?
42. Tavalik 3352 11.11.17 14:42 Сейчас в теме
(39)
Добавлена форма настроек в отчет.
41. Tavalik 3352 11.11.17 14:42 Сейчас в теме
(32)
Здравствуйте. К сожалению (или к счастью) не могу повторить описанную вами ошибку.
33. mad_maksim 87 21.11.15 11:52 Сейчас в теме
Нашёл работающий вариант исправления. В процедуру СформироватьОтчет добавил обновление представления даты:

Процедура СформироватьОтчет(Команда)

//добавлено для работы с выбором вариант отчета
Элементы.ПредставлениеДаты.Заголовок = ОбновитьПредставлениеДатыНаСервере();
//добавлено для работы с выбором вариант отчета

//Получаем схему из макета
СформироватьОтчетНаСервере();

//Состояние отчета
Элементы.Результат.ОтображениеСостояния.Видимость = Ложь;
Элементы.Результат.ОтображениеСостояния.ДополнительныйРежимОтображения = ДополнительныйРежимОтображения.НеИспользовать;

КонецПроцедуры
34. DedMoroz1983 2 13.10.16 10:56 Сейчас в теме
35. Светлый ум 406 05.11.16 14:34 Сейчас в теме
Крутой шаблон - использовал раньше и другие - этот лучше и навороченный по функционалу БСП
+1
37. Светлый ум 406 31.08.17 15:23 Сейчас в теме
(35)

Применял при создании:
Отчет по проводкам (плоский) для УПП 1.3, КА 1.1

https://infostart.ru/public/434760/
36. GlebHappy 116 08.12.16 19:59 Сейчас в теме
С удовольствием использую.
Но есть два пожелания:

1. Желательно добавить значение Истина четвертым параметром в ПроцессорКомпоновкиДанных.Инициализировать(...), иначе нельзя использовать функции общих модулей в вычисляемых полях
2. ОткрытьЗначение(...) в форме отчета и расшифровки в веб-клиенте не работает, надо менять на ПоказатьЗначение(...)
edyardg; user774630; Seankinho; +3 Ответить
43. unichkin 1559 20.12.17 22:55 Сейчас в теме
Хороший шаблон. Рекомендую доработать:
- добавить программный интерфейс регистрации для доп. отчетов и обработок БСП, номер версии вести соотв. там
- заголовок формы возвращать из экспортного метода модуля объекта
- структуры модулей оформить по ИТС https://its.1c.ru/db/v8std#content:2149184104:hdoc
- в обычной форме отказаться от "СохранитьЗначение" \ "ВосстановитьЗначение", использовать штатный функционал управления настройками. Кстати, флаг в обычной форме включен, но значения для сохранения не выбраны
- формы переименовать) Я забывал пару раз удалять форму, из-за чего получал "двойников": если есть два отчета, реализованные на одном и том же шаблоне и с одной и той-же формой, то если открывать отчет №2 при открытом отчете№1 - открытия не произойдет, а просто активируется отчет №1. Поэтому у себя в шаблоне форму именую так: "ФормаОтчета_НЕ_ИСПОЛЬЗОВАТЬ_СКОПИРОВАТЬ_ЭТУ_УДАЛИТЬ".

У меня сейчас так (в конфе устаревшая версия БСП):
Функция СведенияОВнешнейОбработке() Экспорт
	
	МетаОбъект = ЭтотОбъект.Метаданные();
	
	ПараметрыРегистрации = Новый Структура;
	ПараметрыРегистрации.Вставить("Вид","ДополнительнаяОбработка");
	ПараметрыРегистрации.Вставить("Наименование", МетаОбъект.Синоним);
	ПараметрыРегистрации.Вставить("Версия", "1.1");
	ПараметрыРегистрации.Вставить("БезопасныйРежим",Ложь);
	ПараметрыРегистрации.Вставить("Информация", МетаОбъект.Комментарий);
	ПараметрыРегистрации.Вставить("ВерсияБСП", "2.1.1.12");
	ТаблицаКоманд = ТаблицаКоманд();
	
	ДобавитьКоманду(ТаблицаКоманд, МетаОбъект.Синоним, МетаОбъект.Имя, "ОткрытиеФормы");
	
	ПараметрыРегистрации.Вставить("Команды", ТаблицаКоманд);
	Возврат ПараметрыРегистрации;
КонецФункции

Функция ЗаголовокФормы() Экспорт
	
	СтруктураПараметрыРегистрации= СведенияОВнешнейОбработке();
	Возврат СтруктураПараметрыРегистрации.Наименование + " v." + СтруктураПараметрыРегистрации.Версия;
	
КонецФункции 
Показать
44. bussiness_hacker 28.06.19 16:39 Сейчас в теме
45. user1169791 19.07.19 07:32 Сейчас в теме
Здравствуйте,скачал ваш шаблон,спасибо он прекрасен!))но есть необходимость в кнопке переключения макета,если вас не затруднит,не могли бы вы скинуть эту процедуру!очень нужно...
46. Tavalik 3352 19.07.19 10:43 Сейчас в теме
(45)
Здравствуйте. Честно говоря, шаблон был написан для УПП, а я с ней уже давно не работал. Не совсем понял, о какой кнопке идет речь? Какой макет необходимо менять?
47. user1169791 19.07.19 10:51 Сейчас в теме
(46)Вот у меня есть два макета СКД с разными наборами данных!т.е. нужно что бы можно было переходить на другой макет СКД!что то типа вот этого сейчас покажу на скринах ,но тут ошибки в написании модуля..но для образца пойдет!
Прикрепленные файлы:
48. Tavalik 3352 19.07.19 13:25 Сейчас в теме
(47)
Отчет формируется программно, т. е. в модуле реализована процедура "ПриКомпоновкеРезультата", где и происходит вывод отчета в табличный документ. Добавьте на форму поле с нужным списком выбора, а при компоновке результата получаете необходимый макет по значению этого поля.
49. Cthulhu 1 04.06.21 02:56 Сейчас в теме
такой вот еще тупой вопрос.
судя по постам - пожелания появляются, которые - похоже, что отрабатываются и файл отчета для скачивания обновляется.
если скачать единовременно потратив 1вм - то обновленные по замечаниям версии чтобы скачать снова надо платить вм?
50. Tavalik 3352 07.06.21 12:27 Сейчас в теме
(49)
Здравствуйте. Боюсь, что более я данный шаблон развивать не буду. Давно не работаю с обычными формами, а в БСП 2+ есть отличная типовая форма отчета.
51. redtram 29 21.07.21 14:21 Сейчас в теме
Мое субъективное мнение - качать не стоит. Банально сразу разъедает глаза поле установки периода для схемы, в которой периодами и не пахнет. Нет никаких удобных средств для установки параметров пользователем. Кривота короче.
52. Tavalik 3352 30.07.21 11:09 Сейчас в теме
(51)
Отчет писался в далеком 13-ом году. Сейчас он уже не актуален. Лучше типового отчета в БСП ничего нет.
Оставьте свое сообщение