Создание нового элемента из поля формы с заполнением реквизитов

03.05.23

Разработка - Работа с интерфейсом

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

Собственно, есть следующая задача.

В документе есть поле с ссылкой на справочник.

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

 

 

Потребовалось три действия

1. Перехватываем событие поля Создание. Устанавливаем Стандартную обработку в Ложь, в ПараметрыФормы передаем структуру с ключом ЗначенияЗаполнения. В структуру передаем значение нашего реквизита, который надо установить (у меня это ВладелецТС) и РежимВыбора, чтобы установить режим выбора в форме. Обязательно указываем Владельцем открываемой формы сам Элемент. 

 

 

2. В модуле объекта в процедуре ОбработкаЗаполнения проверяем ЗначенияЗаполнения и заполняем реквизит

 

 

3. В форме элемента ПриСозданииНаСервере проверяем, есть ли в структуре ЗначенияЗаполнения свойство РежимВыбора, и устанавливаем его в Истина.

 

 

Реквизит заполняется и при нажатии Записать и закрыть подставляется в поле, из которого создавали.

 

 

Тестировалось на Платформе 8.3.21.1622, управляемые формы.

Событие Создание Заполнение

См. также

Богатый редактор картинок, хранимых в базе, с возможностью РИСОВАНИЯ. Редактор внешних файлов картинок. Объект, расширяющий возможности работы с картинками из встроенного языка (Три в одном) + Обработка «Стандартизация картинок»

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

Обработка предназначена для редактирования картинок в режиме «Предприятие», с возможностью РИСОВАТЬ на них. Поддерживается работа как в обычных формах (толстый клиент) так и на управляемых формах (тонкий клиент). Обработка позволяет редактировать как картинки, хранимые в базе, так и графические файлы с диска на файловой системе. Помимо базовых функций (изменение размеров, преобразование формата, обрезание картинки, повороты и т.п.) – редактор имеет богатый набор инструментов для рисования. Доступна функция вставки изображения из буфера обмена. Также обработка может быть использована из встроенного языка как объект для редактирования картинок. Объект может быть использован: на стороне клиента, на стороне сервера, из внешнего соединения. Данная обработка будет особенно полезна тем, кто вносит картинки в базу (изображения номенклатуры, фотографии физических лиц и т.п.). Функционал реализуется с использованием JavaScript и бесплатного ПО ImageMagick (без использования внешних компонент).

6000 руб.

16.01.2015    61808    43    59    

80

[Расширения] Динамическое управление видимостью и доступностью элементов форм (УФ) (8.3.6+)

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

Механизм «Динамическое управление доступом к элементам форм объектов 1С8» предназначен для обеспечения возможности оперативного управления видимостью и доступностью элементов форм документов и справочников продуктов фирмы «1С» «1С:Предприятие 8». Решение универсальное, встраивается в любую конфигурацию с минимальными доработками, что позволяет без проблем обновлять типовые решения.

5000 руб.

14.01.2016    54409    16    21    

42

Управление дашбордами

Работа с интерфейсом Платформа 1С v8.3 Конфигурации 1cv8 Платные (руб)

Обработка предназначена для создания и управления дашбордами.

2400 руб.

29.06.2020    16701    21    4    

35

Создать на основании - своя кнопка (БСП). Проблема двух подменю Создать на основании

БСП (Библиотека стандартных подсистем) Адаптация типовых решений Платформа 1С v8.3 1С:ERP Управление предприятием 2 Бесплатно (free)

Понадобилось в подменю "Создать на основании" добавить свою команду, которая открывает обработку. В процессе доработок появилась проблема двух подменю "Создать на основании". В статье о том, как решились проблемы.

01.03.2024    1298    dimanich70    6    

13

Новогоднее оформление для 1С

Работа с интерфейсом Платформа 1С v8.3 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Зарплата и Управление Персоналом 3.x 1С:Управление нашей фирмой 3.0 Бесплатно (free)

Добавьте новогоднего настроения! Расширение создает декорацию в виде гирлянды на некоторых формах объектов.

27.12.2023    10746    750    elcoan    45    

106

Конструктор HTML, CSS и javascript

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

Подходит для создания web-страниц для замены управляемых форм 1С, красивых отчетов, интерфейса мобильного приложения на платформе 1С и для простых страниц веб-сайтов.

2 стартмани

10.04.2023    9626    151    acces969    31    

118

Модель состояния для MVC

Работа с интерфейсом Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

"MVC плохо применима в 1С" - познакомьтесь с моделью состояния и, возможно, ваше мнение поменяется! Представленное решение является эволюционным развитием идеи реализации MVC для 1С. В новой версии добавлены DSL для описания модели состояния, а также параметризация свойств параметров и элементов формы.

1 стартмани

05.07.2022    3670    kalyaka    2    

27
Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. ixijixi 1777 03.05.23 16:25 Сейчас в теме
По-моему п.3. избыточен для решения задачи
3. dimanich70 574 03.05.23 17:40 Сейчас в теме
(1)Пробовал убрать, но тогда созданный элемент не попадает в поле из которого создается.
ProstoProgrammist; +1 Ответить
2. reset2 17 03.05.23 17:23 Сейчас в теме
Чтобы не мудрить в вызываемой форме, можно переназначить ПараметрыВыбора у элемента формы перед созданием.
А чтобы не писать код в ОбработкеЗаполнения - поставить для реквизитов справочника (ВладелецТС) признак "Заполнять из данных заполнения"
Пример кода для формы документа.

&НаКлиенте
Процедура СсылкаНаСправочникСоздание(Элемент, СтандартнаяОбработка)
	
	// установить параметр выбора, который улетит в создаваемый элемент
	НовыйМассив = Новый Массив();
	НовыйМассив.Добавить(Новый ПараметрВыбора("Отбор.Реквизит1", "Значение для заполнения Реквизита 1"));
	НовыйМассив.Добавить(Новый ПараметрВыбора("Отбор.Реквизит2", "Значение для заполнения Реквизита 2"));

	Элемент.ПараметрыВыбора = Новый ФиксированныйМассив(НовыйМассив);
 
КонецПроцедуры

&НаКлиенте
Процедура СсылкаНаСправочникНачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка)	
	// очистим параметры, чтобы все элементы попали
	Элемент.ПараметрыВыбора = Новый ФиксированныйМассив(Новый Массив);	
КонецПроцедуры

&НаКлиенте
Процедура СсылкаНаСправочникНачалоВыбораИзСписка(Элемент, СтандартнаяОбработка)	
	// очистим параметры, чтобы все элементы попали	
	Элемент.ПараметрыВыбора = Новый ФиксированныйМассив(Новый Массив);	
КонецПроцедуры
Показать
user1503887; JohnyDeath; +2 Ответить
4. dimanich70 574 03.05.23 17:44 Сейчас в теме
(2)Вот оно как. Тоже хотел использовать признак "Заполнять из данных заполнения". Но, честно говоря не понял как сделать. Спасибо.
А две последние процедуры зачем? Вроде как туда не должны попасть.
5. reset2 17 03.05.23 17:57 Сейчас в теме
(4) Это чтобы когда открываешь форму выбора список не фильтровался по значениям указанным в параметрах выбора при создании.
Хотя если отбор нужен и для выбора из имеющихся, то можешь не писать этот код.
6. ProstoProgrammist 3 11.09.23 17:59 Сейчас в теме
Спасибо тебе милый человек, про режим выбора я и не догадался, сделал тоже самое, только в обработку заполнения справочника не вмешивался, просто получаю форму и ее заполняю как мне надо, а потом открываю. Только вот про режим выбора не знал, не возвращался у меня только что созданный элемент справочника обратно в мою форму. А теперь по красоте!
Оставьте свое сообщение