УТ 10.3 Переоценка+тип цен номенклатуры (не заполняет справочник)

Новая тема
"Добрый день. Такая проблема: При переходе с 1с 7.7 на 8.2 переносим остатки документами поступления. Создаю документ программно, заполняю, а в итоге он не проведён потому что требуется сделать переоценку, документов таких будем оочень много, подскажите, пожалуйста, как программно сделать для документа переоценку?? и ещё, когдасоздаю док пытаюсь заполнить Тип Цен,создавая для каждого контрагента запись в справочнике, но они не создаются и не записываются, вот код

          ТипЦенНом=Справочники.ТипыЦенНоменклатурыКонтрагентов;
         КонтрагентРодитель=Справочники.Контрагенты.НайтиПоНаименованию(СокрЛП(j.Поставщик)).Ссылка;
         Выборка= ТипЦенНом.Выбрать(,КонтрагентРодитель,,);
            Пока Выборка.Следующий()  Цикл
                  Объект = Выборка.ПолучитьОбъект();
                     Если Объект.Ссылка=Справочники.ТипыЦенНоменклатурыКонтрагентов.ПустаяСсылка() Тогда
                            НовыйТипЦенНоменклатуры=Справочники.ТипыЦенНоменклатурыКонтрагентов.СоздатьЭлемент();
                            НовыйТипЦенНоменклатуры.Наименование="ОптоваяЦенаКонтрагента";
                            НовыйТипЦенНоменклатуры.Владелец=Справочники.Контрагенты.НайтиПоНаименованию(j.Поставщик);
                            НовыйТипЦенНоменклатуры.ТипЦеныНоменклатуры=Справочники.ТипыЦенНоменклатуры.НайтиПоНаименованию("Оптовая");
                            НовыйТипЦенНоменклатуры.ВалютаЦены=Справочники.Валюты.НайтиПоНаименованию("руб.");
                            НовыйТипЦенНоменклатуры.Записать();
                            НовыйДокумент.ТипЦен=НовыйТипЦенНоменклатуры.Ссылка;
                            Прервать;
                       Иначе
                          НовыйДокумент.ТипЦен=Объект.Ссылка;
                   КонецЕсли;
"
У Вас  - выборка из справочника, а в выборке, по определению, не может быть элементов, которые подходят под условие
Если Объект.Ссылка=Справочники.ТипыЦенНоменклатурыКонтрагентов.ПустаяСсылка() Тогда
Подскажите, пожалуйста, на что мне заменить эту строку, или нужно добавить в выборку Отбор??
"Как я понима, Вы хотите создавать новый тип цен для контрагента в том случае, если к нему не привязан ни один тип цен.
Если это так, то код мог бы выглядеть следующим образом:

ТипЦенНом=Справочники.ТипыЦенНоменклатурыКонтрагентов;КонтрагентРодитель=Справочники.Контрагенты.НайтиПоНаименованию(СокрЛП(j.Поставщик)).Ссылка;Выборка= ТипЦенНом.Выбрать(,КонтрагентРодитель,,);Если Выборка.Следующий() Тогда     НовыйДокумент.ТипЦен=Выборка.Ссылка;Иначе НовыйТипЦенНоменклатуры=Справочники.ТипыЦенНоменклатурыКонтрагентов.СоздатьЭлемент();     НовыйТипЦенНоменклатуры.Наименование="ОптоваяЦенаКонтрагента";     НовыйТипЦенНоменклатуры.Владелец=КонтрагентРодитель;     НовыйТипЦенНоменклатуры.ТипЦеныНоменклатуры=Справочники.ТипыЦенНоменклатуры.НайтиПоНаименованию("Оптовая");     НовыйТипЦенНоменклатуры.ВалютаЦены=Константы.ВалютаРегламентированногоУчета.Получить();     НовыйТипЦенНоменклатуры.Записать();     НовыйДокумент.ТипЦен=НовыйТипЦенНоменклатуры.Ссылка; КонецЕсли; 
"
Спасибо за ответ(я недавно занялась восьмёркой, после семёрки немного странно:)) а что делать с переоценкой?? нужно тоже как-то из этого документа её программно выполнить ..
1. изучайте запросы, не пользуйтесь выборками напрямую из справочников, док-ов и тд.
2. У вас есть в документе на форме кнопка "Переоценка", вот и посмотрите как там. В принципе и делать не надо толком ничего, просто пропишите в нужном вам месте вызов действия кнопки "переоценка"
Читают тему
(гостей: 1)

Быстрый переход