Доработка типового функционала Конструктора макетов

24.05.23

Задачи пользователя - Адаптация типовых решений

Попросил клиент доработать конструктор макетов. КА 2.5.12.48. Задача: 1. добавить возможность выводить руководителя оргнанизции в макете договора между организациями. 2. прописывать сумму прописью.

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

Для решения обеих задач, потребуется один общий модуль "УправлениеПечатью". В расширение добавляем процедуры:

ТекстЗапроса. В конце дописываем вставку

   	#Вставка
	Если ОбъектМетаданных.ПолноеИмя() = "Справочник.Организации" Тогда
		Результат = СтрЗаменить(Результат,"ПсевдонимЗаданнойТаблицы.Наименование КАК Наименование,",
		"ПсевдонимЗаданнойТаблицы.Наименование КАК Наименование, ВложенныйЗапрос.Руководитель КАК Руководитель,ВложенныйЗапрос.РуководительРП КАК РуководительРП,");
		ТекущаяДатаЗапрос = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку("ДАТАВРЕМЯ(%1, %2, %3)",формат(ТекущаяДата(),"ДФ=yyyy"),формат(ТекущаяДата(),"ДФ=MM"),формат(ТекущаяДата(),"ДФ=dd"));
		Подзапрос = 
		"
		|	ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ
		|	ОтветственныеЛицаОрганизаций.Владелец КАК Владелец,
		|	ОтветственныеЛицаОрганизаций.ФизическоеЛицо КАК Руководитель,
		|	isnull(СклоненияПредставленийОбъектов.РодительныйПадеж,""___"") КАК РуководительРП
		|ИЗ
		|	Справочник.ОтветственныеЛицаОрганизаций КАК ОтветственныеЛицаОрганизаций
		|	ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.СклоненияПредставленийОбъектов КАК СклоненияПредставленийОбъектов
		|		ПО (ОтветственныеЛицаОрганизаций.ФизическоеЛицо = СклоненияПредставленийОбъектов.Объект)
		
		|ГДЕ
		|	ОтветственныеЛицаОрганизаций.ОтветственноеЛицо = ЗНАЧЕНИЕ(Перечисление.ОтветственныеЛицаОрганизаций.Руководитель)
		|	И ОтветственныеЛицаОрганизаций.ДатаНачала <= &ТекущаяДатаЗапрос
		|	И (ОтветственныеЛицаОрганизаций.ДатаОкончания =ДАТАВРЕМЯ(1,1,1,0,0,0)//ЕСТЬ NULL
		|			ИЛИ ОтветственныеЛицаОрганизаций.ДатаОкончания >= &ТекущаяДатаЗапрос)) КАК ВложенныйЗапрос
		|		ПО (ПсевдонимЗаданнойТаблицы.Ссылка = ВложенныйЗапрос.Владелец)";
		Подзапрос = СтрЗаменить(Подзапрос,"&ТекущаяДатаЗапрос",ТекущаяДатаЗапрос);
		Результат = Результат + Подзапрос;
	КонецЕсли;
	#КонецВставки
	Возврат Результат;

Сделал через вложенный запрос. Главная проблема: найти "действующего руководителя". Здесь знатоки могут меня поправить, если что не так. С датой ДА - извращение получилось ))). Это все для вывода руководителя. Они хранятся в справочнике и нужно отбирать по типу ответственного лица в "рабочем" диапазоне дат.

А для суммы прописью я доработал процедуру СписокОператоров:

&ИзменениеИКонтроль("СписокОператоров")
Функция чд_СписокОператоров()

	СписокОператоров = КонструкторФормул.СписокОператоров();

	Группа = СписокОператоров.Строки.Найти("СтроковыеФункции");
	Если Группа = Неопределено Тогда
		Группа = СписокОператоров.Строки.Добавить();
		Группа.Идентификатор = "СтроковыеФункции";
		Группа.Представление = НСтр("ru = 'Строковые функции'");
		Группа.Порядок = 5;
		Группа.Картинка = БиблиотекаКартинок.ТипФункция;
	КонецЕсли;

	Оператор = Группа.Строки.Добавить();
	Оператор.Идентификатор = "УправлениеПечатью_СтрокаЛатиницей";
	Оператор.Представление = НСтр("ru = 'СтрокаЛатиницей'");
	Оператор.ТипЗначения = Новый ОписаниеТипов("Строка");
	Оператор.ЭтоФункция = Истина;

	Группа = СписокОператоров.Строки.Найти("ПрочиеФункции");
	Если Группа = Неопределено Тогда
		Группа = СписокОператоров.Строки.Добавить();
		Группа.Идентификатор = "ПрочиеФункции";
		Группа.Представление = НСтр("ru = 'Прочие функции'");
		Группа.Порядок = 6;
		Группа.Картинка = БиблиотекаКартинок.ТипФункция;
	КонецЕсли;

	Оператор = Группа.Строки.Добавить();
	Оператор.Идентификатор = "УправлениеПечатью_КоличествоСтрок";
	Оператор.Представление = НСтр("ru = 'КоличествоСтрок'");
	Оператор.ТипЗначения = Новый ОписаниеТипов("Число");
	Оператор.ЭтоФункция = Истина;
    #Вставка
	Оператор = Группа.Строки.Добавить();
	Оператор.Идентификатор = "УправлениеПечатью_СуммаПрописью";
	Оператор.Представление = НСтр("ru = 'СуммаПрописью'");
	Оператор.ТипЗначения = Новый ОписаниеТипов("Число");
	Оператор.ЭтоФункция = Истина;
	
	#КонецВставки
	Возврат КонструкторФормул.КоллекцияПолей(СписокОператоров);

КонецФункции

И добавил тут же свою функцию

Функция СуммаПрописью(Число) Экспорт
	
	Если ТипЗнч(Число) = Тип("Число") Тогда
		Возврат РаботаСКурсамиВалют.СформироватьСуммуПрописью(Число,Константы.ВалютаРегламентированногоУчета.Получить(),Ложь,"ru_RU");
	КонецЕсли;
	
	ВызватьИсключение НСтр("ru = 'Неверно указано значение'");
	
КонецФункции

Теперь как это работает.

В конструкторе у организации появился Руководитель и Руководитель в родительном падеже:

 

 

а в операторах наша сумма прописью

 

 

в макете:

 

 

на печати:

 

 

Как-то так. На этом все. Надеюсь, кому-нибудь пригодится.

Вступайте в нашу телеграмм-группу Инфостарт

констуктор макетов числопрописью БСП

Вы можете заказать платную адаптацию этой статьи под ваши задачи на «Бирже заказов».

  • 0% комиссии — оплата напрямую исполнителю;
  • Исполнители любого масштаба — от отдельных специалистов до команд под проект;
  • Прямой обмен контактами между заказчиком и исполнителем;
  • Безопасная сделка — при необходимости;
  • Рейтинги, кейсы и прозрачная система откликов.

См. также

Разработка Адаптация типовых решений Производство готовой продукции (работ, услуг) Розничная торговля 1С:Управление торговлей 10 Россия Платные (руб)

Доработка для 1С:Управление торговлей 10.3 (релиз 10.3.88.3) добавляет поддержку маркировки новых категорий товаров согласно постановлениям Правительства РФ 2025–2026 гг. Конфигурация УТ 10.3 снята с поддержки — новые маркируемые категории в типовую поставку больше не попадают. Доработка закрывает этот пробел: новые виды номенклатуры, обмен с ГИС МТ «Честный Знак». Поставляется в виде файла .cf

14640 руб.

23.04.2026    3744    29    13    

31

Адаптация типовых решений БСП (Библиотека стандартных подсистем) Кадровый учет ЭДО и ОФД 1C:Бухгалтерия 1С:Зарплата и кадры 7.7 1C:ERP 1С:ЗУП 1С:УТ 1С:ДО Платные (руб)

Наше расширение 1С Госключ обеспечивает интеграцию любой конфигурации 1С на базе БСП с мобильным приложением «Госключ», позволяя сотрудникам подписывать кадровые документы (КЭДО) и документы материальной ответственности (МОЛ, ПБ) усиленной электронной подписью прямо со смартфона. Решение автоматизирует формирование и отправку документов на подпись, отслеживает статусы подписания и хранит подписанные файлы непосредственно в базе 1С

25000 руб.

06.03.2026    2146    4    0    

5

Банковские операции Адаптация типовых решений Бухгалтер Пользователь 1С:Предприятие 8 1С:Бухгалтерия 3.0 Россия Бухгалтерский учет Платные (руб)

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

9760 руб.

17.06.2025    4651    11    0    

11

Печатные формы Адаптация типовых решений Бухгалтер Пользователь 1С:Предприятие 8 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 Платные (руб)

Расширение позволяет вывести в табличном документе факсимиле печати и подписей и/или вывести произвольную картинку из прикреплённых файлов организации для 1С УТ 11.5, КА 2.5, ERP 2.5, УНФ 3, Розница 3. Вывод факсимиле возможен в табличные документы УПД, УКД, Счёт-фактура, ТОРГ-12 и другие. Возможно настроить вывод для любых типовых макетов (Акт сверки, М-15, ТТН), для этого потребуется отредактировать макет и разместить на нём картинки с соответствующими именами, при выводе на печать в размещённые картинки будут выводиться факсимиле из прикреплённых рисунков. Редактирование осуществляется через типовой механизм в пользовательском интерфейсе.

6000 руб.

07.02.2023    14111    121    25    

77

Адаптация типовых решений 1С 8.3 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Платные (руб)

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

6710 руб.

20.04.2026    783    1    0    

3

Адаптация типовых решений 1С 8.3 1С:Бухгалтерия 3.0 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 Беларусь Россия Платные (руб)

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

21859 руб.

29.12.2025    1882    1    8    

2
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. tormozit 7385 24.05.23 15:24 Сейчас в теме
Опечатка в названии "КонструКтора"
2. Docaru 2 24.05.23 15:43 Сейчас в теме
3. gmw 7 23.02.26 08:44 Сейчас в теме
Опечатка: "оргнанизции"
Для отправки сообщения требуется регистрация/авторизация