Имя: Пароль:
1C
1С v8
Программное создание ПланаВидовХарактристик, need help.
0 _stay true_
 
28.08.13
10:03
Здравствуйте. Проблема такая: есть документ "РегистрацияПродукта", который двигает регистр сведений "ПродуктыКлиентов". В этом регистре есть измерение РегНомер типа "строка"(длина 10). Суть в следующем: это самое измерение нужно сделать типа "ПланВидовХарактеристикСсылка"(бред, но барин не я). Я придумал такой фееричный бред: завести новый ПВХ "РегНомера", и  при проведении документа регистрации программно создается новый элемент ПланаВидовХараткеристик(Наименование =РегНомер, т.к. он уникален для каждого продукта и не повторяется). Столкнулся со следующими проблемами, и прошу помощи в решении:

1. Если документ новый, то всё в порядке: для каждой номенлатуры из табличной части документа создается отдельный элемент(всё происходит в модуле объекта документа регистрации) и записывается. Код:

    Если РежимЗаписи = РежимЗаписиДокумента.Проведение и ЭтотОбъект.ЭтоНовый() Тогда

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


А вот как быть, если документ уже был в базе, этим документом уже был создан элемент ПВХ, и в нем(документе) что-либо меняют?  Как найти элемент, ранее уже созданный этим документом и перезаписать его не создавая новый?(в элементе ПВХ есть реквизит "документ регистрации").


2. В документе регистрации есть табличная часть: если в уже имеющемся документе добавляется ещё одна номенклатура(стока ТЧ), то как сделать так, чтобы по новой строке создавался новый желемент пвх, а созданный по уже имеющейся в тч номенклатуре перезаписывался?

Заранее всем огромное спасибо за помощь.
1 Asmody
 
28.08.13
10:08
во-первых, элемент ПВХ — это суть описание типа. каким боком оно в этой задаче — непонятно.
во-вторых, по существу вопроса: если документ создаёт какие-то объекты, то связь проще всего хранить либо в самом объекте, либо в отдельном РС
2 _stay true_
 
28.08.13
10:11
(1) Мне тоже не понятно, и это не моё решение. По поводу связи: как хранить её в самом объекте?
3 _stay true_
 
28.08.13
10:30
Так всё же: как хранить связи на создаваемые документом объекты в самом  документе как быть с изменением документа?
4 wise
 
28.08.13
10:35
(3)посмотри в ТИПОВЫХ регистр сведений "ЗначенияСвойствОбъектов"