Выкладываю шаблон отчета на СКД для обычных и управляемых форм, который я использую для создания новых отчетов.
Обычную форму шаблона постарался сделать максимально похожей на типовой отчет. Но в отличии от типового, шаблон отчета работает в любых конфигурациях "сам по себе".
Весь функционал реализован как для обычных, так и для управляемых форм.
Скачать файл
ВНИМАНИЕ:
Файлы из Базы знаний - это исходный код разработки.
Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы.
Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных.
Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.
Набор инструментов программиста и специалиста 1С для всех конфигураций на управляемых формах.
В состав входят инструменты: Консоль запросов, Консоль СКД, Консоль кода, Редактор объекта, Анализ прав доступа, Метаданные, Поиск ссылок, Сравнение объектов, Все функции, Подписки на события и др.
Редактор запросов и кода с раскраской и контекстной подсказкой. Доработанный конструктор запросов тонкого клиента. Продукт хорошо оптимизирован и обладает самым широким функционалом среди всех инструментов, представленных на рынке.
Инструмент представляет собой обработку для проведения свёртки или обрезки баз данных. Работает на ЛЮБЫХ конфигурациях (УТ, БП, ERP и т.д.). Поддерживаются управляемые и обычные формы. Может выполнять свертку сразу нескольких баз данных и выполнять их автоматически без непосредственного участия пользователя.
Инструмент для написания и отладки кода в режиме «1С:Предприятие». Представляет собой консоль кода с возможностью пошаговой отладки, просмотра значений переменных любых типов, использования процедур и функций, просмотра стека вызовов, вычисления произвольных выражений на встроенном языке в контексте точки останова, синтаксического контроля и остановки по ошибке. В консоли используется удобный редактор кода с подсветкой, контекстной подсказкой, возможностью вызова конструкторов запроса и форматной строки.
Расширение позволяет без изменения кода конфигурации выполнять проверки при вводе данных, скрывать от пользователя недоступные ему данные, выполнять код в обработчиках. Не изменяет данные конфигурации, легко устанавливается практически на любую конфигурацию на управляемых формах.
Инструмент, позволяющий абсолютно по-новому взглянуть на процесс разработки печатных форм. Благодаря конструктору можно значительно снизить затраты времени на разработку печатных форм, повысить качество и "прозрачность" разработки, а также навести порядок в многообразии корпоративных печатных форм.
(1) PrinzOfMunchen,
Старался его сделать очень похожим на типовой. А лучше тем, что не зависит от конфигурации и не требует дополнительных модулей, работая "сам по себе".
(3) DAnry,
А какие еще нужны скрины? Весь описанный функционал в коде.
Забрал, спасибо. Очень не люблю расписывать всякие интерфейсные плюшки. Почему-то достаются отчеты со сложными выборками данных. Поэтому готовые шаблоны забираю;)
Автору спасибо за проделаный труд. Обязательно скачаю как появятся деньги. отчет написать ето одно но зделать его юзабилика как говорят ето совсем другое. Поетому людям которые решились на ето вызывают у меня уважение. СПАСИБО та к держать
Tavalik, добрый день. Подскажите, пожалуйста, в Вашей разработке есть ли возможность задавать имена листам
(не название сохраняемого файла) сохраняемым в xls или xlsx ? Решается ли проблема "съедания" ведущих нолей в текстовых полях "Код" ? Спасибо.
(10) sergiobargio1,
Доброго времени суток.
К сожалению на данный момент нет возможности задавать имена, проблема пропадания ведущих нулей также не решена.
Сохранение в Excel вынесено в отдельную процедуру, пока только могу предложить Вам доработать ее самостоятельно.
Эта проблема решается, например, добавлением пользовательского поля X такого вида "'" + [Код]. В итоге все значения будут иметь вид "'0000000001", что при сохранении в Excel штатными методами даст нормальную текстовую ячейку со всеми нулями, символ апострофа же при обработках формулами и т.д. игнорируется.
Об этом уже писали на Инфостарте и это абсолютно штатная фича как Excel так и Open(Libre)Office.
(13) Константин С.,
Скопируйте основную форму отчета, назначьте ее основой, а старую удалите.
Тогда новый отчет будет открываться с новым идентификатором формы.
Нет, работу с вариантами я не делал, т. к. для обычных форм на практике почти всегда используем механизм сохранения настроек типовых конфигураций. Если конфигурация нетиповая, то как мне кажется, проще допилить ее, добавив один регистр сведений и один общий модуль.
Отличный шаблон, аккуратно сделан, порадовала панель с периодом! Попробую в работе и буду использовать для внешних отчетов, вместо текущего шаблона.
Спасибо за работу!
Есть предложения по развитию, все касаются управляемых форм:
1. Можно использовать механизм работы с длительными операциями, потому что сейчас, если формировать длительный отчет, программа зависает. К стати, при расшифровке отчета этот механизм работает, а при нажатии "Сформировать" - нет
2. При нажатии на кнопки выбора периода постоянно появляется сообщение "Использование модальных окон в данном режиме запрещено!", не критично, но отвлекает. К стати в выборе периода с.. по можно использовать стандартный диалог выбора периода (в виде календаря, который например в БП 3.0 в стандартных отчетах)
3. В отчет можно сразу добавить код для подключения его в качестве внешнего
В последней версии исправили обновление дат, это здорово, а вариант отчета не обновляется, если выбрать другой вариант.
Надо к событию формы ПриЗагрузкеВариантаНаСервере привязать код
Спасибо. Красиво и аккуратно. Небольшой косячок: установка видимости заголовка отчета через УстановитьВидимостьЗаголовкаОтчета() глючит. Например, с отчетом в виде таблицы с двумя группировками в строках затираются заголовки столбцов:) Не страшно, но я вот не сразу понял, что происходит, думал всё, допрограммировался)
Посмотрел, действительно работает без всяких модулей, только при каждом закрытии требует сохранения варианта отчета. Надоедает страшно. Теперь голову ломаю, как это убрать. Сообщение "Вариант "Имя варианта" был изменен. Сохранить измененный вариант?" обыскался, в обработке такого сообщения нет и события при закрытии тоже, откуда ноги не понятно.
Что-то у меня в УТ 11 (11.2.3.189) ошибка при открытии настроек выходит ...
{ОбщаяФорма.ФормаНастроекОтчета.Форма(27)}: Не передан служебный параметр "НастройкиОтчета".
ВызватьИсключение НСтр("ru = 'Не передан служебный параметр ""НастройкиОтчета"".'");
Спасибо за хороший шаблон. Неоднократно успешно им пользовалась. Безумно нравится что он реально самостоятельный и нет ограничения в программе. Мелочи типа установки видимости заголовка не в счет (легко подпиливаются).
Проблема с периодом обнаружилась. Делаем отчёт для УТ 11.0. При загрузке отчёт показывает один период, а формируется совершенно за другой. Как будто при формировании берётся период из какого-то кэша от прошлого запуска отчёта. Тоже самое происходит при выборе вариант отчёта. Пробовал ПередЗагрузкойВариантаНаСервере очищать период, но всё равно формируется он по прошлому заданному периоду. Никак не могу найти ошибку. А без этого отчёт не удобен в использовании.
Что-то у меня в УТ 11 (11.2.3.189) ошибка при открытии настроек выходит ...
{ОбщаяФорма.ФормаНастроекОтчета.Форма(27)}: Не передан служебный параметр "НастройкиОтчета".
ВызватьИсключение НСтр("ru = 'Не передан служебный параметр ""НастройкиОтчета"".'");
Нашёл работающий вариант исправления. В процедуру СформироватьОтчет добавил обновление представления даты:
Процедура СформироватьОтчет(Команда)
//добавлено для работы с выбором вариант отчета
Элементы.ПредставлениеДаты.Заголовок = ОбновитьПредставлениеДатыНаСервере();
//добавлено для работы с выбором вариант отчета
//Получаем схему из макета
СформироватьОтчетНаСервере();
1. Желательно добавить значение Истина четвертым параметром в ПроцессорКомпоновкиДанных.Инициализировать(...), иначе нельзя использовать функции общих модулей в вычисляемых полях
2. ОткрытьЗначение(...) в форме отчета и расшифровки в веб-клиенте не работает, надо менять на ПоказатьЗначение(...)
Хороший шаблон. Рекомендую доработать:
- добавить программный интерфейс регистрации для доп. отчетов и обработок БСП, номер версии вести соотв. там
- заголовок формы возвращать из экспортного метода модуля объекта
- структуры модулей оформить по ИТС https://its.1c.ru/db/v8std#content:2149184104:hdoc - в обычной форме отказаться от "СохранитьЗначение" \ "ВосстановитьЗначение", использовать штатный функционал управления настройками. Кстати, флаг в обычной форме включен, но значения для сохранения не выбраны
- формы переименовать) Я забывал пару раз удалять форму, из-за чего получал "двойников": если есть два отчета, реализованные на одном и том же шаблоне и с одной и той-же формой, то если открывать отчет №2 при открытом отчете№1 - открытия не произойдет, а просто активируется отчет №1. Поэтому у себя в шаблоне форму именую так: "ФормаОтчета_НЕ_ИСПОЛЬЗОВАТЬ_СКОПИРОВАТЬ_ЭТУ_УДАЛИТЬ".
У меня сейчас так (в конфе устаревшая версия БСП):
Здравствуйте,скачал ваш шаблон,спасибо он прекрасен!))но есть необходимость в кнопке переключения макета,если вас не затруднит,не могли бы вы скинуть эту процедуру!очень нужно...
(45)
Здравствуйте. Честно говоря, шаблон был написан для УПП, а я с ней уже давно не работал. Не совсем понял, о какой кнопке идет речь? Какой макет необходимо менять?
(46)Вот у меня есть два макета СКД с разными наборами данных!т.е. нужно что бы можно было переходить на другой макет СКД!что то типа вот этого сейчас покажу на скринах ,но тут ошибки в написании модуля..но для образца пойдет!
(47)
Отчет формируется программно, т. е. в модуле реализована процедура "ПриКомпоновкеРезультата", где и происходит вывод отчета в табличный документ. Добавьте на форму поле с нужным списком выбора, а при компоновке результата получаете необходимый макет по значению этого поля.
такой вот еще тупой вопрос.
судя по постам - пожелания появляются, которые - похоже, что отрабатываются и файл отчета для скачивания обновляется.
если скачать единовременно потратив 1вм - то обновленные по замечаниям версии чтобы скачать снова надо платить вм?
(49)
Здравствуйте. Боюсь, что более я данный шаблон развивать не буду. Давно не работаю с обычными формами, а в БСП 2+ есть отличная типовая форма отчета.
Мое субъективное мнение - качать не стоит. Банально сразу разъедает глаза поле установки периода для схемы, в которой периодами и не пахнет. Нет никаких удобных средств для установки параметров пользователем. Кривота короче.