Здравствуйте! Бухгалтерия 7.7.
Неужели нельзя в коде перенести ТекущийЭлемент() справочника (напр. спр.ТМЦ) в другую указанную папку
справочника, т.е. поменять Родителя???
А что, написано , что нельзя ?
Из КЖК:
Родитель
Значение родительской группы элемента справочника.
Синтаксис:
Родитель
Англоязычный синоним:
Parent
Описание:
Атрибут Родитель предоставляет доступ к значению родительской группы выбранного элемента справочника.
Данный атрибут может быть изменен только для объектов, созданных функцией СоздатьОбъект.
Пример:
Функция ДатьРодителя(Элем)
// Справочник Товаров многоуровневый
// Получая в параметре функции значение товара,
// надо выдать имя группы товара
Спр = СоздатьОбъект("Справочник.Товары");
Спр.НайтиЭлемент(Элем);
Если Спр.Уровень() > 1 Тогда
Спр.НайтиЭлемент(Спр.Родитель);
Возврат "Этот товар принадлежит группе " + Спр.Наименование;
Иначе
Возврат "Это товар первого уровня - нет родителя!";
КонецЕсли;
КонецФункции
sava1 @ Сегодня, 11:29
,
Я не увидела присвоения нового Родителя!
Старый и так известен!
Спр = СоздатьОбъект("Справочник.Товары");
// НовыйРодитель = спр.Найти... или из реквизита
// те = найти элемент
те.Родитель = НовыйРодитель
Спр.Записать();
TTT @ Сегодня, 12:22
,
Попробовала!
Ошибка: Объект не может быть перепозиционирован!
код покажите.
Проверено работает.
Процедура ИзменитьРодителяНоменклатуры(Номенклатура,НовыйРодитель)
Если НовыйРодитель.ЭтоГруппа() = 0 тогда
Предупреждение("Укажите группу в качестве родителя!");
Возврат;
КонецЕсли;
Спр = СоздатьОбъект("Справочник.ТМЦ");
Спр.НайтиЭлемент(Номенклатура);
Спр.Родитель = НовыйРодитель;
Попытка
Спр.Записать();
Сообщить("Для элемента " + Номенклатура + " был изменен родитель на " + НовыйРодитель);
Исключение
Сообщить("" + ОписаниеОшибки());
КонецПопытки;
КонецПроцедуры
//*******************************************
TipsyKID @ Вчера, 16:43
,
ДА!!! Спасибо большое, все работает у меня бестолковой!
Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7
https://pro1c.org.ua