Имя: Пароль:
1C
1С v8
Удаление записи в регистре сведений
0 Dmitriy Dmitriy1
 
25.11.13
10:02
Добрый день, конфа БП 2.0, не могу удалить запись из РегистраСведений, она уже коряво записана, нет значения в поле Объект, при редактировании или попытке удаления выдает ошибку:
Ошибка при вызове метода контекста (Записать): Ошибка при выполнении обработчика - 'ПередЗаписью': {ОбщийМодуль.ПроцедурыОбменаТорговляБухгалтерия.Модуль(450)}: Значение не является значением объектного типа (Предопределенный)

Помогите плз!
1 Wobland
 
25.11.13
10:06
ну запиши туда что-нибудь
2 Maxus43
 
25.11.13
10:06
программно удаляй с ОбменДанными.загрузка = Истина;
3 Рэйв
 
25.11.13
10:08
(0)<Объект не найден> поди в "Объект"?
4 1CVERYGOOD
 
25.11.13
10:09
НаборД = РегистрыСведений."ТвойРегистр".СоздатьНаборЗаписей();  
НаборД.Отбор."Измерение1".Установить(бла);
НаборД.Отбор."Измерение2".Установить(блабла);
...
НаборД.Записать();
5 Dmitriy Dmitriy1
 
25.11.13
10:38
(4) Пробовал никуя... (3) да объект тупо не задан... (2) это где замутить???
6 Рэйв
 
25.11.13
10:39
(5)Поставь в отбор пустую ссылку. Заодно почистишь, ибо имхается мне, что записи с пустым объектом это неправильно.
7 Dmitriy Dmitriy1
 
25.11.13
10:41
(6) куда в отбор???
8 Wobland
 
25.11.13
10:43
(6) в РИБ бывает
9 Dmitriy Dmitriy1
 
25.11.13
10:44
(4) "Измерение" не дает выбрать только процедуры и функции
10 Maxus43
 
25.11.13
10:48
(8) с битой бывает, с пустой - нет
(5) Набор = РегистрыСведений. СоздатьНаборЗаписей();
Набор.ОбменДанными.Загрузка = Истина;
Набор.Отбор.Измерение.Установить(ПустаяСсылка);
...
набор.записать();
11 Dmitriy Dmitriy1
 
25.11.13
10:51
(10) "ПустаяСсылка" что передавать?
12 Dmitriy Dmitriy1
 
25.11.13
10:52
+ поле ИЗМЕРЕНИЕ не доступно
13 Wobland
 
25.11.13
10:53
(12) а если выключить мисту и немного подумать?
14 Maxus43
 
25.11.13
10:54
(12) издеваешся чтоль? Измерение - замени на то, что у тебя пустое, это поле должно быть измерением в конфигураторе. Пустую ссылку и передавать, я ж не вижу тип какой там
15 Dmitriy Dmitriy1
 
25.11.13
10:58
(14) Спасибо...
16 zakidonoff
 
25.11.13
10:59
(0) У тебя не битая ссылка во владельце, а пустая ссылка.
Ты когда базу тестировал, он у тебя заменилась на пустую.
Оттого и обработка та не сработала - она убивает только записи с мёртвыми значениями.
(10) должно сработать.
17 Dmitriy Dmitriy1
 
25.11.13
11:01
"ПустаяСсылка" что передать не пойму сорри! Подскажите
18 Maxus43
 
25.11.13
11:02
(17) ТИП какой у измерения то?
З.ы. бэкап сначала сделай
19 Dmitriy Dmitriy1
 
25.11.13
11:03
СправочникСсылка.КонтактныеЛица, СправочникСсылка.ПодразделенияОрганизаций, СправочникСсылка.Контрагенты, СправочникСсылка.Пользователи, СправочникСсылка.Организации, СправочникСсылка.ФизическиеЛица
20 vista
 
25.11.13
11:03
(10)

Помогло? Вроде рабочий код.
21 Dmitriy Dmitriy1
 
25.11.13
11:04
Набор = РегистрыСведений.КонтактнаяИнформация.СоздатьНаборЗаписей();  
    Набор.Отбор.Получить(0).Установить(Справочники.ФизическиеЛица.ПустаяСсылка());
    Набор.Записать();
так?
22 Wobland
 
25.11.13
11:05
(21) нет
23 Dmitriy Dmitriy1
 
25.11.13
11:06
а как?
24 Wobland
 
25.11.13
11:07
как в (10)
25 Dmitriy Dmitriy1
 
25.11.13
11:08
Набор = РегистрыСведений.КонтактнаяИнформация.СоздатьНаборЗаписей();  
    Набор.ОбменДанными.Загрузка = Истина;
    Набор.Отбор.Получить(0).Установить(Справочники.ФизическиеЛица.ПустаяСсылка());
    Набор.Записать();
26 НЕА123
 
25.11.13
11:08
типа
выбрать различные измерение from рс где измерение IS NULL

получишь "ПустаяСсылка" + битые
27 Maxus43
 
25.11.13
11:08
Тип составной, хрен пойми что там, пустая ссылка или Неопределено. Надо все варианты прогнать, или сначала выяснить точное значение
28 Maxus43
 
25.11.13
11:09
Набор.Отбор.Объект.Установить(

откуда это непонятное получить придумал?
29 Dmitriy Dmitriy1
 
25.11.13
11:09
Получить(0) получает мой "тупой" объект
30 НЕА123
 
25.11.13
11:09
(26)
*
выбрать различные измерение from рс где измерение.ССЫЛКА IS NULL
31 Maxus43
 
25.11.13
11:12
(30) Неопределено и привет)
32 Dmitriy Dmitriy1
 
25.11.13
11:13
Набор = РегистрыСведений.КонтактнаяИнформация.СоздатьНаборЗаписей();  
    Набор.ОбменДанными.Загрузка = Истина;
    Набор.Отбор.Получить(0).Установить(Неопределено);
    Набор.Записать();

выполняю этот код выдает ту же ошибку
33 Maxus43
 
25.11.13
11:15
(32) в стопитсотый раз - какое ещё Получить?
После установки отбора добавь Набор.Прочитать();, посомтри отладчиком, есть ли вобще там что, если не записывается - то сначала присвой какойнить левый элемент туда, потом удалишь штатно
34 Dmitriy Dmitriy1
 
25.11.13
11:16
(33) Набор.отбор.(сюда не предлагает поле измерение)...
35 Maxus43
 
25.11.13
11:19
(34) А ты не смотри что предлагает, а говори ему что делать. Поле Объект
36 Wobland
 
25.11.13
11:20
(34) оно их не знает. а ты знаешь
37 Dmitriy Dmitriy1
 
25.11.13
11:22
(35)  Получилось, при вызове Набор.Прочитать(), значение пишет: Обращение в процедуре как в функции
38 Wobland
 
25.11.13
11:24
(37) а нечего присваивать что попало
39 Dmitriy Dmitriy1
 
25.11.13
11:26
Я помощи прошу а не критики...
40 hhhh
 
25.11.13
11:31
(39) у вас нет здесь Набор.Прочитать()
41 Wobland
 
25.11.13
11:32
(39) оказываю помощь в форме критики. первые 20 постов бесплатно ;)
42 Dmitriy Dmitriy1
 
25.11.13
11:33
(41) =)) (40) Набор.Прочитать делаю ничего не выходит...
Ту же ошибку дает.
43 Dmitriy Dmitriy1
 
25.11.13
11:34
Набор = РегистрыСведений.КонтактнаяИнформация.СоздатьНаборЗаписей();  
    Набор.ОбменДанными.Загрузка = Истина;
    Набор.Отбор.Объект.Установить(Неопределено);
    Набор.Прочитать();
44 Azverin
 
25.11.13
11:34
...        
НаборЗаписей.Прочитать();
НаборЗаписей.Очистить();
НаборЗаписей.Записать();
45 hhhh
 
25.11.13
11:35
(42) во-первых не нужно его тебе читать. во-вторых не надо читать как функцию.
46 Dmitriy Dmitriy1
 
25.11.13
11:36
(44) не сработало
47 Dmitriy Dmitriy1
 
25.11.13
11:36
(45) а как иначе?
48 Dmitriy Dmitriy1
 
25.11.13
11:38
Набор = РегистрыСведений.КонтактнаяИнформация.СоздатьНаборЗаписей();  
    Набор.ОбменДанными.Загрузка = Истина;
    Набор.Отбор.Объект.Установить(Неопределено);
    Набор.Очистить();
    Набор.Записать();
49 Dmitriy Dmitriy1
 
25.11.13
11:39
Не пашет....
50 Dmitriy Dmitriy1
 
25.11.13
11:41
Подскажите ПЛЗ!!!
51 Maxus43
 
25.11.13
11:42
чот я не понял почему не работает Набор.Прочитать();
52 Волшебник
 
модератор
25.11.13
11:43
РегистрыСведений.КонтактнаяИнформация.СоздатьНаборЗаписей().Записать();
53 Dmitriy Dmitriy1
 
25.11.13
11:43
Он выполняется, но в обработчике не возможно понять что он прочитал...
54 Dmitriy Dmitriy1
 
25.11.13
11:44
(52) та же ошибка:Ошибка при вызове метода контекста (Записать): Ошибка при выполнении обработчика - 'ПередЗаписью': {ОбщийМодуль.ПроцедурыОбменаТорговляБухгалтерия.Модуль(450)}: Значение не является значением объектного типа (Предопределенный)
55 Maxus43
 
25.11.13
11:44
(53) ну а чего ж ты про ошибку нам говоришь? отладчик включай, точку останова ставь и смотри в в Набор, после Прочитать()
56 Maxus43
 
25.11.13
11:45
(54) ты щас любой код будешь выполнять который напишут? это код самоубийц был)
57 Dmitriy Dmitriy1
 
25.11.13
11:47
РегистрыСведений.КонтактнаяИнформация.СоздатьНаборЗаписей().Записать();

Этот код мог все потереть?)
58 Maxus43
 
25.11.13
11:47
Набор = РегистрыСведений.КонтактнаяИнформация.СоздатьНаборЗаписей();  
    Набор.ОбменДанными.Загрузка = Истина;
    Набор.Отбор.Объект.Установить(Неопределено);
Для каждого стрзапись Из Набор Цикл
СтрЗапись.Объект = СсылкаНаЛюбоеФизЛицо;
КонецЦикла;
набор.Записать(Истина);
59 Maxus43
 
25.11.13
11:47
(57) да, именно это он и делает
60 Maxus43
 
25.11.13
11:47
Набор.Отбор.Объект.Установить(Неопределено);
Набор.Прочитать();
Для каждого стрзапись Из Набор Цикл
61 Dmitriy Dmitriy1
 
25.11.13
11:49
щас попробую)
62 Wobland
 
25.11.13
11:50
а что, пустая ссылка равно неопределене?
63 Волшебник
 
модератор
25.11.13
11:50
(58) Прочитать() забыл
64 Волшебник
 
модератор
25.11.13
11:51
(57) Я надеюсь, ты тестируешь на тестовой базе?
65 Maxus43
 
25.11.13
11:53
(62) тип составной, стелепатируй какое там значение, от автора этого не добится)
66 Dmitriy Dmitriy1
 
25.11.13
11:54
(63) да на тестовой
(60) такая же ошибка...
67 Maxus43
 
25.11.13
11:58
короче, суть проблемы:
Запись хочет записаться, но есть подписка ПередЗаписью, где регистрируется в обмены старый набор тоже (что и вызывает ошибку). Как вариант - быстренько снять с этих подписок на событие регистр, удалить запись, поставить на подписки.
Или изменить код в подписках, чтобы отрабатывало только при заполненном измерении Объект. Надо выбирать вариант, для этого надо бы узнать какое именно поле пустое, тип какой у него
68 Dmitriy Dmitriy1
 
25.11.13
12:02
69 Wobland
 
25.11.13
12:04
да и не видно
70 Maxus43
 
25.11.13
12:04
мне ясно, неопределено там
71 Wobland
 
25.11.13
12:05
да, действительно, проглядывают уши неопределены ;)
72 Dmitriy Dmitriy1
 
25.11.13
12:06
Максус и что тут сделаешь??? Чтобы снять с подписок нужно снимать с поддержики:
73 Dmitriy Dmitriy1
 
25.11.13
12:06
?
74 zakidonoff
 
