Имя: Пароль:
1C
1С v8
ошибка "Значение не является значением объектного типа
0 Anastasia1992
 
04.04.15
20:19
Добрый вечер! в 1с8.1 в документе ПриходнаяНакладная при выборе Товара должна автоматически проставляться Цена в соответствующее поле ввода. А вместо этого выводиться ошибка "Значение не является значением объектного типа (Цена)".  ссылка на ошибку в общем модуле,Возврат элем.Цена;


В общем модуле прописан следующий код:
Функция РозничнаяЦена(АктуальнаяДата, ЭлементТовары) Экспорт

Отбор = Новый Структура("Товары",ЭлементТовары);
// Получить актуальные значения ресурсов регистра
элем = РегистрыСведений.Цены.ПолучитьПоследнее(АктуальнаяДата, Отбор);
Возврат элем.Цена;

КонецФункции

Подскажите пожалуйста где может быть ошибка, вроде бы всё перепроверила. Заранее благодарна
1 vicof
 
04.04.15
20:24
Перед возвратом поставь
СОобщить(ТипЗнч(Элем));
2 Otkr
 
04.04.15
20:28
(1) Не поможет) РС Цен наверняка периодический)
3 NcSteel
 
04.04.15
20:30
За код 10 лет расстрела.
Делай через Запрос!
4 NcSteel
 
04.04.15
20:31
обмельчал народ мисты...

а фотка где госпожа из (0). Тут традиция такая, что если есть фотка, то помогают
5 Anastasia1992
 
04.04.15
20:44
Извините за примитивный уровень. Но я с этим вопросом мучаюсь не один день, а выхода не нахожу(

А как через запрос формировать возврат?

Фотка и правда нужна или это местный юмор?)
6 H A D G E H O G s
 
04.04.15
20:48
(5) Это юморит человек. Не нужна. Пусть сначало свою покажет.
7 H A D G E H O G s
 
04.04.15
20:50
(5) Цена - точно ресурс?
8 Anastasia1992
 
04.04.15
20:53
(7) Да, точно
9 H A D G E H O G s
 
04.04.15
20:55
(8) Давай подключусь, помогу
icq: 374-881-272
10 Anastasia1992
 
04.04.15
21:00
(9) 696-797-023
11 Euguln
 
04.04.15
21:02
А нету у этого товара цены в регистре.
12 Anastasia1992
 
04.04.15
21:03
(11) Есть. я по всем цены прописала
13 Otkr
 
04.04.15
21:04
(12) У этого "товара" нет
14 Anastasia1992
 
04.04.15
21:05
(13) это как? И куда её тогда добавить нужно?
15 Otkr
 
04.04.15
21:07
(14) Перечитай (1). Подумай что выдаст 1С )
16 NcSteel
 
04.04.15
21:22
ЦенаТовара = 0;

Запрос = Новый Запрос
Запрос.Текст = "Выбрать РсЦены.Цена Из РегистрСведений.Цены Как РсЦены Где РсЦены.Товар = &Товар";
Запрос.УставновитьПараметры("Товар", Товар);
Выборка = Запрос.Выполнить().Выбрать();
Если Выборка.Следующий() Тогда
ЦенаТовара = Выборка.Цена;
КонецЕсли;

Возврат ЦенаТовара;
17 NcSteel
 
04.04.15
21:23
(16) Забыл про срез последних:
ЦенаТовара = 0;

Запрос = Новый Запрос
Запрос.Текст = "Выбрать РсЦены.Цена Из РегистрСведений.Цены.СрезПоследних(, "Товар = &Товар") Как РсЦены";
Запрос.УставновитьПараметры("Товар", Товар);
Выборка = Запрос.Выполнить().Выбрать();
Если Выборка.Следующий() Тогда
ЦенаТовара = Выборка.Цена;
КонецЕсли;

Возврат ЦенаТовара;
18 NcSteel
 
04.04.15
21:24
(10) Не ведись, он латентный любитель девушек 1992 года...
19 Anastasia1992
 
04.04.15
21:38
(18) Спасибо! Я даже не ожидала что тут так быстро помогут))
20 NcSteel
 
04.04.15
21:47
(19) Только в тексте запроса лишние ковычки вставлены.

Правильная строка:
Запрос.Текст = "Выбрать РсЦены.Цена Из РегистрСведений.Цены.СрезПоследних(, Товар = &Товар) Как РсЦены";

И вообще видишь как фото помогает))))
21 User_Agronom
 
04.04.15
21:57
(1) (2) Поможет. Небось неопределено возвращает. Ну не нашла цену на сей товар на указанную дату.
Так же не бывает, что переменная есть, а значения у неё нет))

Тогда

элем = РегистрыСведений.Цены.ПолучитьПоследнее(АктуальнаяДата, Отбор);
Если элем = неопределено тогда
возврат 0
иначе
Возврат элем.Цена;
конецесли;

(4) Фотка  есть, что толку. Вот если бы борща отведать...

(16) (17) Всё в топку. Ей нужно было намекнуть про отладчик. А то похоже, что она такая скромная, что боится открывать конфигуратор - причём самое страшное в нём: клавиша F9!
22 Anastasia1992
 
05.04.15
10:16
Доброе утро! К сожалению ошибка новая вылезает:

Ошибка при вызове метода контекста (Выполнить): {(1,24)}: Таблица не найдена
"РегистрСведений.Цены.СрезПоследних"
Выбрать РсЦены.Цена Из <<?>>РегистрСведений.Цены.СрезПоследних(,Товары=&Товары) Как РсЦены
Выборка=Запрос.Выполнить().Выбрать();
23 Anastasia1992
 
05.04.15
10:18
Регистр сведений Цены - заполнен полностью.
24 Euguln
 
05.04.15
10:21
Терзают меня смутные сомнения, что РегистрСведений.ЦеныНоменклатуры
25 Anastasia1992
 
05.04.15
10:25
(24) Нет, называется точно Цены
26 Euguln
 
05.04.15
10:28
(22) значит он не периодический, и надо писать
Выбрать РсЦены.Цена Из РегистрСведений.Цены КАК РсЦены ГДЕ РсЦены.Товары=&Товары
27 Anastasia1992
 
05.04.15
10:37
(26) Спасибо, цена теперь проставляется! Только вот сумма почему-то перестала считаться...
28 Anastasia1992
 
05.04.15
11:21
А тип данных (Возврат ЦенаТовара;) - он точно будет числовой, может по этому сумма теперь не считается?