Заказы на доработку 1С (сервис удаленной работы)

Хранилище

База знаний
Неназначенных незавершенных заказов: 2, свеженьких 1
Бесплатные отчеты, обработки, конфигурации, внешние компоненты для 1С Статьи, описание работы, методики по работе с 1С

Здравствуйте, гость ( Вход | Зарегистрироваться )



> Смена родителя у справочника          
Alexandr91 Подменю пользователя
сообщение 08.10.20, 13:52
Сообщение #1

Молчаливый
*
Группа: Пользователи
Сообщений: 1
Спасибо сказали: 0 раз
Рейтинг: 0

Добрый день, есть поле табличного документа на форме, в него выводятся опр данные, если строка Категория и строка Родитель не совпадают, то они окрашиваются в опр цвет, написал блок код, который берёт эти окрашенные поля и должен в справочнике у элементов, которые в поле табличного документа были окрашены, сменить родителей на соответствующие их категории, но почему-то этого не происходит, вот сам код кнопки:

Выборка = Справочники.Номенклатура.Выбрать();
    Пока Выборка.Следующий() Цикл
        ДС = ТЗ.Добавить();
        ДС.Наименование = Выборка.Наименование;
        ДС.ВидНоменклатуры = Выборка.ВидНоменклатуры;
        ДС.Категория = Выборка.Категория;
        ДС.Родитель = Выборка.Родитель;
    КонецЦикла;
    
    спр = Справочники.Номенклатура;
    а = 1;
    
    Пока Выборка.Следующий() Цикл
        Если ТабДок.Область(а,1).ЦветФона = WebЦвета.БледноЛиловый Тогда
            поиск = спр.НайтиПоНаименованию(ДС.Категория).ПолучитьОбъект();
            поиск1 = спр.НайтиПоНаименованию(ДС.Родитель).ПолучитьОбъект();
            поиск.Родитель = поиск1.Ссылка;
            поиск.Записать();
        Иначе
            Прервать;
        КонецЕсли;
        а = а + 1;
    КонецЦикла;


kihor Подменю пользователя
сообщение 08.10.20, 17:28
Сообщение #2

Говорящий
***
Группа: Пользователи
Сообщений: 83
Спасибо сказали: 12 раз
Рейтинг: 10

Alexandr91 @ Сегодня, 14:52 * ,

Подозреваю, что второй цикл уже не выполняется, т.к. первый цикл выбрал все записи в выборке. Попробуйте перед вторым циклом сделать еще раз:

Выборка = Справочники.Номенклатура.Выбрать();


(что-то не нашел как спозиционировать по другому выборку снова на первую запись)

И не совсем ясно зачем во втором цикле делать ПолучитьОбъект() если потом к полученному объекту применять ".Ссылка".

Alexandr91 @ Сегодня, 14:52 * ,

Да, и вообще - какой-то странный код. Мне не понятно как во втором цикле задумывалась синхронизация с ДС и табличным документом ТабДок. Возможно, Вы привели не весь текст.

Не нашли ответа на свой вопрос?
Зарегистрируйтесь и задайте новый вопрос.


Ответить Новая тема
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 

RSS Текстовая версия Сейчас: 19.04.24, 18:44
1С Предприятие 8.3, 1С Предприятие 8.2, 1С Предприятие 8.1, 1С Предприятие 8.0, 1С Предприятие 7.7, Литература 1С, Общие вопросы по администрированию 1С, Методическая поддержка 1С - всё в одном месте: на Украинском 1С форуме!