![]() |
![]() |
|
План видов характеристик. Как получить значение? | ☑ | ||
---|---|---|---|---|
0
dva1c
19.05.10
✎
07:26
|
Магазин торгует одеждой. Соответственно, используется план видов характеристик для задания цвета, размера и т.д.
В ценнике (сделан внешней обработкой) нужно печатать значение Размер - большим. При получении характеристики СтрокаТаблицы.ХарактеристикаНоменклатуры Размер: 46, Состав: Хлопок/Эластан, Страна изготовитель: Германия, Фирма: "Gelco", Цвет: Белый СправочникСсылка.ХарактеристикиНоменклатуры значение, тип строка, поэтому размер никак не выделяется. Вопрос: как выдернуть это свойство "Размер" и получить значение "Размер: 46"? Можно запросом. Приведите примерчик. Заранее благодарен! |
|||
1
dva1c
19.05.10
✎
07:48
|
Как вариант - ткните носом, где про это почитать )
|
|||
2
dva1c
19.05.10
✎
07:50
|
Есть Габец, Гончаров "Простые примеры разработки". Курю пока этот мануал, но что-то никак (
|
|||
3
lxndr
19.05.10
✎
07:51
|
(0) размер тянуть из регистра сведений ЗначенияСвойствОбъектов с отбором по объекту-характеристике и свойству - размеру
|
|||
4
dva1c
19.05.10
✎
07:52
|
(3) Спасибо! Уже что-то.
А кодом как это выглядит? |
|||
5
lxndr
19.05.10
✎
07:55
|
ВЫБРАТЬ
Р.Значение КАК Размер ИЗ РегистрСведений.ЗначенияСвойствОбъектов КАК Р ГДЕ Р.Объект = &Характеристика И Р.Свойство = &СвойствоРазмер |
|||
6
dva1c
19.05.10
✎
08:00
|
(5) Спасибо, еще раз! Вопрос: что передавать в параметрах (&Характеристика, &СвойствоРасмер)?
|
|||
7
dva1c
19.05.10
✎
08:24
|
lxndr будь добр, напиши подробнее. У меня полный "тупняг" ;)
|
|||
8
vde69
19.05.10
✎
08:27
|
Характеристика - ссылка на ПВХ
СвойствоРасмер - значение ПВХ |
|||
9
dva1c
19.05.10
✎
08:27
|
Вот кусочек кода, где надо получить. |
|||
10
dva1c
19.05.10
✎
08:28
|
(8) Спасибо, уважаемый vde69
|
|||
11
lxndr
19.05.10
✎
08:47
|
(8) не так: Характеристика - СправочникСсылка.ХарактеристикиНоменклатуры
|
|||
12
vde69
19.05.10
✎
09:00
|
(11) да я все напутал :) бывает...
|
|||
13
dva1c
19.05.10
✎
09:07
|
(1) В консоли все работает на раз!
но установка параметров...
Как поступить с размером? |
|||
14
dva1c
19.05.10
✎
09:10
|
+(13) или неправильно, а надо
|
|||
15
dva1c
19.05.10
✎
09:13
|
В консоли запросов все делается интерактивно, а надо программно (
|
|||
16
dva1c
19.05.10
✎
09:38
|
Совсем немного осталось )
Надо установить параметр СвойствоРазмер |
|||
17
dva1c
19.05.10
✎
09:40
|
Такое ощущения, что я взываю "пустоту" ))
|
|||
18
Aloex
19.05.10
✎
09:43
|
(16)Запрос.УстановитьПараметр("Характеристика", СтрокаТаблицы.ХарактеристикаНоменклатуры.ПолучитьОбъект()); Это чушь.
Получать обьект не нужно нужна ссылка. (17) сам поставь по аналогии с "Характеристика" |
|||
19
dva1c
19.05.10
✎
09:44
|
(11) Докрути все-таки Запрос.УстановитьПараметр("СвойствоРазмер",...
что писать? Пожалуйста! |
|||
20
dva1c
19.05.10
✎
09:45
|
(18) Оп! не увидел. Получать не буду. Как поступить со свойством?
|
|||
21
Buster007
19.05.10
✎
09:52
|
Зайди в ПВХ "Свойства объектов" посмотри там Код у свойства "Размер", и далее
Запрос.УстановитьПараметр("СвойствоРазмер", ПланыВидовХарактеристик.СвойстваОбъектов.НайтиПоКоду("ТвойКод")); |
|||
22
Buster007
19.05.10
✎
09:53
|
и я бы тебе не советовал делать это в цикле...
|
|||
23
dva1c
19.05.10
✎
10:06
|
(21) Спасибо! Посмотрел, проверил.
Получил в отладчике ВыборкаРезультатаЗапроса.Размер Неопределено Т.е. нужно что-то добавить для получения значения
|
|||
24
dva1c
19.05.10
✎
10:07
|
+(23) Типа "Значение"? Сча буду проверять.
|
|||
25
dva1c
19.05.10
✎
10:11
|
(22) Так я и не делаю в цикле. Я делаю в обработке печати ценников.
|
|||
26
dva1c
19.05.10
✎
10:26
|
После выполнения запроса вылазит все верно, но значение читается неверно.
Из отладчика: Запрос.Выполнить().Выбрать().Размер Неопределено --- Господа! Пробовал разными способами, но не удалось. ((( |
|||
27
dva1c
19.05.10
✎
10:37
|
В консоли делается интерактивно, все рвботает. В запросе не могу получить значение.
Запрос = Новый Запрос; Запрос.Текст="ВЫБРАТЬ | Р.Значение КАК Размер |ИЗ | РегистрСведений.ЗначенияСвойствОбъектов КАК Р |ГДЕ | Р.Объект = &Характеристика | И | Р.Свойство = &СвойствоРазмер"; Запрос.УстановитьПараметр("Характеристика",СтрокаТаблицы.ХарактеристикаНоменклатуры); Запрос.УстановитьПараметр("СвойствоРазмер",ПланыВидовХарактеристик.СвойстваОбъектов.НайтиПоКоду("000000011")); ВыборкаРезультатаЗапроса = Запрос.Выполнить().Выбрать(); -- Помогите получить значение. |
|||
28
kn
19.05.10
✎
10:39
|
Выборка = Запрос.Выполнить().Выбрать();
Если Выборка.Следующий() Тогда Размер = Выборка.Размер; КонецЕсли; |
|||
29
dva1c
19.05.10
✎
10:43
|
(28) Спасибо! Сча проверю.
|
|||
30
hhhh
19.05.10
✎
10:45
|
да, получается, если чел с улицы, который ни разу не видел 1С, откроет мисту, то он спокойно может решить любую задачу.
|
|||
31
Buster007
19.05.10
✎
10:47
|
"Запрос.Выполнить().Выбрать().Размер" <-- просто ппц
Автор учи мат часть |
|||
32
dva1c
19.05.10
✎
10:47
|
(30) Зачем Вы так. Я не с улицы.
|
|||
33
kn
19.05.10
✎
10:48
|
он наверно 7-орошник
|
|||
34
Buster007
19.05.10
✎
10:48
|
+(31) Стаж: 5 г. 3 мес.
Да тупо сидеть и читать чужие сообщения, за столько лет то можно было уж узнать как делать обход по результату запроса... |
|||
35
dva1c
19.05.10
✎
10:49
|
(31) Смотрю в отладчике. Пишет "Неопределено"
|
|||
36
dva1c
19.05.10
✎
10:49
|
(33) Точно
(34) Я читаю не тупо |
|||
37
Buster007
19.05.10
✎
10:49
|
(35) мдя... смотри в (28)
|
|||
38
Buster007
19.05.10
✎
10:50
|
(36) я имел ввиду, что можно просто так сидеть на форуме, и читать сообщения, которые оставляют пользователи, не открывая ни разу книжку и научиться делать обход...
|
|||
39
dva1c
19.05.10
✎
11:02
|
(38) Если бы можно было зарабатывать этим занятием, то я бы так и поступил. ))
В поиске по форумуЮ на эту тему, пока ничего найти не могу. (18) проверил, но значение не выдает. Внутрь условия не заходит. Попытка прочитать значение пока не удается. |
|||
40
dva1c
19.05.10
✎
11:08
|
Дело в том, что мне обходить не надо. Надо получить значение после выполнения запроса.
|
|||
41
kn
19.05.10
✎
11:10
|
(40)не заходит значит запрос пустой, может параметры(их типы)не правильны
|
|||
42
dva1c
19.05.10
✎
12:26
|
(41) Согласен. Типы, скорее всего, неправильны.
В 1-ом параметре тип:СправочникСсылка.ХарактеристикиНоменклатуры Во 2-ом параметре тип:ПланВидовХарактеристикСсылка.СвойстваОбъектов |
|||
43
kn
19.05.10
✎
13:25
|
типы правильные, а отладчиком смотрел их значения?
|
|||
44
dva1c
19.05.10
✎
13:30
|
(43) Смотрел. В значении пишет: "Ошибка чтения значения"
|
|||
45
dva1c
19.05.10
✎
13:42
|
Чето я совсем затупил.
Запрос = Новый Запрос; Запрос.Текст="ВЫБРАТЬ | Р.Значение КАК Размер |ИЗ | РегистрСведений.ЗначенияСвойствОбъектов КАК Р |ГДЕ | Р.Объект = &Характеристика | И | Р.Свойство = &СвойствоРазмер"; Запрос.УстановитьПараметр("Характеристика",СтрокаТаблицы.ХарактеристикаНоменклатуры); Запрос.УстановитьПараметр("СвойствоРазмер", ПланыВидовХарактеристик.СвойстваОбъектов.НайтиПоКоду("000000011")); ВыборкаРезультатаЗапроса = Запрос.Выполнить().Выбрать(); Если ВыборкаРезультатаЗапроса.Следующий() Тогда Размер = ВыборкаРезультатаЗапроса.Размер; КонецЕсли; -- В Размер все как надо! Всем спасибо! |
|||
46
dva1c
19.05.10
✎
14:14
|
Вопрос вдогонку.
Можно получить как в v8: пример работы с "Планы видов характеристик" в 8-ке. Можно запросом. Как правильней/оптимальней? |
|||
47
kn
19.05.10
✎
14:25
|
а ты сделай замер производительности...(рекомендуют по-моему всё через запросы)
|
|||
48
dva1c
19.05.10
✎
14:28
|
(47) В свое время, когда было желание изучить 8-ку, посещал курсы. И если мне правильно помниться, то рекомендовали все делать запросом.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |