Имя: Пароль:
1C
1С v8
УстановитьСсылкуНового()
0 DenSpb
 
06.02.12
16:43
Загружаю с сайта заявки в 1с самописную конфу. Есть уникальный идентификатор(Заявка.Значение.КодВ1С). Хочу чтобы он присваивался создаваемому документу ЗаявкаНаПодключение. Делаю:
НовыйGUID = Новый УникальныйИдентификатор(Заявка.Значение.КодВ1С);
НоваяСсылка = Документы.ЗаявкаНаПодключение.ПолучитьСсылку(НовыйGUID);
ЗаявкаОбъект = Документы.ЗаявкаНаПодключение.СоздатьДокумент();    
ЗаявкаОбъект.УстановитьСсылкуНового(НоваяСсылка);
В итоге для заявки на подключение все равно другой идентификатор.
В чем ошибка?
1 Maxus43
 
06.02.12
16:45
ЗаявкаОбъект.УстановитьСсылкуНового(НовыйGUID);
2 DenSpb
 
06.02.12
16:48
(1) у метода УстановитьСсылкуНового(Ссылка) параметр типа ссылка.
3 ale-sarin
 
06.02.12
16:48
(2) Не спорь.
4 Maxus43
 
06.02.12
16:49
Значит новая Ссылка уже объект нужный. да ппц, пофигуратор висит, а то в СП всё понятно до жути так то
5 DenSpb
 
06.02.12
16:51
(4) честно говоря не понял
6 Maxus43
 
06.02.12
16:52
Синтаксис:

ПолучитьСсылкуНового()
Возвращаемое значение:

Тип: ДокументСсылка.

Описание:

Позволяет для нового (созданного и еще не записанного) объекта получить ранее установленное методом УстановитьСсылкуНового значение ссылки.
7 DenSpb
 
06.02.12
16:53
(3) попробую сделать, но СП говорит, что у меня код правильный.
8 DenSpb
 
06.02.12
16:54
(6) а ПолучитьСсылкуНового() здесь зачем?
9 Maxus43
 
06.02.12
16:55
(6) а это промазал я.
после ЗаявкаОбъект.Записать() Ссылка не та?
10 H A D G E H O G s
 
06.02.12
16:55
11 DenSpb
 
06.02.12
16:57
(9) в моем коде не та, то, что ты предложил, попробую(надо время чтобы новые заявки с сайта згрузились)
12 Reset
 
06.02.12
16:58
ЗаявкаОбъект = Документы.ЗаявкаНаПодключение.СоздатьДокумент();    
ЗаявкаОбъект.УстановитьСсылкуНового(Документы.ЗаявкаНаПодключение.ПолучитьСсылку(Новый УникальныйИдентификатор(Заявка.Значение.КодВ1С)));
13 Maxus43
 
06.02.12
16:58
(11) в чистой базе обработкой сделай и проверь сразу, зачем ждать и косячить в рабочей базе? УИД строковый 36 символов? может что не так присваивается вобще
14 DenSpb
 
06.02.12
17:00
(13) да пока не критично, сейчас синхронизация идет по внешнему номеру, там что могу тестировать:)
15 Reset
 
06.02.12
17:00
(12) Прогнал, невнимательно смотрел
16 DenSpb
 
06.02.12
17:01
(15) (12) Действительно, у меня так и есть:)
17 Reset
 
06.02.12
17:01
Имхо, все верно, возможно проблема с "Значение.КодВ1С"
18 DenSpb
 
06.02.12
17:04
(17) там выдаются такого рода значения:
F3588739-10E6-1442-09E1-883F677C43CF,
8EB9CCE4-6A19-27A9-D4C8-C4D9508CFEB3,
1E80D1FC-F31D-8759-544D-76877BE33394
19 Reset
 
06.02.12
17:06
Выполнил у себя

НовыйGUID = Новый УникальныйИдентификатор("F3588739-10E6-1442-09E1-883F677C43CF");
НоваяСсылка = Документы.ЗаказПокупателя.ПолучитьСсылку(НовыйGUID);
ЗаявкаОбъект = Документы.ЗаказПокупателя.СоздатьДокумент();    
ЗаявкаОбъект.УстановитьСсылкуНового(НоваяСсылка);
Сообщить(ЗаявкаОбъект.ПолучитьСсылкуНового().UUID());

Результат:
f3588739-10e6-1442-09e1-883f677c43cf
20 DenSpb
 
06.02.12
17:08
(19) т.е. где между ЗаявкаОбъект.УстановитьСсылкуНового(НоваяСсылка); и
ЗаявкаОбъект.Записать();    есть какие - нибудь операции, которые меняют ссылкунового?
21 Reset
 
06.02.12
17:09
+(19) после этого еще

ЗаявкаОбъект.Дата=ТекущаяДата();
ЗаявкаОбъект.Записать();
Сообщить(ЗаявкаОбъект.Ссылка.UUID());

//f3588739-10e6-1442-09e1-883f677c43cf
22 Reset
 
06.02.12
17:10
(20) Нет, привел код полностью (скопировал у тебя, за исключением имени менеджера)
23 DenSpb
 
06.02.12
17:11
(22) я имею ввиду у меня что есть в коде, что меняет ссылкунового
24 Maxus43
 
06.02.12
17:11
(23) конфа типовая? в самописке можно чо угодно сделать, подписки например могут поменять
25 Reset
 
06.02.12
17:12
(23) Возможно
26 Maxus43
 
06.02.12
17:12
лучше обработкой проверь, там отладчиком пройди
27 H A D G E H O G s
 
06.02.12
17:14
Телепатирую - у автора - управляемые формы.
28 H A D G E H O G s
 
06.02.12
17:14
И он ненавязчиво goto (10)
29 DenSpb
 
06.02.12
17:14
(24) конфа не типовая, я писал. Ни в подписках, ни в процедуре передзаписью ничего нет, только реквизиты документа заполняются
30 DenSpb
 
06.02.12
17:15
(27) да действительно, у меня управляемые формы:)
31 H A D G E H O G s
 
06.02.12
17:16
(30) ветка (10), пост 4, 10, 18
32 DenSpb
 
06.02.12
17:19
(31) УстанавливатьСсылкуНового надо в процедуре ПередЗаписьюНаСервере, либо в подписке на событие ПередЗаписью объекта ЗаявкаНаПодключение? :)
33 Maxus43
 
06.02.12
17:21
тьфу ты, не по людски всё на УФ как обычно)
34 H A D G E H O G s
 
06.02.12
17:22
(32) Да
35 DenSpb
 
08.02.12
16:56
(34) сделал в процедуре ПередЗаписью(), все заработало! Спасибо большое  HADGEHOGs, а также другие участники обсуждения:)