Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Как перенести элемент спр.ТМЦ в другую папку спр.ТМЦ
Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7 > Программисту > Программирование в 1С Предприятие 7.7
TTT
Здравствуйте! Бухгалтерия 7.7.
Неужели нельзя в коде перенести ТекущийЭлемент() справочника (напр. спр.ТМЦ) в другую указанную папку
справочника, т.е. поменять Родителя???
sava1
А что, написано , что нельзя ?

Из КЖК:

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

Синтаксис:

Родитель

Англоязычный синоним:

Parent

Описание:

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

Данный атрибут может быть изменен только для объектов, созданных функцией СоздатьОбъект.

Пример:

Функция ДатьРодителя(Элем)

   // Справочник Товаров многоуровневый

   // Получая в параметре функции значение товара,

   // надо выдать имя группы товара

   Спр = СоздатьОбъект("Справочник.Товары");

   Спр.НайтиЭлемент(Элем);

   Если Спр.Уровень() > 1 Тогда

      Спр.НайтиЭлемент(Спр.Родитель);

      Возврат "Этот товар принадлежит группе " + Спр.Наименование;

   Иначе

      Возврат "Это товар первого уровня - нет родителя!";

   КонецЕсли;

КонецФункции


TTT
sava1 @ Сегодня, 11:29 необходимо зарегистрироваться для просмотра ссылки ,
Я не увидела присвоения нового Родителя!
Старый и так известен!
sava1
Спр = СоздатьОбъект("Справочник.Товары");
// НовыйРодитель = спр.Найти...   или из реквизита
// те = найти элемент
те.Родитель = НовыйРодитель
Спр.Записать();
TTT
sava1 @ Сегодня, 12:19 необходимо зарегистрироваться для просмотра ссылки ,
И все???
Спасибо!!
Vofka
TTT, для "спасибо" есть специальная кнопочка.
TTT
TTT @ Сегодня, 12:22 необходимо зарегистрироваться для просмотра ссылки ,
Попробовала!
Ошибка: Объект не может быть перепозиционирован!
sava1
код покажите.
TipsyKID
Проверено работает.

Процедура ИзменитьРодителяНоменклатуры(Номенклатура,НовыйРодитель)
    
    Если НовыйРодитель.ЭтоГруппа() = 0 тогда
        Предупреждение("Укажите группу в качестве родителя!");
        Возврат;
    КонецЕсли;
    
    Спр = СоздатьОбъект("Справочник.ТМЦ");
    Спр.НайтиЭлемент(Номенклатура);
    
    Спр.Родитель = НовыйРодитель;
    
    Попытка
        Спр.Записать();
        Сообщить("Для элемента " + Номенклатура + " был изменен родитель на " + НовыйРодитель);
    Исключение
        Сообщить("" + ОписаниеОшибки());
    КонецПопытки;
    
КонецПроцедуры
//*******************************************


необходимо зарегистрироваться для просмотра ссылки
TTT
TipsyKID @ Вчера, 16:43 необходимо зарегистрироваться для просмотра ссылки ,
ДА!!! Спасибо большое, все работает у меня бестолковой!
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.