25.11.13
12:07
(65) Телепатирую. Там неопределено стоит.
Фильтр при открытии неопределено выставляет:
http://pixs.ru/showimage/1jpg_5691542_9819589.jpg
75 Dmitriy Dmitriy1
 
25.11.13
12:10
Так что сделать теперь?))))
76 Maxus43
 
25.11.13
12:11
на поддержке всё? надо хотя бы один общий модуль снять с поддержки бы...
Надо подумать как обойти можно... в коде подписок есть наверняка случаи когда они не выполняются, надо посомтреть эти условия и попробовать их выполнить искуственно. Нет такой конфы у меня
77 zakidonoff
 
25.11.13
12:13
(75) Это должно сработать.

Набор = РегистрыСведений.КонтактнаяИнформация.СоздатьНаборЗаписей();  
    Набор.ОбменДанными.Загрузка = Истина;
    Набор.Отбор.Объект.Установить(Неопределено);
    Набор.Прочитать();
Для каждого стрзапись Из Набор Цикл
СтрЗапись.Объект = Справочники.Контрагенты.ПолучитьСсылку(Новый УникальныйИдентификатор());
КонецЦикла;
набор.Записать();
78 Dmitriy Dmitriy1
 
25.11.13
12:14
(77) та же шляпа
79 Maxus43
 
25.11.13
12:15
(77) там хрень в том что регистрация в обменах работает и для старого объекта, т.е. для набора с незаполненным объектом
80 Dmitriy Dmitriy1
 
25.11.13
12:16
Может ее как то можно отключить чтобы с поддержики не снимать...
81 zakidonoff
 
25.11.13
12:17
(79) Надо как-нить у себя такую же хрень воссоздать -)
82 Dmitriy Dmitriy1
 
25.11.13
12:21
Так какие варианты есть?
83 Maxus43
 
25.11.13
12:21
(80) надо смотреть условия в подписке... ещё как вариант на прямую в скуле удалить (клиент-сервер же?)
84 Dmitriy Dmitriy1
 
25.11.13
12:23
"на прямую в скуле удалить" что это значит?)))
85 Dmitriy Dmitriy1
 
25.11.13
12:23
да, клиент сервер)
86 Maxus43
 
25.11.13
12:24
(84) пичаль
(80) код смотри, ищи подписку на событие, которая вызывает ошибку в (68)
87 Dmitriy Dmitriy1
 
25.11.13
12:27
Процедура ДополнитьМассивУзловДляВыгрузкиСправочника(Элемент, МассивУзловДляПередачи,
    ТипЭлемента = Неопределено, ВыгружатьДляВсехУзлов = Ложь, ВозвращатьМассивВсехУзлов = Истина,
    СоответствиеУзловИОрганизаций = Неопределено)
    
    Перем ЭтоГруппа, СсылкаНаЭлемент;
    
    // пердопределенные элементы выгружаем и загружаем послностью
    Если Элемент.Предопределенный Тогда //ВОТ ТУТ СПОТЫКАЕТСЯ
        
        ОбеспечитьВыгрузкуОбъектаДляВсехУзлов(ВыгружатьДляВсехУзлов, ВозвращатьМассивВсехУзлов, МассивУзловДляПередачи);
        Возврат;
        
    КонецЕсли;
88 m-serg74
 
25.11.13
12:27
(82) ты бы все таки уже к 90 му посту то косолью запросов наверняка определил, что там записано в объект? а то все угадайки какие то
89 Maxus43
 
25.11.13
12:28
(88) неопределено там, потому и спотыкается, у Неопределено нет через точку нифига
90 m-serg74
 
25.11.13
12:29
(89) покажи где ТС это указал, надпись в форме списка не факт что там именно Неопределено
91 Maxus43
 
25.11.13
12:30
(87) в предыдущих процедурах ищи по каким условиям не выполняется регистрация... подписку саму найди и смотри что там изначально проверяется. Возможно будет достаточно изменить параметр сеанса, как в типовых обычно делается
(90) на скринах "буква Т" у объекта, выбор типа. У составного типа это значит Неопределено
92 m-serg74
 
25.11.13
12:31
(91) так формы дофига чего могут понарисовать, что наверняка то в данных не глянуть?
93 Maxus43
 
25.11.13
12:33
(92) почитай чего автор пишет, отладчик для него это магия, как заставить то?)
Ну продолжайте без меня, я на обед
94 Dmitriy Dmitriy1
 
25.11.13
12:33
Там неопределено, в консоле выдало!
95 Dmitriy Dmitriy1
 
25.11.13
12:34
Не, максус стой! =))0
96 Wobland
 
25.11.13
12:34
(92) мы верим, что там неопределено, и автор ничего с этим не может поделать
97 zakidonoff
 
25.11.13
12:34
(92) Я посмотрел в бухии что выставляется при попытке открыть регистр через операции - неопределено ставится.
Фильтр по неопределено выдаёт два объекта.
__
У меня получилось создать битые ссылки в регистре. Пытаюсь теперь через тестирование базы подменить их на неопределено.
Жуть. Этож как постараться-то надо было? XD
98 Dmitriy Dmitriy1
 
25.11.13
12:35
Закидонов как это исправить вообще7)
99 zakidonoff
 
25.11.13
12:36
(98) Чтоб понять как это исправить мне нужно сначала так же испортить.
Вот испорчу - тогда и скажу как исправить -)
100 Wobland
 
25.11.13
12:36
а СТО
101 Dmitriy Dmitriy1
 
25.11.13
12:36
Уже в процессе порчи??7)
102 m-serg74
 
25.11.13
12:37
(98) ВыгрузкаЗагрузкаХМЛ выгружаешь записи с отбором по тем параметрам какие можешь задать в ХМЛ ставишь правильную какую нить ссылку и обратно загрузить
103 Dmitriy Dmitriy1
 
25.11.13
12:37
(102) подробней можно?
104 m-serg74
 
25.11.13
12:37
куда уж подробнее? обработка для переносов между одинаковыми конфами знаешь?
105 m-serg74
 
25.11.13
12:39
(103) хотя нет, наверное (102) сторно, он тебе по другим измерениям после правки ХМЛ сделает еще одну запись
106 m-serg74
 
25.11.13
12:39
есть тим вьюер, пока обед
107 Dmitriy Dmitriy1
 
25.11.13
12:42
НЕ ТИм вивера нету... Мля пипец....
108 m-serg74
 
25.11.13
12:42
скачай)))
109 Dmitriy Dmitriy1
 
25.11.13
12:43
ВыгрузкаЗагрузкаХМЛ где взять эту обработку?
110 zakidonoff
 
25.11.13
12:43
(101) Не могу я так испортить. Отладчик вылетел с ошибкой у меня(!)
Ппц. -)
111 m-serg74
 
25.11.13
12:43
(109) - (105) прочитай, думаю я ошибся
112 zakidonoff
 
25.11.13
12:44
(109) Она тебе вряд ли поможет.
Вылетет та же ошибка при записи (удалении старого) регистра.
113 Dmitriy Dmitriy1
 
25.11.13
12:44
(110) во-во))) как так умудрились я хз)
114 Dmitriy Dmitriy1
 
25.11.13
12:45
Если снять с поддержики и закоментить то получится?)
115 m-serg74
 
25.11.13
12:45
(114) ты прочитать эту запись не можешь причем тут пока Запись?
116 Dmitriy Dmitriy1
 
25.11.13
12:47
Я прочитал, все ок, записать не получается
117 zakidonoff
 
25.11.13
12:47
(113) Как ты умудрился - вот в чём вопрос!
Даже для того чтобы сделать битую ссылку, мне пришлось создавать спец. обработку.
При интерактивном удалении справочников регистры чистятся... Ну это ладно - не твоя вина.
А вот как ты так тестирование и исправление делал, что у тебя битые ссылки на неопределено подменились - это я хз...
118 m-serg74
 
25.11.13
12:47
(116) Я прочитал, все ок, записать не получается

на куа? Удалить() и все
119 m-serg74
 
25.11.13
12:48
(117) при обновлении тип мог полететь, вот и неопределено
120 Dmitriy Dmitriy1
 
25.11.13
12:49
Удалить тоже не выходит, та же ошибка...
121 m-serg74
 
25.11.13
12:49
(116) и еще:
/http://s020.radikal.ru/i720/1311/dd/9a5a6e609348.jpg/

здесь вроде у тебя форма записи этой открывается, выбери любой доступный тип, потом значение и жми записать
122 Dmitriy Dmitriy1
 
25.11.13
12:51
Так же ошибку кидает
123 zakidonoff
 
25.11.13
12:51
Пробуй


    ПараметрыСеанса.НаличиеОбменаТорговляБухгалтерия = Ложь;
    Набор = РегистрыСведений.КонтактнаяИнформация.СоздатьНаборЗаписей();  
    Набор.ОбменДанными.Загрузка = Истина;
    Набор.Отбор.Объект.Установить(Неопределено);
    Набор.Прочитать();
    Для каждого стрзапись Из Набор Цикл
        Набор.Объект = Справочники.Контрагенты.ПолучитьСсылку(Новый УникальныйИдентификатор());
    КонецЦикла;
    набор.Записать();
124 m-serg74
 
25.11.13
12:52
(123) /Набор.Объект = Справочники.Контрагенты.ПолучитьСсылку(Новый УникальныйИдентификатор());/

а это зачем? пусть какого нить существующего контра тогда уж записывает
125 zakidonoff
 
25.11.13
12:53
(124) Зачем она ему - пусть просто сотрёт да и всё.
126 m-serg74
 
25.11.13
12:54
(125) сотрет что?
127 m-serg74
 
25.11.13
12:56
ИМХО после (123) будет Объект не найден
128 Dmitriy Dmitriy1
 
25.11.13
12:56
{Форма.Форма.Форма(11)}: Ошибка при вызове метода контекста (Записать)
    набор.Записать();
по причине:
Запись не верна! Значение поля не соответствует установленному отбору: КонтактнаяИнформация: <Объект не найден> (49:9ebb8448269dc66a4ae669faa821679e), Телефон, сот (Регистр сведений: Контактная информация; Номер строки: 1; Поле: Объект)
129 m-serg74
 
25.11.13
12:57
(128) запиши в набор существующего любого контра, потом смени Отбор с неопределено на него, а только потом пробуй записать
130 Dmitriy Dmitriy1
 
25.11.13
13:01
стрзапись.Объект = Справочники.ФизическиеЛица.НайтиПоКоду( "Р00000042");

как потом по этому же коду сделать отбор?
131 m-serg74
 
25.11.13
13:01
(130) Набор.Отбор.Объект.Установить(Справочники.ФизическиеЛица.НайтиПоКоду( "Р00000042"));
132 m-serg74
 
25.11.13
13:02
(130) но боюсь это все лажа и оно не удалит старые записи а запишет новый набор по другому измерению
133 m-serg74
 
25.11.13
13:03
(130) а так не пробовал:
    ПараметрыСеанса.НаличиеОбменаТорговляБухгалтерия = Ложь;
    Набор = РегистрыСведений.КонтактнаяИнформация.СоздатьНаборЗаписей();  
    Набор.ОбменДанными.Загрузка = Истина;
    Набор.Отбор.Объект.Установить(Неопределено);
    набор.Записать();
134 hhhh
 
25.11.13
13:05
(28) ну и напишите отбор по этому объекту. Зачем вы по НЕопределено тогда делали отбор. Если у вас объект определен?
135 zakidonoff
 
25.11.13
13:06
(128) Да, я ступил -)
Но радует, что обмен данными таки обошли. Вот это будет рабочее.

ПараметрыСеанса.НаличиеОбменаТорговляБухгалтерия = Ложь;
Набор = РегистрыСведений.КонтактнаяИнформация.СоздатьНаборЗаписей();  
Набор.ОбменДанными.Загрузка = Истина;
Набор.Отбор.Объект.Установить(Неопределено);
Набор.Прочитать();
Для каждого стрзапись Из Набор Цикл
   СтрЗапись.Объект = Справочники.ФизическиеЛица.НайтиПоКоду( "Р00000042");
КонецЦикла;
набор.Записать();
136 m-serg74
 
25.11.13
13:06
(135) не прокати
137 m-serg74
 
25.11.13
13:06
(134) где он определен?
138 Maxus43
 
25.11.13
13:07
Спокойствие!

У меня в подписках есть такая хрень, у автора тоже есть наверняка

    Если Отказ
        ИЛИ НЕ ПараметрыСеанса.НаличиеОбменаУТУПП Тогда
        
        Возврат;
        
    КонецЕсли;


Надо найти какой параметр сеанса отвечает за это и перед выполнением кода (133)
делать
параметрыСеанса.НужныйПараметр = Ложь;
//запись грёбаного регистра - сиречь удаление записей
параметрыСеанса.НужныйПараметр = Истина;
139 Dmitriy Dmitriy1
 
25.11.13
13:07
(135) это сработало, БОЛЬШОЕ СПАСИБО ЗА ПОМОЩЬ!!!
140 Maxus43
 
25.11.13
13:09
пля, всё решили, я не прочитал  даже))
141 Dmitriy Dmitriy1
 
25.11.13
13:09
ПараметрыСеанса.НаличиеОбменаТорговляБухгалтерия = Ложь;
эта строчка все решила)))
142 Wobland
 
25.11.13
13:10
какой долгий путь к (1)
143 Dmitriy Dmitriy1
 
25.11.13
13:10
Спасибо еще раз большое, я на ОБЕД! =)))
144 zakidonoff
 
25.11.13
13:13
(142) Он не мог - вылетала ошибка.
(139) Странно. У меня не работает... Ну да ладно xD
145 m-serg74
 
25.11.13
13:42
(144) счас попробовал записать с контра на Неопределено, появилась копия набора записей только с Объектом Неопределено,
потом сделал:

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


созданный набор с косячным Объектом легко и непринужденно потерся...
146 zakidonoff
 
25.11.13
13:49
(145) Видимо, у ТС были ещё какие-то скрытые дубли реестра в SQL, которые вызывали процедуру передзаписью при попытке записать набор, но на которые ОбменДанными.Загрузка не распространялось.
Спасла только установка параметров сеанса...
147 m-serg74
 
25.11.13
13:51
ХЗ что его там спасло:-) и что он там делал...
148 m-serg74
 
25.11.13
13:51
но на 150 постов что то долго...
149 Maxus43
 
25.11.13
13:53
(147) мешал код (138) ему, загрузка = Истина в этом случае не помогает, ибо регистрировать изменения нужно и при загрузке данных с обмена
150 m-serg74
 
25.11.13
14:04
(149) без смены Отбора не даст записать набор, думаю, а после смены Отбора будет копия набора с другим измерением Объект, что то ТС не договаривает, пишет что (135) сработало, хотя у самого zakidonoff который и написал (135) не прокатило и я пробовал - не прокатывает
151 zakidonoff
 
25.11.13
14:06
(149) Не отрабатывает подписка при параметре загрузки.
m-serg74 же воссоздал - у него без параметров всё удалилось
(150) Есть подозрение, что когда отбор = неопределено, он пропускает запись, так как не считает смену с неопределено изменениями.
152 Dmitriy Dmitriy1
 
25.11.13
14:07
ПараметрыСеанса.НаличиеОбменаТорговляБухгалтерия = Ложь;
Набор = РегистрыСведений.КонтактнаяИнформация.СоздатьНаборЗаписей();  
Набор.ОбменДанными.Загрузка = Истина;
Набор.Отбор.Объект.Установить(Неопределено);
Набор.Прочитать();
Для каждого стрзапись Из Набор Цикл
   СтрЗапись.Объект = Справочники.ФизическиеЛица.НайтиПоКоду( "Р00000042");
КонецЦикла;
Набор.Отбор.Объект.Установить(Справочники.ФизическиеЛица.НайтиПоКоду( "Р00000042"););
Набор.Прочитать();
набор.Записать();

Вот так заработало)))
153 m-serg74
 
25.11.13
14:08
(152)
Набор.Отбор.Объект.Установить(Справочники.ФизическиеЛица.НайтиПоКоду( "Р00000042"););
Набор.Прочитать();
набор.Записать();


чего???
154 m-serg74
 
25.11.13
14:09
ты этим просто очистил набор
155 Dmitriy Dmitriy1
 
25.11.13
14:09
Еще раз устанавливаю отбор по тому физлицу на которое переименовал запись регистра
156 Dmitriy Dmitriy1
 
25.11.13
14:09
набор.Удалить(Истина);
157 m-serg74
 
