Имя: Пароль:
1C
1С v8
Ошибка отображения типов
0 ktu78
 
27.04.15
11:36
Добрый день, коллеги. Версия 1с 8.3
Проблема: в документе у меня 2 реквизита:
КонтрагентВалюты  и НомерПаспорта
КонтрагентВалюты - ссылочный тип на Справочник "КонтрагентыВалюты"
НомерПаспорта - строка 10 знаков.
В справочнике "КонтрагентыВалюты" также есть реквизит НомерПаспорта, строка 10 симв.
Я хочу, чтобы в форме документа после того, как выберу контрагента, в поле документа "НомерПаспорта" автоматически появился номер паспорта, взятый со справочника "КонтрагентыВалюты" для конкретного человека
В модуле формы таков код:

&НаКлиенте
Процедура ПродавецВалютыПриИзменении(Элемент)
    НомерПаспорта=ПолучиНомерПаспорта(Элементы.ПродавецВалюты);
КонецПроцедуры

&НаСервере
Функция ПолучиНомерПаспорта(СсылкаНаПродавцаВалюты)
    ПродавецВалютыКакОбъект=СсылкаНаПродавцаВалюты.ПолучитьОбъект();
    
    Возврат ПродавецВалютыКакОбъект.НомерПаспорта;
КонецФункции

При  запуске 1с в пользовательском режиме когда я вставляю Контрагента
выдается сообщение:
Ошибка отображения типа. Отсутствует отображение для типа "Поле формы"
Когда я подробней просмотрел ошибку, то выдано следующее:
{Документ.ПокупкаВалюты.Форма.ФормаДокумента.Форма(34)}: Ошибка при вызове метода контекста (ПолучиНомерПаспорта)
    НомерПаспорта=ПолучиНомерПаспорта(Элементы.ПродавецВалюты);
по причине:
Ошибка передачи данных между клиентом и сервером. Значение недопустимого типа.
по причине:
Ошибка преобразования данных XDTO:
Запись значения свойства 'param':
    форма: Элемент
    имя: {http://v8.1c.ru/8.2/managed-application/modules}param
по причине:
Ошибка отображения типов:
Отсутствует отображение для типа 'ПолеФормы'

Подскажите пожалуйста, помогите. Заранее благодарен. Удачного дня!
1 asady
 
27.04.15
11:40
(0) в отладчике встань
на строку
НомерПаспорта=ПолучиНомерПаспорта(Элементы.ПродавецВалюты);

и посмотри на тип Элементы.ПродавецВалюта
2 ktu78
 
27.04.15
12:03
Как просмотреть тип функции или переменной при отладке в 1С
3 rabbidX
 
27.04.15
12:20
Программист всегда исправляет последнюю ошибку.