Имя: Пароль:
1C
1С v8
програмно записать характеристки
,
0 potapovi4
 
25.10.15
21:54
Добрый день,хотелось бы програмно записать  характеристики к карточке.Правильно ли читать справочник Характеристик?или лучше  регистр сведений значенияисвойства?
    Запрос = Новый Запрос();
    Запрос.Текст = "
    |ВЫБРАТЬ
    |    ХарактеристикиНоменклатуры.Ссылка КАК Ссылка,
    |    ХарактеристикиНоменклатуры.Владелец КАК Владелец
    
    |    ИЗ  Справочник.ХарактеристикиНоменклатуры КАК  ХарактеристикиНоменклатуры
    |    ГДЕ ХарактеристикиНоменклатуры.Владелец = &ВладелецХарактеристики
    |";
    Запрос.УстановитьПараметр("ВладелецХарактеристики", ТМЦ);
                    выбТ = Запрос.Выполнить().Выбрать();
                Если выбТ.Следующий() Тогда
                        сообщить(выбТ.Ссылка);
                    КонецЕсли;
1 Славен
 
25.10.15
22:09
А есть еще пвх и значение свойств обьектов....
2 Славен
 
25.10.15
22:10
Правильней регистр
3 potapovi4
 
25.10.15
22:12
(2)как по владельцу отобрать если регистр ?
4 Славен
 
25.10.15
22:16
По нужной пвх и владельцу в зависимости от конфы владелец либо номенклатура сама, либо характеристика из спр, у которой владелец номенклатура))
5 potapovi4
 
25.10.15
22:19
УТП для Украины.ЗначенияСвойствОбъектов в регистре нет владельца...чет я туплю...
6 Славен
 
25.10.15
22:22
(5) там есть обьект, можешь считать его владельцем
7 Славен
 
25.10.15
22:23
(6) даже так “Объект“
8 potapovi4
 
25.10.15
22:25
(7) так в данном контексте объект это характеристика а не сам владелец тоесть номенклатура
9 Славен
 
25.10.15
22:26
(8) так запросом три таблицы связать не трудно, номенклатура-характеристкиа(через владелец)-значениесвойств(через объект) или тебе только имя характеристики нужно без значений?
10 potapovi4
 
25.10.15
22:42
Запрос = Новый Запрос();
    Запрос.Текст = "
    |ВЫБРАТЬ
    //|    ЗначенияСвойствОбъектов.Ссылка КАК Ссылка,
    |    ЗначенияСвойствОбъектов.Объект КАК Объект
    |    ИЗ  РегистрСведений.ЗначенияСвойствОбъектов КАК  ЗначенияСвойствОбъектов
    |    ГДЕ ЗначенияСвойствОбъектов.Объект = &ВладелецХарактеристики
    |";
    Запрос.УстановитьПараметр("ВладелецХарактеристики", ТМЦ);
                    выбТ = Запрос.Выполнить().Выбрать();
                Если выбТ.Следующий() Тогда
                        сообщить(выбТ.Объект);
                    КонецЕсли;

так делаю.запрос молчит
11 potapovi4
 
25.10.15
22:44
(9) мне нужно проверить есть ли у карточки характеристика и дополнить ее при надобности
12 hhhh
 
26.10.15
05:39
|    ГДЕ ЗначенияСвойствОбъектов.Объект = &Характеристика
13 Мимохожий Однако
 
26.10.15
07:16
Можно подглядеть поиском по общим модулям как у тебя характеристики отбираются и записываются в регистр. Например, подглядеть через форму списка записей регистра или форму документа по кнопке открытия характеристик.
Компьютеры — это как велосипед. Только для нашего сознания. Стив Джобс