"Приняв к сведению пост Thorvardr 07.11.2007 22:59<br>> обычно это бывает если где то по алгоритму перед этим вызывалось:<br>> Товар.ИспользоватьДату(КакаяТоДата);<br>> после этого к цене надо образаться не Товар.Розн_Цена.Получить(КакаяТоДата); , а просто Товар.Розн_Цена<br><br>и обкотав данную ситуацию было выявлено, что если предварительно использовать метод ИспользоватьДату то ТипЗначенияСтр(Товар.Розн_Цена)="Число". Если же не использовать ИспользоватьДату то отладчик показывает что ТипЗначенияСтр(Товар.Розн_Цена) = "НеизвестныйОбъект" из чего был сделан вывод, что это тип значения - периодический реквизит.<br>Поэтому если число то - ТовЦена=Товар.Розн_Цена; иначе ТовЦена=Товар.Розн_Цена.Получить(ПолучитьТА());<br>Оно то можно конечно обернуть в защищённый блок (Попытка...) но, что будет правильней по отношению к системе? "Тихое" исключение и его обработка или тривиальное получение типа объекта?<br><br>И про "грешить" на движок 1С... переполнение *** видели? Обработка из ~550 строк - загрузка документа в базу с созданием дополнительных единиц измерения, элементов починенных справочников, с участием 4 справочников (во всех 4 при необходимости могут создаваться новые элементы, повторяя иерархию из другой базы, если они не найдены в справочнике), объекта Перечисление. И наконец создание приходного документа с расчётом цены продажи на основе цены покупки из файла переноса данных и установленной наценки на товар."