Имя: Пароль:
1C
 
УПП Назначить характеристики номенклатуре
0 zaversh
 
21.11.08
10:55
Есть файл  Excel  с двумя столбцами Номенклатура и Характиристика_Цвет,Размер.
Например:
Пальто Синее,56
Пальто Красное,50

Как Номенклатуре назначить эти две характеристики?
Если обработкой ЗагрузкаДанныхИзТабличногоДокумента загружать в Регистр сведений ЗначенияСвойствОбъектов, там можно указать в Объект только ХарактеристикаНоменклатуры, а конкретную номенклатуру не знаю как указать.
Владельца, то есть номенклатуру в этой обработке для регистра сведения действительно не указать или не так делаю?
1 zaversh
 
21.11.08
11:13
Нельзя или никто не делал?
2 zaversh
 
21.11.08
11:59
Подскажите. пожалуйста, в этой обработке есть События.
Там можно код добавить. Может, это использовать?
3 Лирик
 
21.11.08
12:22
Так ты в свойства Номенклатуры хочешь занести или в характеристики?
4 Mitriy
 
21.11.08
12:25
быстро: программиста позвать
долго:  читать книжки про планы характеристик...
5 zaversh
 
21.11.08
12:38
(3)В характеристики.
Причем, ПВХ и Значения свойств уже перенесли.
Надо именно связку Номенклатуры с Значением свойств, это, как я понимаю, РегистрыСведений.ЗначенияСвойствОбъектов.
6 zaversh
 
21.11.08
12:41
(3)То есть, чтобы в карточке номенклатуры на закладке Характеристики появилась активная характеристика Цвет,Размер.
Переношу через обработку с ИТС ЗагрузкаДанныхИзТабличногоДокумента в этот регистр сведений - получаю в карточке текстовое значение Цвет,Размер.
Это понятно, что не так надо, ведь владелец при переносе не указан.
7 zaversh
 
21.11.08
12:44
В этой обработке есть в этой обработке есть События, там можно добавить код Перед записью. Может, там надо?
Не приходилось пользоваться. Поэтому и прошу помочь.
8 Лирик
 
21.11.08
12:48
Мне кажется в твоей задаче нужно для каждой номенклатуры создавать характеристику формировать название характеристики (цвет+размер) а уже для созданной характеристики указывать значение свойств "цвет" и "размер". И не надо "именно связку Номенклатуры с Значением свойств" ибо это свойства характеристик, а не номенклатуры.
9 zaversh
 
21.11.08
12:50
Да, это опечатка, надо связку Номенклатуры с Значением свойств характеристик, конечно.
10 zaversh
 
21.11.08
12:51
(8)То есть, типовой обработкой не получится?
11 zaversh
 
21.11.08
12:53
(8)Или можно код "... для каждой номенклатуры создавать характеристику формировать название характеристики (цвет+размер)..."  в События Перед записью в эту обработку добавить?
12 Лирик
 
21.11.08
12:56
Если я правильно понял должно получится следующее:
Номенклатура - пальто
у нее 2 характеристики:
Синее 56 р-а
Красное 50 р-а
У характеристик свойства:
Синее 56 р-а
   Свойство        Значение
   Цвет            Синее
   размер          56
Красное 50 р-а
   Цвет            Красное
   Размер          50

?
13 zaversh
 
21.11.08
12:57
Связку Номенклатуры с Значением свойств характеристик я ведь только через РегистрыСведений.ЗначенияСвойствОбъектов сделать могу?
14 zaversh
 
21.11.08
12:58
(12)Да, по-моему, так.
15 zaversh
 
21.11.08
13:02
(12)Причем, в ЗначенияСвойствОбъектов(Классификатор) уже есть Синее и Красное.
16 zaversh
 
21.11.08
13:03
(12)Размера нет, это числовой тип, в Классификатор не записать.
17 mista2009
 
21.11.08
13:26
Дарю код  :) Я сегодня добрый



НовНом=Справочники.Номенклатура.СоздатьЭлемент();
   НовНом.Наименование="Ботинки";
   НовНом.ВестиУчетПоХарактеристикам=Истина;
   НовНом.БазоваяЕдиницаИзмерения=Справочники.КлассификаторЕдиницИзмерения.НайтиПоНаименованию("шт");
   НовНом.ВидНоменклатуры=Справочники.ВидыНоменклатуры.НайтиПоНаименованию("Товар");
   НовНом.Записать();
   
   
   НовХар=Справочники.ХарактеристикиНоменклатуры.СоздатьЭлемент();
   НовХар.Владелец=НовНом.Ссылка;
   НовХар.Наименование="40,белый";
   НовХар.Записать();
   
   НовСв1=ПланыВидовХарактеристик.СвойстваОбъектов.СоздатьЭлемент();
   НовСв1.Наименование="Размер";
   НовСв1.ТипЗначения=Новый ОписаниеТипов("Строка");
   НовСв1.Записать();
   
   
   НовСв2=ПланыВидовХарактеристик.СвойстваОбъектов.СоздатьЭлемент();
   НовСв2.Наименование="Цвет";
   НовСв2.ТипЗначения=Новый ОписаниеТипов("Строка");
   НовСв2.Записать();
   
   Набор=РегистрыСведений.ЗначенияСвойствОбъектов.СоздатьНаборЗаписей();
   Набор.Отбор.Объект.Значение=НовХар.Ссылка;
   Набор.Отбор.Свойство.Значение=НовСв1.Ссылка;
   Набор.Прочитать();
   НовСтр=Набор.Добавить();
   Новстр.Объект=НовХар.Ссылка;
   НовСтр.Свойство=НовСв1.Ссылка;
   НовСтр.Значение="40";
   Набор.Записать(Истина);
   
   Набор=РегистрыСведений.ЗначенияСвойствОбъектов.СоздатьНаборЗаписей();
   Набор.Отбор.Объект.Значение=НовХар.Ссылка;
   Набор.Отбор.Свойство.Значение=НовСв2.Ссылка;
   Набор.Прочитать();
   НовСтр=Набор.Добавить();
   НовСтр.Значение="белый";
   Новстр.Объект=НовХар.Ссылка;
   НовСтр.Свойство=НовСв2.Ссылка;
   Набор.Записать(Истина);
18 zaversh
 
21.11.08
13:34
(17)Спасибо!
Я не хочу быть самым богатым человеком на кладбище. Засыпать с чувством, что за день я сделал какую-нибудь потрясающую вещь — вот что меня интересует. Стив Джобс