Разбор механизма "Настройки полей формы" в 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    547    tango    0    

3

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

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

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

10 стартмани

11.04.2024    423    tango    5    

4

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

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

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

08.04.2024    794    tango    0    

2

Ценовая власть (УТ 11.5) - 2

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

В прошлый раз специальной обработкой мы выбрали объекты УТ 1.5, группируя по подсистемам. Оказалось, что состав подсистем не вполне корректно отображает функциональную структуру, но зато мы нашли процедуру, которая, вроде бы, должна содержать в себе всё, что нас интересует. Обновление цен должно ведь следовать выбранной стратегии ценообразования, верно? Иначе что она обновляет...

06.04.2024    484    tango    1    

1

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

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

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

1 стартмани

05.04.2024    609    tango    12    

2

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

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

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

07.02.2024    2698    YA_418728146    11    

45

Регистры накопления в 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    1219    8    2ncom    6    

8

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

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

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

28.12.2023    5053    mrXoxot    11    

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