Имя: Пароль:
1C
 
Где спрятана ошибка? Все теже изменения регистров сведений.
0 SurFace
 
15.04.09
17:59
НаборЗаписей = РегистрыСведений.КонтактнаяИнформация.СоздатьНаборЗаписей();
   
   НаборЗаписей.Отбор.Вид.Значение = ОпределениеСсылкиВидаНоменклатуры("000000001");
   НаборЗаписей.Отбор.Вид.ВидСравнения = ВидСравнения.Равно;
   НаборЗаписей.Отбор.Вид.Использование = Истина;

   НаборЗаписей.Прочитать();

   Для Каждого Запись Из НаборЗаписей Цикл
     Запись.Вид = Справочники.ВидыКонтактнойИнформации.ЮрАдресКонтрагента;
   КонецЦикла;

   НаборЗаписей.Записать(Истина)


Ошибка при вызове метода контекста (Записать): Запись не верна! Значение поля не соответствует установленному отбору: Навигатор : Адрес : Юридический адрес (Регистр сведений: Контактная информация; Номер строки: 1; Поле: Вид)
   НаборЗаписей.Записать(Истина)
по причине:
Запись не верна! Значение поля не соответствует установленному отбору: Навигатор : Адрес : Юридический адрес (Регистр сведений: Контактная информация; Номер строки: 1; Поле: Вид)
1 garcevis
 
15.04.09
18:02
Вот эта штука ОпределениеСсылкиВидаНоменклатуры("000000001") получается не равна
Справочники.ВидыКонтактнойИнформации.ЮрАдресКонтрагента
Надо другой отбор ставить, не по этому измерению.
2 SurFace
 
15.04.09
18:15
да, сначало это условие выполняется - но потом это измерение изменяется и после этого должна произойти запись, но оное ругается. А другого то отбора и не придумать =(
3 Mort
 
15.04.09
18:18
Ну вы жжете. Читаете с одним видом, записываете с другим.

Делай два набора. Один с отобором по виду старому, другой по новому. Через загрузку-выгрузку ТЗ переливаешь содежимое из 1 во 2-й. В ТЗ можно будет проставить значение вида на всю колонку сразу кстати. 1 очищаешь и записываешь, 2-й просто записываешь.
4 Mort
 
15.04.09
18:20
тока надо понимать что существующие записи 2 вида будут очищены.
5 SurFace
 
15.04.09
18:32
спасиб, все додумал - упростил

   НаборЗаписей = РегистрыСведений.КонтактнаяИнформация.СоздатьНаборЗаписей();
   
   НаборЗаписей.Прочитать();

   Для Каждого Запись Из НаборЗаписей Цикл
       Если Запись.Вид = ОпределениеСсылкиВидаНоменклатуры("000000001") Тогда
           Запись.Вид = Справочники.ВидыКонтактнойИнформации.ЮрАдресКонтрагента;
       КонецЕсли;
   КонецЦикла;

   НаборЗаписей.Записать(Истина)
6 NcSteel
 
15.04.09
18:36
НаборЗаписей = РегистрыСведений.КонтактнаяИнформация.СоздатьНаборЗаписей();
   
   НаборЗаписей.Отбор.Вид.Значение = ОпределениеСсылкиВидаНоменклатуры("000000001");
   НаборЗаписей.Отбор.Вид.ВидСравнения = ВидСравнения.Равно;
   НаборЗаписей.Отбор.Вид.Использование = Истина;

   НаборЗаписей.Прочитать();

   Для Каждого Запись Из НаборЗаписей Цикл
     Запись.Вид = Справочники.ВидыКонтактнойИнформации.ЮрАдресКонтрагента;
   КонецЦикла;
НаборЗаписей.Отбор.Вид.Установить(Справочники.ВидыКонтактнойИнформации.ЮрАдресКонтрагента);
   НаборЗаписей.Записать(Истина)
7 SurFace
 
16.04.09
12:42
(6) Спс - интересное изоощерение, прокатит?
8 Mort
 
16.04.09
12:44
(6) С таким методом в базе останутся записи со старым видом.