Имя: Пароль:
1C
1С v8
Почему выдает ошибку?
0 prazdnik4334
 
15.10.12
21:21
Подскажите пожалуйста почему выдаёт ошибку?
&НаКлиенте
Процедура ВалютаПриИзменении(Элемент)
   // Вставить содержимое обработчика.
   Валюта_Курс = Новый Структура;
   Валюта_Курс = ПолучитьКурс(Объект.Валюта);
   Если Валюта_Курс<>0 Тогда
       Элементы.Курс.Заголовок = "Курс: "+Валюта_Курс.Курс;
       Элементы.Кратность.Заголовок = "Кратность: "+Валюта_Курс.Кратность;
       Если Объект.Валюта<>"UAH" Тогда
           (?) Элементы.Товары.ТекущиеДанные.ЦенаГрн = Окр((Элементы.Товары.ТекущиеДанные.Цена*Валюта_Курс.Курс/Валюта_Курс.Кратность), 2, 1);
       Иначе
           Элементы.Товары.ТекущиеДанные.ЦенаГрн = Элементы.Товары.ТекущиеДанные.Цена
       КонецЕсли;
   Иначе
       Элементы.Курс.Заголовок = "Курс: <не установлен>";
       Элементы.Кратность.Заголовок = "Кратность: <00>"
   КонецЕсли
   
КонецПроцедуры
А на (?) выдаёт ошибку такую: Значение не является значением объектного типа (ЦенаГрн)
1 zak555
 
15.10.12
21:22
а где ПолучитьКурс ?
2 DrHiHi
 
15.10.12
21:26
Объект.Валюта<>"UAH" - кто-то прикалывается %))
ошибка вызвана тем, что в табличной части нету строк, тоесть нужно добавить типа
ТекущиеДанные = Элементы.Товары.ТекущиеДанные;
Если ТекущиеДанные <> Неопределено Тогда
Если Объект.Валюта<>"UAH" Тогда
           ТекущиеДанные.ЦенаГрн = Окр((ТекущиеДанные.Цена*Валюта_Курс.Курс/Валюта_Курс.Кратность), 2, 1);
       Иначе
           ТекущиеДанные.ЦенаГрн = ТекущиеДанные.Цена;
       КонецЕсли;
КонецЕсли;
3 shuhard
 
15.10.12
21:27
(0)[Объект.Валюта<>"UAH"]
ни чё так
4 DrHiHi
 
15.10.12
21:30
(0) увольте программиста
валюта в документе одна, то какого пересчитываются текущая строка??
5 ПесняПроЗайцев
 
15.10.12
22:04
(0) Вот что значит отладчиком не уметь пользоваться.
6 alexei366
 
15.10.12
22:08
Явно (?) лишнее не пробывал убрать
Компьютеры — это как велосипед. Только для нашего сознания. Стив Джобс