Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
24 ноя 2024, 22:14

Создание элемента справочника

Автор Rustem, 13 фев 2017, 11:25

0 Пользователей и 1 гость просматривают эту тему.

Rustem

Здравствуйте. Как при записи документа создать элемент справочника и присвоить этот элемент реквизиту документа?

Fedor_Safonchik

Цитата: Rustem от 13 фев 2017, 11:25Здравствуйте. Как при записи документа создать элемент справочника и присвоить этот элемент реквизиту документа?

Опишите полностью ситуацию , просто с вида - это выглядит как извращение

А для справки,

В событие "Проведения" в модуле объекта создаёте функцию с кодом
НовыйЭлементСправочника =Справочники.ВашСправочник.СоздатьЭлемент();
НовыйЭлементСправочника.ВашРеквизит = ЗначениеРеквизита;

Возврат НовыйЭлементСправочника;

И получаете ссылку на созданный вами элемент и дальше работаете с ним

Rustem

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

Fedor_Safonchik

Цитата: Rustem от 13 фев 2017, 11:38Есть документ, при его сохранении создается товар в справочнике Номенклатура и этот товар должен присвоится реквизиту документа.

Откуда берётся Наименование и остальные реквизиты справочника "Номенклатура" ?

Rustem

Цитата: Fedor_Safonchik от 13 фев 2017, 11:41
Откуда берётся Наименование и остальные реквизиты справочника "Номенклатура" ?
Это я все заполню сам уже программно

Fedor_Safonchik

Я так понимаю, что в каком-то реквизите будет храниться наименование товара, вот возле данного реквизита создайте команду "+" которая будет создавать элемент справочника,  потом уже проводите.

Но логика неправильна, подумайте ещё раз над реализацией, Вы пытаетесь сделать работу за кого-то, этого не нужно делать.

Rustem

Хорошо, пусть логика неправильная :) Но можно просто подсказать как это сделать?

Fedor_Safonchik

Цитата: Rustem от 13 фев 2017, 12:02Но можно просто подсказать как это сделать?

На форме документа, в событие "ПриЗаписиНаСервер" пишите:

НовыйЭлементСправочника =Справочники.ВашСправочник.СоздатьЭлемент();
     НовыйЭлементСправочника.ВашРеквизит = ЗначениеРеквизита; // реквизиту справочника присваиваем значение из реквизита документа

РеквизитДокумента = НовыйЭлементСправочника;

Все, до проведения создастся элемент, но тут наложите проверки дублей и так далее

Rustem

Цитата: Fedor_Safonchik от 13 фев 2017, 12:12
На форме документа, в событие "ПриЗаписиНаСервер" пишите
В образовательных целях, объясните пожалуйста, почему именно в обработчике ПриЗаписиНаСервер это надо писать, а не в другом?
Добавлено: 14 фев 2017, 08:46


Почему то в реквизите документа не сохраняется новый элемент справочника
Добавлено: 14 фев 2017, 09:21


Разобрался, во-1 в ПередЗаписьюНаСервере(Отказ, ТекущийОбъект, ПараметрыЗаписи) надо было писать ТекущийОбъект.НужныйРеквизит = НовыйЭлементСправочника, во-2 надо было записать НовыйЭлемент :)

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск