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

14.03.12

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

Если Вы станете использовать в Ваших разработках нижеприведенную методику, тогда Вам больше никогда не придется тратить свое время на объяснение пользователю, КАК ему зарегистрировать Вашу разработку в базе (пользователю достаточно только открыть её или перетащить драг-энд-дропом в 1С:Предприятие).
И вообще, на мой взгляд данная методика является примером хорошего тона отношений разработчик-клиент

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

Наименование Файл Версия Размер
Шаблон для создания внешней печатной формы (или ОЗТЧ)
.epf 9,10Kb
177
.epf 9,10Kb 177 Скачать
Универсальный отчет СКД
.erf 21,43Kb
78
.erf 21,43Kb 78 Скачать
Универсальный отчет СКД (нет поля "Выбранные поля")
.erf 20,28Kb
38
.erf 20,28Kb 38 Скачать
Как сделать внешнюю печатную форму быстро и самостоятельно
.rar 20,95Mb
73
.rar 20,95Mb 73 Скачать
Пример - Печатная форма "Акт об оказании услуг (с подписями)" (старый файлик - не качайте)
.epf 21,69Kb
77
.epf 21,69Kb 77 Скачать

К методике приложен файл - внешняя печатная форма для документов "Акт об оказании производственных услуг" и "Реализация товаров и услуг" конфигурации "Бухгалтерия предприятия 1.6"

Суть методики - создаем основную форму обработки, перед открытием регистрируем/обновляем обработку, открываем документы, в которых используется разработка + можно делать что-то еще полезное Smile

Используемый код в первом комменте

2011.10.15

Добавил отчет "Универсальный отчет СКД" - суть такова - открываем в конфигураторе, добавляем (создаем, загружаем из схемы и т.д.) любое количество макетов - схем компоновки данных. В итоге при выборе соответствующего варианта из подменю "Выбрать вариант" получаем сразу готовый отчет (по настройкам "По умолчанию"). Плюшки - кнопки быстрой свертки группировок результата от 1 до 10 - отрабатывают при нажатии Alt+1, 2, ...,8, 9, 0 на клавиатуре. Больше 10 кнопок не предусмотрено.

 

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

 

Добавил обработку "Шаблон ВПФ" - для внешней печатной формы и обработки заполнения табличных частей.

Как пользоваться - для ВПФ достаточно выбрать тип реквизита "СсылкаНаОбъект" (по умолчанию "все документы и все справочники") - обработка зарегистрирует себя в справочнике "Внешние обработки" (если у Вас достаточно прав для этого действия) для всех объектов, входящих в состав типов реквизита (отрабатывает справочники и документы) и откроет форму элемента по умолчанию каждого типа объектов (если у Вас достаточно прав на просмотр объктов данного типа)

В коде закомментированы участки, позволяющие для разных типов объектов использовать различные представления кнопок и дополнительные параметры, передаваемые обработке

2011.10.27 Добавлено видео - "Как сделать внешнюю печатную форму быстро и самостоятельно.rar" - наглядный пример использования обработки "ШаблонВПФ" - за несколько минут создаем сами внешнюю печатную форму "Акт об оказании услуг" для типовой БП 2.0

См. также

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

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

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

13000 руб.

02.09.2020    119962    656    389    

701

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

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

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

3 стартмани

05.02.2024    3894    24    obmailok    17    

63

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

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

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

1 стартмани

31.01.2024    1964    2    Yashazz    0    

29

СКД на JavaScript в 1С

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

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

2 стартмани

11.12.2023    8035    20    John_d    25    

122

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

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

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

05.12.2023    4528    PROSTO-1C    13    

61

Модель СКД

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

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

1 стартмани

15.11.2023    5710    15    kalyaka    5    

85

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

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

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

18.09.2023    6345    accounting_cons    5    

29

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

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

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

01.09.2023    4411    KVIKS    15    

80
Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. Borisych 503 03.03.10 11:29 Сейчас в теме
Процедура ПередОткрытием(Отказ, СтандартнаяОбработка)
	СтандартнаяОбработка = Ложь;
	Отказ = Истина;
	Если Метаданные.Имя <> "БухгалтерияПредприятия" И Метаданные.Имя <> "БухгалтерияПредприятияБазовая"   Тогда
		Предупреждение("Данная печатная форма предназначена для документов ""Акт об оказании производственных услуг"" 
						|и ""Реализация товаров и услуг"" конфигураций ""Бухгалтерия предприятия"" и ""Бухгалтерия предприятия базовая""!
						|Регистрация обработки не проведена!");
		Возврат;
	КонецЕсли;
	Если НЕ ПравоДоступа("Изменение",Метаданные.Справочники.ВнешниеОбработки) Тогда
		Предупреждение("У Вас недостаточно прав доступа для регистрации обработки в информационной базе! Обратитесь к пользователю с административными правами!");
		Возврат;
	КонецЕсли;
	Эл = Справочники.ВнешниеОбработки.НайтиПоНаименованию(ЭтотОбъект.Метаданные().Синоним);
	Режим = "";
	Если Эл = Справочники.ВнешниеОбработки.ПустаяСсылка() Тогда
		Режим = "Создать";
	Иначе
		Если Вопрос("В информационной базе уже зарегистрирована такая обработка. Обновить существующую?", РежимДиалогаВопрос.ДаНет) = КодВозвратаДиалога.Да Тогда
			Режим = "Обновить";
		КонецЕсли;
	КонецЕсли; 	
	Если Режим = "" Тогда
		Возврат;
	КонецЕсли;
	Если Режим = "Создать" Тогда
		ЭлСпрВнОбр = Справочники.ВнешниеОбработки.СоздатьЭлемент();
	КонецЕсли;	
	Если Режим = "Обновить" Тогда 
		ЭлСпрВнОбр = Эл.ПолучитьОбъект();
	КонецЕсли;
	ЭлСпрВнОбр.ВидОбработки = Перечисления.ВидыДополнительныхВнешнихОбработок.ПечатнаяФорма;
	ЭлСпрВнОбр.Наименование = ЭтотОбъект.Метаданные().Синоним;
	ЭлСпрВнОбр.ХранилищеВнешнейОбработки = Новый ХранилищеЗначения(Новый ДвоичныеДанные(ИспользуемоеИмяФайла));
	ЭлСпрВнОбр.Принадлежность.Очистить();
	Прин = ЭлСпрВнОбр.Принадлежность.Добавить();
	Прин.СсылкаОбъекта = Документы["РеализацияТоваровУслуг"].ПустаяСсылка();
	Прин.ПредставлениеКнопки = ЭтотОбъект.Метаданные().Синоним;
	Прин.ПредставлениеОбъекта = "Документ """ + Метаданные.Документы["РеализацияТоваровУслуг"].Синоним+"""";
	Прин = ЭлСпрВнОбр.Принадлежность.Добавить();
	Прин.СсылкаОбъекта = Документы["АктОбОказанииПроизводственныхУслуг"].ПустаяСсылка();
	Прин.ПредставлениеКнопки = ЭтотОбъект.Метаданные().Синоним;
	Прин.ПредставлениеОбъекта = "Документ """ + Метаданные.Документы["АктОбОказанииПроизводственныхУслуг"].Синоним+"""";
	//СтруктураПараметров = Новый Структура("Номер", Истина);
	//Прин.ДополнительныеПараметрыОбработки = Новый ХранилищеЗначения(СтруктураПараметров);
	ЭлСпрВнОбр.Записать();
	Предупреждение("Внешняя печатная форма документов ""Реализация товаров и услуг"" 
					|и  ""Акт об оказании производственных услуг"" 
					|зарегистрирована в справочнике ""Внешние обработки""",10);
	Справочники.ВнешниеОбработки.ПолучитьФормуСписка().Открыть();
	Если НЕ ПравоДоступа("Просмотр",Метаданные.Документы.РеализацияТоваровУслуг) Тогда
		Предупреждение("У Вас недостаточно прав доступа просмотра документов ""Реализация товаров и услуг""!",10);
	Иначе
		Док = Документы.РеализацияТоваровУслуг.Выбрать(,,,"Дата Убыв");
		Если Док.Следующий() Тогда
			Док.Ссылка.ПолучитьФорму().Открыть();
		КонецЕсли;
	КонецЕсли;
	Если НЕ ПравоДоступа("Просмотр",Метаданные.Документы.АктОбОказанииПроизводственныхУслуг) Тогда
		Предупреждение("У Вас недостаточно прав доступа просмотра документов ""Акт об оказании производственных услуг""!",10);
	Иначе
		Док = Документы.АктОбОказанииПроизводственныхУслуг.Выбрать(,,,"Дата Убыв");
		Если Док.Следующий() Тогда
			Док.Ссылка.ПолучитьФорму().Открыть();
		КонецЕсли;
	КонецЕсли;
	Справка = "При печати Акта в подписи берутся следующие значения:
			  |По кнопке ""Перейти"" из формы элементов справочников ""Организации"" и ""Контрагенты""
			  |переходим в регистр сведений ""Фамилия, имя, отчество физического лица"".
			  |Заполняем поле ""Фамилия"" - фамилией, ""Имя"" - инициалами, ""Отчество"" - номер доверенности.
			  |Подписи ""Исполнитель"" и ""Заказчик"" собираются из вышеприведенных значений";
	Сообщить(Справка, СтатусСообщения.Обычное);
	Предупреждение(Справка);
