Получить ссылку на добавляемую запись #457254


#0 by okosv
Приветствую всех. 1С 8.1, конфиг. Управление Торговлей Справочник Контрагентов дополнил полем-ссылка "Док". Также добавил новый вид документов. При добавлении документа, необходимо автоматом создать контрагента, при этом поле "Док" должно ссылатся на добавляемую запись Как я могу получить ссылку на добавляемую запись? Добавление контрагентов реализовано в коде события "ПередЗаписью"
#1 by okosv
:)))))))
#2 by Лефмихалыч
ПолучитьСсылкуНового/УстановитьСсылкуНового
#3 by okosv
Спасибо попробую
#4 by okosv
Чёт не получается Есть Документы "НовыеДокументы" Также поле ссылка в Справочнике Контрагенты который ссылатся на эту запись Код такой:
#5 by okosv
Чёрт ошибся чуть Документ называется "НовыеАбоненты" а поле-ссылка в справочнике контрагентов "НовыйАбонент"
#6 by Широкий
1. Используй Процедуру ПриЗаписи 2. Почему так: Справочники.Контрагенты.НайтиПоНаименованию("АБОНЕНТЫ").Ссылка; Справочники.Контрагенты.НайтиПоНаименованию("АБОНЕНТЫ") - это тебе и так уже ссылку вернет
#7 by Широкий
+6 Не понятно нафига ты все это в транзакцию пихнул
#8 by okosv
В значении поле-ссылки, которое указывает на основании какой записи из "НовыеАбоненты" был создан контр, стоит "<Объект не найден> (8672:b80c8214fd3925294124a61561e3f578)" а в транзакции потому, что в этом коде еще должно быть автоматического создание договора, договор тоже не могу сделать пишет "Не найден метод Создать"
#9 by Новиков
ты ссылку то получил, а установил ее новому документу то: Тебе же подсказывают: ...УстановитьСсылкуНового
#10 by okosv
Переделал на такой вариант: Работает, как я понял в данном случае строка Обращается именно к добавленной записи? Не будет ли проблем при одновременной работе с базой и может быть при одновременном добавлении нескольких пользователей?
#11 by Новиков
в первом предложении забыл вопрос поставить :) Еще раз: ты ссылку то получил, а установил ее новому документу то? Ты контрагенту присвоил ссылку, которую получил, но сам документ после записи имеет другую ссылку. А все почему? потому что полученную ссылку надо установить через .УстановитьСсылкуНового
#13 by Stepa86
+1 юзай ПриЗаписи , за НайтиПоНаименованию я б тебя табуреткой ударил...
#14 by Новиков
Сойдет, если объект уже записан. Если нет - тогда нужно ссылку сначала получить как ты получаешь через СсылкаНового, а затем УстановитьСсылкуНового. Ты код то свой внимательно прочти хотя бы: СсылкаНового = Документы.НовыеАбоненты.ПолучитьСсылку(Новый УникальныйИдентификатор); И где ты потом эту ссылку используешь? Или ты чего то не дописал, тогда надо было сказать это, либо сам не осознаешь что пишешь. Второе - хуже.
#15 by Широкий
ПриЗаписи ссылка уже есть, ПереЗаписью ссылки пока нет
#16 by Новиков
сори, я посмотрел что у него в ПередЗаписью ) дальше не обратил внимание что он это перенес в другой обработчик.
#17 by okosv
я новичок поэтому и не все понимаю, необходимо переделать конфигурацию на работе из-за этого и "тычу" а как посоветуете? "НайтиПоКоду"?
#18 by Stepa86
раз эта группа какая то особенная, то ссылка на нее должна хранится в системе (константа, настройка системы, регистр или еще как), потому что кто нить возьмет и переименует его в "Группа абонентов" например, и код поменяют - и кирдык твоем доработкам...
#19 by Stepa86
а чо будет с контрагентами, если документ провести/распровести???
#20 by Широкий
Не надо его грузить.. он же новичек.. вдруг еще сломается
#21 by Stepa86
не мешай, я повышаю ценность специалистов, как мы с тобой =)
#22 by okosv
понятно, пока по нанименованию буду делать когда все изменения завершу, сделаю так как посоветовали мм... и еще, мне нужно сделать так чтобы эта группа контрагентов всегда существовала и... нужно сделать так чтобы эту группу невозможно было удалить или изменить и еще, мне нужно было сделать так чтобы этих добавленных контрагентов обычным способом невозможно было удалить, сделал так в коде модуля списка контрагентов: Процедура СправочникСписокПередУстановкойПометкиУдаления(Элемент, Отказ) Наверное и такое же можно на удаление группы контров сделать, верно? P.S. Спасибо за ваши советы
#23 by Stepa86
+ хотя тут и так все "Прекрасно"...
#24 by okosv
а насчет этого не подумал, опыта нету же, еще ;-) ну что же буду учиться значит мне еще нужно запретить отмену проводки ии... еще как могу сделать так чтобы при удалении записи в "НовыеДокументы" удалялись контрагенты связанные с удаляемой записью
#25 by okosv
Насчет отмены и повторного проведения Как я понял можно через событие "ПередОтменойПроведения" в списке формы Я еще сделал так чтобы данный документ отражался в Общем журнале контрагентов получается и в том списке тоже надо отдельно А для данного вида документов один код можно ли сделать?
#26 by okosv
Ладно создам отдельную тему про удаление...
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С