|
регистры сведений | ☑ | ||
---|---|---|---|---|
0
Dmitry017
19.03.13
✎
13:53
|
Необходимо обработать заполнение поля "Цена" в документе ПриходнаяНакладная. Цена находится в регистре сведений.
Я написал код, но выскакивает ошибка &НаКлиенте Процедура ТоварыНаименованиеТовараПриИзменении(Элемент) ТекущиеДанные = ТекущийЭлемент.ТекущиеДанные; ТекущиеДанные.Цена = ПолучитьЦену(); КонецПроцедуры &НаСервере Функция ПолучитьЦену() Отбор = Новый Структура; Отбор.Вставить("Номенклатура", Объект.Товары.НаименованиеТовара); РегистрыСведений.Цены.ПолучитьПоследнее(ТекущаяДата(), Отбор); КонецФункции // ПолучитьЦену() // Ошибка: ладная.Форма.ФормаДокумента.Форма(14)}: Поле объекта не обнаружено (НаименованиеТовара) Отбор.Вставить("Номенклатура", Объект.Товары.НаименованиеТовара); |
|||
1
ДенисЧ
19.03.13
✎
13:54
|
не... тут ошибка не в коде...
|
|||
2
ДенисЧ
19.03.13
✎
13:54
|
Точнее в коде, но не том, что приведён выше...
|
|||
3
Dmitry017
19.03.13
✎
13:56
|
А это весь код обработки. и ошибка на этой строке:
Отбор.Вставить("Номенклатура", Объект.Товары.НаименованиеТовара); Вот скрин объекта формы http://i51.fastpic.ru/big/2013/0319/01/964c3db0fadf639768e80a03b33d1801.png |
|||
4
НафНаф
19.03.13
✎
13:57
|
феерический пипец
|
|||
5
Dmitry017
19.03.13
✎
14:01
|
(4) Я сделал как написано в книжке Радченко: я создал структуру Отбор, в которой есть 2 поля:
"Номенклатура" - поле типа Строка, которое совпадает с названием измерения второе поле - ссылка на тип измерения. |
|||
6
Defender aka LINN
19.03.13
✎
14:01
|
(3) Ошибка - не в коде. Она даже не в компьютере, а перед ним, скорее.
|
|||
7
DexterMorgan
19.03.13
✎
14:01
|
ЭЭЭЭЭЭЭЭЭЭЭ
|
|||
8
DexterMorgan
19.03.13
✎
14:02
|
Да ну даже объяснять лень)
|
|||
9
Михаил Козлов
19.03.13
✎
14:03
|
(5) Объект.Товары - это табличная часть (скорее всего).
|
|||
10
Dmitry017
19.03.13
✎
14:04
|
(8) Объект не передался на сервер и там недоступен?
|
|||
11
Dmitry017
19.03.13
✎
14:04
|
Да, объект.Товары - табличная часть, а НаименованиеТовара - название столбца в этой табличной части
|
|||
12
Dmitry017
19.03.13
✎
14:07
|
так тоже не работает
&НаКлиенте Процедура ТоварыНаименованиеТовараПриИзменении(Элемент) //ТекущиеДанные = ТекущийЭлемент.ТекущиеДанные; ТекущиеДанные.Цена = ПолучитьЦену(Объект.Товары.НаименованиеТовара); КонецПроцедуры &НаСервере Функция ПолучитьЦену(СсылкаНаТовар) Отбор = Новый Структура; Отбор.Вставить("Номенклатура", СсылкаНаТовар); РегистрыСведений.Цены.ПолучитьПоследнее(ТекущаяДата(), Отбор); КонецФункции // ПолучитьЦену() // |
|||
13
DexterMorgan
19.03.13
✎
14:11
|
&НаКлиенте
Процедура ТоварыНаименованиеТовараПриИзменении(Элемент) ТекущиеДанные = Объект.Товары.ТекущиеДанные; ТекущиеДанные.Цена = ПолучитьЦену(ТекущиеДанные.НаименованиеТовара); КонецПроцедуры &НаСервере Функция ПолучитьЦену(СсылкаНаТовар) Отбор = Новый Структура; Отбор.Вставить("Номенклатура", СсылкаНаТовар); РегистрыСведений.Цены.ПолучитьПоследнее(ТекущаяДата(), Отбор); КонецФункции // ПолучитьЦену() // |
|||
14
Ткачев
19.03.13
✎
14:11
|
(0)А "017" это что ? Возраст ? Регион ?
|
|||
15
DexterMorgan
19.03.13
✎
14:12
|
Тьфу
|
|||
16
DexterMorgan
19.03.13
✎
14:12
|
&НаКлиенте
Процедура ТоварыНаименованиеТовараПриИзменении(Элемент) ТекущиеДанные = Элементы.Товары.ТекущиеДанные; ТекущиеДанные.Цена = ПолучитьЦену(ТекущиеДанные.НаименованиеТовара); КонецПроцедуры |
|||
17
DexterMorgan
19.03.13
✎
14:14
|
И это..функция как бы значение возвращает
|
|||
18
Dmitry017
19.03.13
✎
14:19
|
(14) 017 - Random Value=)
|
|||
19
Dmitry017
19.03.13
✎
14:20
|
(17) да я пока что недописал
|
|||
20
Dmitry017
19.03.13
✎
14:26
|
(16) Спасибо большое, всё заработало. Это.. если тебе не трудно, можешь пояснить, почему через Объект.Товары не получалось обратиться?
|
|||
21
Defender aka LINN
19.03.13
✎
14:45
|
(20) И к чему ты обращался, по-твоему?
Вот давай. В табличной части 100500 строк. Что должна программа сделать, увидев "Объект.Товары.НаименованиеТовара"? |
|||
22
Dmitry017
19.03.13
✎
14:48
|
Я понял. Спасибо
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |