как имея ссылку на элемент справочника запустить функцию модуля объекта для этого элемента?
Код я упростил для читаемости, убрав проверки и прочую мишуру оставив суть.
Собственно у нас есть "ЭлементНоменклатурыСсылка" нужно запустить функцию модуля объекта для справочника номенклатура, чтобы он обработал этот элемент.
Эта функция довольно объёмная и многозадачная, в следствии чего просто продублировать её не вариант.
Она должна срабатывать при изменении поля формы ВидНоменклатуры. Вот думаю, может проще вызывать ФормуЭлемента у справочника и создавать новый элемент через неё. Такое возможно сделать?
Собственно у нас есть "ЭлементНоменклатурыСсылка" нужно запустить функцию модуля объекта для справочника номенклатура, чтобы он обработал этот элемент.
Эта функция довольно объёмная и многозадачная, в следствии чего просто продублировать её не вариант.
Она должна срабатывать при изменении поля формы ВидНоменклатуры. Вот думаю, может проще вызывать ФормуЭлемента у справочника и создавать новый элемент через неё. Такое возможно сделать?
&НаКлиенте
Процедура ЗагрузитьДанныеВБазу(Команда)
Артикул = "буквыцыфры"
// Создаем элемент справочника Номенклатура на сервере
ЭлементНоменклатурыСсылка = СоздатьЭлементСправочникаНоменклатура(Артикул);
// Что написать вместо этой строчки чтобы работало???
ЭлементНоменклатурыСсылка.ПолучитьОбъект().ВидНоменклатурыПриИзмененииНастройкаФормы();
КонецПроцедуры
&НаСервере
Функция СоздатьЭлементСправочникаНоменклатура(Артикул)
// Создаём новый элемент справочника номенклатура
НоменклатураЭлемент = Справочники.Номенклатура.СоздатьЭлемент();
// чото делаем
// записываем
НоменклатураЭлемент.Записать();
// возвращаем ссылку на элемент справочника
Возврат Справочники.Номенклатура.НайтиПоРеквизиту("Артикул",Артикул);
КонецФункции
ПоказатьПо теме из базы знаний
- Всякие полезности
- УМП - Универсальный механизм планирования
- Конфигурация Flowcon: Набор инструментов для управления задачами, проектами и бизнесом в 1С
- Как работают управляемые формы и тонкий клиент 1С – взгляд "из-под капота"
- Комплексный контроль остатков. Для одного или сразу нескольких логически связанных регистров накопления. Универсальное решение уровня данных для контроля не только складских остатков
Найденные решения
(9) Ты уж определись - либо трусы, либо крестик.
нужно запустить функцию модуля объекта для справочника номенклатура, чтобы он обработал этот элемент.
Я тебе показал как запустить.
функцию модуля объекта... Эта функция довольно объёмная и многозадачная, в следствии чего просто продублировать её не вариант.
Тем более, что она уже существует.
Она должна срабатывать при изменении поля формы ВидНоменклатуры.
Что мешает при изменении перейти с клиента на сервер, получить объект и запустить нужное?
сервер не обрабатывает такие вызовы, потому что это работа с формой элемента
Видимо что-то мешает, все таки. То ли трусы, то ли крестик.
Остальные ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
(1)
НоменклатураЭлемент.Ссылка - это и есть то что Вы создали. А то что вы сейчас возвращаете как ссылку - это объект. ;)
(1)
// возвращаем ссылку на элемент справочника
Возврат Справочники.Номенклатура.НайтиПоРеквизиту("Артикул",Артикул);
А зачем его искать?
Возврат Справочники.Номенклатура.НайтиПоРеквизиту("Артикул",Артикул);
НоменклатураЭлемент.Ссылка - это и есть то что Вы создали. А то что вы сейчас возвращаете как ссылку - это объект. ;)
(1)
ЭлементНоменклатурыСсылка = СоздатьЭлементСправочникаНоменклатура(Артикул);
Это у Вас объект а не ссылка.
Только сделай уже нормальную процедуру в модуле, с адекватным наименованием
&НаСервере
Функция СоздатьЭлементСправочникаНоменклатура(Артикул)
// Создаём новый элемент справочника номенклатура
НоменклатураЭлемент = Справочники.Номенклатура.СоздатьЭлемент();
// чото делаем ВОТ ТУТ И ВЫЗЫВАЙ СВОЮ ПРОЦЕДУРУ
НоменклатураЭлемент.ВидНоменклатурыПриИзмененииНастройкаФормы();
// записываем
НоменклатураЭлемент.Записать();
// возвращаем ссылку на элемент справочника
Возврат НоменклатураЭлемент.Ссылка;
КонецФункции
Показать
(9) Ты уж определись - либо трусы, либо крестик.
нужно запустить функцию модуля объекта для справочника номенклатура, чтобы он обработал этот элемент.
Я тебе показал как запустить.
функцию модуля объекта... Эта функция довольно объёмная и многозадачная, в следствии чего просто продублировать её не вариант.
Тем более, что она уже существует.
Она должна срабатывать при изменении поля формы ВидНоменклатуры.
Что мешает при изменении перейти с клиента на сервер, получить объект и запустить нужное?
сервер не обрабатывает такие вызовы, потому что это работа с формой элемента
Видимо что-то мешает, все таки. То ли трусы, то ли крестик.
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот