Разбор механизма "Настройки полей формы" в 1С:ERP. Управление холдингом

18.07.23

Разработка - Механизмы типовых конфигураций

В данной статье я постараюсь разобрать механизм, который Вам может встретиться на просторах типовой конфигурации 1С:ERP. Управление холдингом. Я не могу гарантировать, что этот механизм не исключат из следующих версий конфигурации (как, собственно, и любой другой). К сожалению, мне не удалось найти его ни в одном модуле конфигурации "Библиотеки стандартных подсистем". Мне он показался интересным, и захотелось более детально во всем этом разобраться.

Точкой входа для использования функционала является вызов процедуры в модуле формы в событии "ПриСозданииНаСервере", но для корректности его также нужно вызывать в модуле обработчика события "ПриЧтенииНаСервере", поэтому в конфигурации вызов осуществляется из общей служебной процедуры "ПриЧтенииСозданииНаСервере":

ДенежныеСредстваСервер.УправлениеЭлементамиФормыПриЧтенииСозданииНаСервере(ЭтотОбъект);

Могу предположить, что изначально функционал разрабатывался для одного документа, а уже потом расширился до 16 документов + 4 справочников. На мой взгляд, все это можно было вынести в отдельную подсистему. Но продолжим.

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

	НастройкиПолейФормы = ИнициализироватьНастройкиПолейФормы();
	Менеджер = ОбщегоНазначения.МенеджерОбъектаПоПолномуИмени(ИмяОбъекта);
	Менеджер.ЗаполнитьНастройкиПолейФормы(НастройкиПолейФормы);

Процедура "ЗаполнитьНастройкиПолейФормы" должна находиться в модуле менеджера, для корректной работы. И именно она определяет свойства полей формы в зависимости от данных объекта. 

Здесь расскажу плюсы, которые я увидел в данном функционале. Это возможность заранее определить настройки видимость, доступность полей в зависимости от значений реквизитов объекта. К примеру, Вам нужно скрыть поле договор или еще ряд полей (какие захотите), если свойство "ПодотчетноеЛицо" Заполнено, на уровне настроек полей, можно это сделать, "не спускаясь" на уровень формы, и не прописывать в модуле формы условия.

Пример:  Документ "Авансовый отчет"

Задача: Нужно, при изменении значения переключателя на значение "Мультвалютный", изменять доступность поля "Валюта" на "Ложь", и соответственно, при переключении обратно, делать снова доступным.

 

 

 
 Классический вариант:
 
 "Новый механизм"

 

В "Новом механизме" вызывается процедура формы на сервере. Она и производит настройку свойств элементов формы. 

Сразу скажу. В качестве параметра "ИзмененныйРеквизит" можно отправлять сразу несколько значений разделенных запятыми, к примеру "Мультивалютный, ПодотчетноеЛицо". И тогда механизм обработает все зависимые поля, на основании значений измененных реквизитов.

А как система определяет, какие настройки полей соответствует именно этому Измененному реквизиту? Отвечаю. При инициализации формы, выше мы обсуждали, создается коллекция "ЗависимостиПолей", которая хранит соответствие реквизитов на основании отборов указанных разработчиком в модуле менеджера.

т.е. в нашем примере накладывается отбор ...."Мультивалютный", Ложь);, значит в коллекцию "ЗависимостиПолей" попадет строка со значениями "Мультивалютный" и его полями для настройки.

 

&НаСервере
Процедура НастроитьЗависимыеЭлементыФормыНаСервере(ИзмененныйРеквизит = "")
	
	ДенежныеСредстваКлиентСервер.НастроитьЭлементыФормы(ЭтаФорма, ИзмененныйРеквизит, РеквизитыФормы(ЭтаФорма));
	
КонецПроцедуры

 

-----------------------------------------------------------------------------

P.S. Опишу, как можно доработать существующие документы, используя расширения, а также разберу на примере, как можно встроить в "свои" объекты. Если статья найдет отклик или будет такой запрос.

1С:ERP. Управление холдингом (3.1.10.8).

См. также

Ценовая власть. Выносим из цикла схему СКД

Механизмы типовых конфигураций Ценообразование, анализ цен Программист Пользователь Платформа 1С v8.3 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 Россия Абонемент ($m)

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

1 стартмани

11.04.2024    643    tango    1    

3

Формула в реквизите. Приквелл к сериалу "Ценовая власть"

Механизмы типовых конфигураций Программист Платформа 1С v8.3 1С:Управление торговлей 11 Россия Абонемент ($m)

Какому-либо элементу списка сопоставляется числовое значение, зависящее от других значений, причем эта зависимость изменяется от элемента к элементу. Так, в справочнике "Валюты" курс какой-либо валюты может быть задан формулой (или даже запросом) от значения другой валюты. А в справочнике "Виды цен" формула определяет расчет цены для товарной позиции, т.е. элементов справочника "Номенклатура", у которых в карточке указан этот вид цены. А в 1С:ERP, например, этот механизм используется в ресурсной спецификации.

10 стартмани

11.04.2024    506    tango    5    

4

Ценовая власть. Второй сезон

Механизмы типовых конфигураций Программист Платформа 1С v8.3 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 Россия Бесплатно (free)

В первом сезоне мы рассмотрели (с точки зрения программиста) внутренний механизм, помещающий цены в регистр "Цены". Из этого регистра цена попадает в исходящие УПД (в продажи). Но эта цена (в прайс-листе) дифференцирована (ценообразована) в разрезах свойств самой номенклатуры. Но стратегия ценообразования, ценовая власть - это в первую очередь о работе с ценами для клиента. И тут вступает в дело второй акт марлезонского, Скидки (наценки) и кешбек.

08.04.2024    868    tango    0    

2

Ценовая власть или Управление ценообразованием (УТ 11.5)

Ценообразование, анализ цен Механизмы типовых конфигураций Программист Бизнес-аналитик Пользователь Платформа 1С v8.3 Оперативный учет 1С:Управление торговлей 11 Россия Управленческий учет Абонемент ($m)

Ценовая власть - это способность (возможность) компании изменять в некоторых пределах отпускную цену своего товара (услуг, продукции). Чем в более широких пределах вы можете играть в цену продажи, тем больше этой власти у вас. Если вы не можете управлять отпускной ценой, то это или не ваш бизнес, или не бизнес вовсе. Здесь в рубрике "База знаний аналитика и руководителя проекта" слово проект не ограничено "проектом в 1С". Посмотрим, что для этого есть в УТ 11.5.

1 стартмани

05.04.2024    727    tango    12    

2

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

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

Уже не одна веб-страница исписана знаниями о дополнительных обработках, как создать, как подключить. Есть масса вариантов, как их можно отладить. Я разобрался в кишках работы библиотеки и покажу, как можно расширить возможности дополнительных отчетов, а также покажу удобный способ отладки.

07.02.2024    2963    YA_418728146    11    

49

Регистры накопления в 1С:КА2 и 1С:ERP для расчета НДФЛ, страховых взносов и взаиморасчетов с сотрудниками на январь 2024 года. Краткое описание

Зарплата Механизмы типовых конфигураций Программист Бухгалтер Платформа 1С v8.3 1С:ERP Управление предприятием 2 1С:Комплексная автоматизация 2.х Россия Бухгалтерский учет НДФЛ Абонемент ($m)

Для расчета зарплаты и соответствующих налогов в конфигурациях 1С:КА2 и 1С:ERP используется 22 регистра накопления, 7 регистров сведений, 1 регистр расчета и бухгалтерские проводки. В таблице приведены названия этих регистров, указаны основные регистраторы и виды движений приход/расход. В описании приводится краткое функциональное назначение регистров в основных зарплатных процессах. Описание регистров родилось из черновиков при написании различных отчетов и обработок при эксплуатации 1С-овских конфигураций и исправлении ошибок по НДФЛ, взаиморасчетов с сотрудниками и прочих. Информация не претендует на полноценное описание работы регистров, скорее это дискуссионный материал. Но, возможно, кому-то пригодится и сократит время при подготовке отчетности за непростой (в плане учета зарплаты) 2023 год. А возможно, кто-то поделится своим опытом.

1 стартмани

10.01.2024    1439    9    2ncom    6    

8

Шаблоны новых объектов 1С для 1С:Бухгалтерии предприятия

Инструментарий разработчика БСП (Библиотека стандартных подсистем) Механизмы типовых конфигураций Программист Стажер Платформа 1С v8.3 1С:Бухгалтерия 3.0 Бесплатно (free)

Используются для создания новых объектов в конфигурации, чтобы не забыть, что нужно сделать. Сделано на примере 1С:Бухгалтерия предприятия, в других конфигурациях могут быть другие, а могут быть и похожие объекты.

28.12.2023    5286    mrXoxot    11    

104
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. aeoHeKP 19.03.24 18:42 Сейчас в теме
Спасибо за статью, автор очень выручил! Не первый час сижу и пытаюсь понять, как сломать типовой механизм, чтобы реквизит Контрагент всегда подсвечивался красной чертой как обязательный, а то полей куча, меняю какое-либо и то красный, то не красный, уже весь мозг сломал. Плавно по отладчику дошел до нужных названий и до этой статьи. Выручил примером, а главное, все коротко и в целом понятно. Длинную статью было бы тяжело читать.
Оставьте свое сообщение