Имя: Пароль:
1C
1С v8
Очистка регистрации
0 Evgen219r
 
23.01.14
02:51
Добрый день!

Прошу помощи.

В составе плана обмена один единственный регистр сведений.
Есть необходимость удалять его записи из регистрации плана обмена.
Выполняю примерно такой код, получаю ошибку:

{(37)}: Ошибка при вызове метода контекста (УдалитьРегистрациюИзменений): Недопустимое значение параметра (параметр номер '2')

Как удалить запись из регистрации?


Заказ = Документы.ЗаказПоставщику.НайтиПоНомеру("МК7701-0000057",'20140101');    
    Запрос = Новый Запрос("ВЫБРАТЬ
    |    СтатусыЗаявокСрезПоследних.СтатусЗаявки,
    |    СтатусыЗаявокСрезПоследних.Период
    |ИЗ
    |    Документ.ЗаказПоставщику КАК ДокЗаказПоставщику
    |        ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.СтатусыЗаявок.СрезПоследних(, ЗаказПоставщику = &ЗаказПоставщику) КАК СтатусыЗаявокСрезПоследних
    |        ПО (СтатусыЗаявокСрезПоследних.ЗаказПоставщику = ДокЗаказПоставщику.Ссылка)
    |ГДЕ
    |    ДокЗаказПоставщику.СтатусЗаявки <> СтатусыЗаявокСрезПоследних.СтатусЗаявки
    |    И ДокЗаказПоставщику.Ссылка = &ЗаказПоставщику");
    
    Запрос.УстановитьПараметр("ЗаказПоставщику", Заказ);
    
    Результат = Запрос.Выполнить();
    
    Если Не Результат.Пустой() Тогда
        
        Выборка = Результат.Выбрать();
        Выборка.Следующий();

        
        ВыборкаУзлов = ПланыОбмена.ОбменСтатусамиЗаявокПокупателей.Выбрать();
        Пока ВыборкаУзлов.Следующий() Цикл
            Если ВыборкаУзлов.Ссылка = ПланыОбмена.ОбменСтатусамиЗаявокПокупателей.ЭтотУзел() Тогда
                Продолжить;
            КонецЕсли;
            
            Набор = РегистрыСведений.СтатусыЗаявок.СоздатьНаборЗаписей();
            Набор.Отбор.ЗаказПоставщику.Установить(Заказ);
            Набор.Отбор.Период.Установить(Выборка.Период);
            Набор.Прочитать();
            
            Если Набор.Количество()>0 Тогда
                Запись = Набор.Получить(0);
                Попытка
                    ПланыОбмена.УдалитьРегистрациюИзменений(ВыборкаУзлов.Ссылка,Запись);
                Исключение
                    Сообщить(ОписаниеОшибки());
                КонецПопытки;
            КонецЕсли;
        КонецЦикла;
КонецЕсли;
1 golden-pack
 
23.01.14
02:57
ПланыОбмена.УдалитьРегистрациюИзменений(ВыборкаУзлов.Ссылка,Набор);
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший