Вход | Регистрация
 

Программное заполнение значений свойств номенклатуры в ут 10.3

Программное заполнение значений свойств номенклатуры в ут 10.3
Я
   falselight
 
26.06.19 - 07:04
Делаю перенос номенклатуры из УТ 10.3.
Из источника нужно перенести данные ТипТС, МодельТС, ЦветТС.
Решил что будет правильно это занести в значения свойств объектов что есть у справочника номенклатура.
Подскажите пожалуйста, как правильно это сделать программно? Можно пример кода, спасибо!
 
 
   Галахад
 
1 - 26.06.19 - 07:20
Это же обычный регистр сведений. Набери в гугле (янедксе) - как записать в регистр сведений.
   ДенисЧ
 
2 - 26.06.19 - 07:31
Сначала в ПВХ Свойства объектов создаёшь нужные свойства, потом в РС ЗначенияСвойствОбъектов пишешь записи.
   falselight
 
3 - 26.06.19 - 07:59
(2) Ищу примеры кода
   falselight
 
4 - 26.06.19 - 07:59
(3+) Что бы создать программно.
   falselight
 
5 - 26.06.19 - 08:03
(2) Подскажите пожалуйста по коду, а то как то не соображу что бы все правильно создать.
   Chameleon1980
 
6 - 26.06.19 - 08:07
(5) ты скажи что уже умеешь, а то создается впечатление....

писал в РС?

А так тебе все сказали:

пиши в РС ЗначенияСвойствОбъектов
   Chameleon1980
 
7 - 26.06.19 - 08:09
МенеджерЗаписи=РегистрыСведений.ЗначенияСвойствОбъектов.СоздатьМенеджерЗаписи();

МенеджерЗаписи.Объект=ТвояНоменклатура;
МенеджерЗаписи.Свойство=ТвоеСвойство;
МенеджерЗаписи.Значение=ТвоеЗначениеСвойства;

Попытка
   МенеджерЗаписи.Записать();
Исключение
   Сообщить(ОписанияОшибки());
КонецПопытки;
   falselight
 
8 - 26.06.19 - 08:17
(6) Это понятно. Но там
Свойство - это ПланВидовХарактеристикСсылка.СвойстваОбъектов
Значение - это Характеристика.СвойстваОбъектов

У меня все это идет как текст, я хочу создать программно все.
   falselight
 
9 - 26.06.19 - 08:24
(7) Как правильно создать вот эти значения?

МенеджерЗаписи.Свойство=ТвоеСвойство;
МенеджерЗаписи.Значение=ТвоеЗначениеСвойства;
   Галахад
 
10 - 26.06.19 - 08:28
Беда...
 
 Рекламное место пустует
   falselight
 
11 - 26.06.19 - 08:34
(10) Да не беда, просто не владею этой информацией, смотрю примеры кода.
Пытаюсь понять как сделать правильно и без ошибок.
   Галахад
 
12 - 26.06.19 - 08:35
(11) Сделай руками одну штуку. Поймешь.
   falselight
 
13 - 26.06.19 - 08:39
(12) Yt gjybvftncz ctujlyz/
   Сияющий в темноте
 
14 - 26.06.19 - 08:39
Что такое свойство-это элемент из плана видов характеристик СвойстваОбьектов. нужно его там найти по имени или еще как-то,может быть,даже создать,и получается ссылка,которую пихают в измерение Свойство регистра сведений.
в значение пихают наше значение,а Обьект это ссылка на тот несчастный элемент или документ,для которого мы задаем свойство.
еще есть справочник ЗначенияСвойствОбьектов,на тот случай,когда у нас свойства из определенного набора заранее заданных значений,тогда в значение пишется ссылка на элемент этого справочника.

в регистр проще всего писать через менеджер записи,т.к.регистр независимый и отборов как и наборов записей нам не нужно.
только,желательно,перед записью выставить измерения и сделать Прочитать,чтобы корректно "покрыть" предыдущее значение и не ставить Истина в параметр записи.
   falselight
 
15 - 26.06.19 - 08:40
(12) Не понимается сегодня.
   falselight
 
16 - 26.06.19 - 08:40
Хотелось бы пример кода, и все.
   falselight
 
17 - 26.06.19 - 08:44
// ТИП ТС                 // 19. [18]

                ТипТС                        = ПланыВидовХарактеристик.СвойстваОбъектов.НайтипоНаименованию("ТипТС");
                НаборЗаписейЗначенияСвойств = РегистрыСведений.ЗначенияСвойствОбъектов.СоздатьНаборЗаписей();
                НовЗапись            = НаборЗаписейЗначенияСвойств.Добавить();
                НовЗапись.Объект    = ЭлементНоменклатуры.Ссылка;
                НовЗапись.Свойство    = ТипТС;
                НовЗапись.Значение  = НовЭл.ссылка;
                НаборЗаписейЗначенияСвойств.Записать();
                // --------------------------------------------------------------------->

///////



ТипТС я нахожу поиском, создал его в режиме предприятия, а если его нужно создать программно как это будет?

НовЗапись.Значение - сюда идет текст, как мне создать этот элемент программно, учитывая что его тип Характеристика.СвойстваОбъектов
   falselight
 
18 - 26.06.19 - 09:10
// ТИП ТС                 // 19. [18]

                ТипТС                        = ПланыВидовХарактеристик.СвойстваОбъектов.НайтиПоНаименованию("ТипТС");
                Если ТипТС = ПланыВидовХарактеристик.СвойстваОбъектов.ПустаяСсылка() Тогда
                    ТипТС = ПланыВидовХарактеристик.СвойстваОбъектов.СоздатьЭлемент();
                    ТипТС.УстановитьНовыйКод();
                    ТипТС.Наименование       = "ТипТС";
                    ТипТС.НазначениеСвойства = ЭлементНоменклатуры.Ссылка;
                    ТипТС.ТипЗначения        = Новый ОписаниеТипов("Строка"); 
                    ТипТС.Записать();                
                КонецЕсли;
                //

                НаборЗаписейЗначенияСвойств = РегистрыСведений.ЗначенияСвойствОбъектов.СоздатьНаборЗаписей();
                НовЗапись                    = НаборЗаписейЗначенияСвойств.Добавить();
                НовЗапись.Объект            = ЭлементНоменклатуры.Ссылка;
                НовЗапись.Свойство            = ТипТС;
                НовЗапись.Значение          = МассивКолонок[18];
                НаборЗаписейЗначенияСвойств.Записать();
                // --------------------------------------------------------------------->


////////////////


Вот вроде как я нашел, или создал ТипТС. Есть ЭлементНоменклатуры.Ссылка.

Подскажите сейчас пожалуйста, имея строковое значение МассивКолонок[18]
Как мне создать НовЗапись.Значение

                НовЗапись.Значение          = МассивКолонок[18];


Имеющее тип Характеристика.СвойстваОбъектов ?
   falselight
 
19 - 26.06.19 - 09:11
(18+) Или это и так сработает?
   falselight
 
20 - 26.06.19 - 09:15
СРАБОТАЕТ (18) ???
   Кодер
 
21 - 26.06.19 - 09:18
Иди в отладчик, ёлки-палки! После каждой строки сравнивай, изменилась ли переменная, в которую ты присвоил значение.
   Сибирский
 
22 - 26.06.19 - 09:23
(0) Извини за оффтоп - ты из Новосибирска или из Томска?
   ДенисЧ
 
23 - 26.06.19 - 09:27
(19) Вот это точно сработает. Проверено
https://is.gd/woeLnS
   falselight
 
24 - 26.06.19 - 10:29
(22) А ты от куда?
   falselight
 
25 - 26.06.19 - 10:46
Не срабатывает вот эта строка

                    МодельТС.НазначениеСвойства = ЭлементНоменклатуры.Ссылка;

Туда нужно не ссылку на контрагента, а что то другое, подскажите что
   Сибирский
 
26 - 26.06.19 - 11:04
(24) Я из Томска.
   falselight
 
27 - 26.06.19 - 11:12
(26) А я из Искитима.
   Сибирский
 
28 - 26.06.19 - 15:28
(27) Андрей?
   falselight
 
29 - 26.06.19 - 18:49
(28) И что?
   Сибирский
 
30 - 26.06.19 - 19:07
(29) Да просто пытаюсь вычислить, кто код писал. Нашёл в конфе твой комментарий, но не сопоставил, кто это делал. Под подозрением два человека)
   falselight
 
31 - 26.06.19 - 19:16
(30) Аааа.... Ну комментарии разные бывают много где. Не придавай значения.
Лучше сделай как нужно, если что то не так.
   Сибирский
 
32 - 26.06.19 - 19:55
(31) Ну я не думаю, что кто-то ещё подписал бы свой комментарий как livingStar, кроме самого LivingStar)


Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Рекламное место пустует