КонецПроцедуры
Показать
17. frc 20.07.12 13:17 Сейчас в теме
(1)
код к чему прилагается?
18. Borisych 503 20.07.12 13:37 Сейчас в теме
(17) frc, код формы, назначенной основной для внешней печатной формы. иногда лениво скачивать, чтобы просмотреть фишки обработки, а так - всё понятно
19. frc 20.07.12 13:40 Сейчас в теме
(18)
а, ну так пометили бы в статье об этом :)
это действительно удобно.
2. Borisych 503 03.03.10 11:32 Сейчас в теме
Давно пользуюсь таким способом - решил поделиться с общественностью
3. Збянтэжаны Саўка 245 14.06.10 09:32 Сейчас в теме
сразу видно профессионала по коду! завидую
возьму методику на заметочку
4. Borisych 503 14.06.10 23:32 Сейчас в теме
(4) спасибо
много интересных задач позволяют получить широкие познания
альтруизм позволяет помогать новичкам и товарищам в решении интересных задач
Однажды 30 минут потраченные на объяснение по телефону как зарегистрировать внешнюю печатную форму или ОЗТЧ (точно уже не помню), причем с Параметрами_Авторегистрации сподвигли на этот способ, который теперь используется во всех моих ВПФ и ОЗТЧ
Кстати, в некоторых новых обработках, которые используют документы практически всех типовых конфигураций вначале проверял присутствие в конфигурации необходимых метаданных (вместо имени конфигурации)
Збянтэжаны Саўка; +1 Ответить
5. Збянтэжаны Саўка 245 15.06.10 09:23 Сейчас в теме
(4)
> вначале проверял присутствие в конфигурации необходимых метаданных
хех, у меня также возникла эта мысль вчера, после прочтения твоего поста
6. Borisych 503 02.08.10 14:56 Сейчас в теме
Также товарищи, в качестве комментария можно указывать число (или релиз как типовые конфиги - например, 1.0.1, 1.0.5, преобразовывать его в число 101, 105 и сравнивая - определить, данная версия обработки более свежая чем используемая или нет)
7. zhuravlev_as 392 22.09.11 11:22 Сейчас в теме
Респект, буду пользоваться с удовольствием))
8. warenic 109 11.10.11 15:39 Сейчас в теме
Оченно пользительный материал. Спасибо.
9. Borisych 503 04.11.11 01:19 Сейчас в теме
10. orsprog 20.11.11 20:59 Сейчас в теме
Респект, буду пользоваться с удовольствием)) много интересных задач позволяют получить широкие познания
альтруизм позволяет помогать новичкам и товарищам в решении интересных задач
Borisych; +1 Ответить
11. itt 21.11.11 18:02 Сейчас в теме
огромное спасибо за видеоурок, но с правильностью набора текста Вам надо что то делать! Видео можно было бы ужать процентов на 30.. ))))
Borisych; +1 Ответить
12. Borisych 503 21.11.11 22:51 Сейчас в теме
(11) это НЕ коммерческий продукт, itt
13. Evgeny-st 24.01.12 15:18 Сейчас в теме
Спасибо, большое! Очень ценная вещь!
14. Borisych 503 24.01.12 22:52 Сейчас в теме
пожалуйста! надеюсь на следующей неделе сделать пример для подсистемы БСП
15. zveruga56 152 20.07.12 13:00 Сейчас в теме
Спасибо за шаблон! Уже прикручиваем!
16. Borisych 503 20.07.12 13:13 Сейчас в теме
20. NazarovV 87 18.10.12 15:37 Сейчас в теме
спасибо большое, особенно за видео!просто и понятно, пригодилось\ться на практике!
21. Borisych 503 19.10.12 08:26 Сейчас в теме
(20) NazarovV, пользуйтесь, коллеги. Присылайте запросы на уже готовые решения - вдруг найдется?
22. NazarovV 87 19.10.12 09:23 Сейчас в теме
(21) ну я вот что сделал! правда не думаю что кому то будет полезно.. специфично сказать - ничего не сказать! http://infostart.ru/public/157142/
23. Zerkon 96 20.11.12 09:18 Сейчас в теме
Хочу поблагодарить за профессиональный подход к делу )) Сам все время своих коллег заставляю делать все через внешки, как печатные формы, так и всякие довески. Материал хорошо изложен, теперь буду использовать его для примера. Отдельно спасибо за механизм авторегистрации, самому не было времени разбирать типовое решение.
24. Borisych 503 20.11.12 09:48 Сейчас в теме
(23) Zerkon, Спасибо за приятные слова!
Оставьте свое сообщение