25.11.13
14:09
(155) /на которое переименовал запись регистра/
только не записал еще ничего, да?
158 m-serg74
 
25.11.13
14:10
(156) /набор.Удалить(Истина);/

че это за ???
159 Dmitriy Dmitriy1
 
25.11.13
14:10
ща, может что то напутал))) Обновляется конфа, щас обновится скажу)
160 Dmitriy Dmitriy1
 
25.11.13
14:10
(158) ну сработало же)
161 Dmitriy Dmitriy1
 
25.11.13
14:10
Это 1с)
162 m-serg74
 
25.11.13
14:11
(161) не верю (С)
163 Dmitriy Dmitriy1
 
25.11.13
14:11
Ну реально все пусто)))
164 m-serg74
 
25.11.13
14:13
(160)
РегистрСведенийНаборЗаписей.<Имя регистра сведений>.Удалить (InformationRegisterRecordSet.<Имя регистра сведений>.Delete)
РегистрСведенийНаборЗаписей.<Имя регистра сведений> (InformationRegisterRecordSet.<Имя регистра сведений>)
Удалить (Delete)
Синтаксис:

Удалить(<Запись>)
Параметры:

<Запись> (обязательный)

Тип: Число; РегистрСведенийЗапись.<Имя регистра сведений>.
Индекс удаляемой записи либо сама запись.
Описание:

Удаляет запись из набора записей регистра сведений.

Доступность:

Сервер, толстый клиент, внешнее соединение.
Пример:

НаборКурсов.Удалить(0);
165 zakidonoff
 
25.11.13
14:15
(164) Кароч, допилил он мой код.
Тогда всё понятно -)
166 m-serg74
 
25.11.13
14:16
(165) ты смотрел что он там написал?
167 m-serg74
 
25.11.13
14:18
(165) устанавливает отбор по Неопределено, читает набор, заполняет другим Объектом, потом устанавливает Отбор по этому другому Объекту, снова читает а таких записей может есть до него были может нету тогда набор будет пустой, и в конце что то записывает...
168 Maxus43
 
25.11.13
14:19
(167) ну рандомно человек код вставляет, авось прокатит :)
169 m-serg74
 
25.11.13
14:20
(168) так (156) должно материться
170 zakidonoff
 
25.11.13
14:20
(167) скорее всего у него взлетело так:
ПараметрыСеанса.НаличиеОбменаТорговляБухгалтерия = Ложь;
Набор = РегистрыСведений.КонтактнаяИнформация.СоздатьНаборЗаписей();  
Набор.Отбор.Объект.Установить(Неопределено);
Набор.Прочитать();
Для каждого стрзапись Из Набор Цикл
   РегистрСведенийНаборЗаписей.КонтактнаяИнформация.Удалить(стрзапись);
КонецЦикла;
171 Maxus43
 
25.11.13
14:22
ПараметрыСеанса.НаличиеОбменаТорговляБухгалтерия = Ложь;
Набор = РегистрыСведений.КонтактнаяИнформация.СоздатьНаборЗаписей();  
Набор.Отбор.Объект.Установить(Неопределено);
Набор.Записать();
араметрыСеанса.НаличиеОбменаТорговляБухгалтерия = Истина;

Этого достаточно для удаления
172 m-serg74
 
25.11.13
14:22
(170) тоже самое
Набор.Отбор.Объект.Установить(Неопределено);
Набор.Записать();

тоже самое
Набор.Отбор.Объект.Установить(Неопределено);
Набор.Очистить();
Набор.Записать();

тоже самое
Набор.Отбор.Объект.Установить(Неопределено);
Набор.Прочитать();
Набор.Очистить();
Набор.Записать();
173 m-serg74
 
25.11.13
14:24
(171) я ему в (133) это писал - типа не подошло ему...
174 Dmitriy Dmitriy1
 
25.11.13
14:27
Ребята, спасибо большое, главное что все вышло)))
175 zakidonoff
 
25.11.13
14:29
(174) Да им уже пофиг, что у тебя получилось.
Тут, видишь ли, мистикой попахивает. xD
176 Maxus43
 
25.11.13
14:31
я б сказал пованивает копрокодом :)
177 Dmitriy Dmitriy1
 
25.11.13
14:33
=)))