Имя: Пароль:
1C
1С v8
При обмене РИБ Не удалось записать "USD (Валюты)"!
,
0 OldmaN2
 
31.07.15
11:04
Доброго времени суток, Господа!
Нужна помощь, при выполнении загрузки файла обмена для РИБ, если был задет справочник.валюта, обмен завершается ошибкой:
Ошибка при вызове метода контекста (Записать) ЗаписанноеЗначение.Записать();
по причине:
Не удалось записать "KZT (Валюты)"!

Что примечательно, воспользовался обработкой ВыгрузкаЗагрузкаДанныхXML, если установлен режим ОбменДанными.Загрузка = Истина, тогда возникает ошибка, а если параметр Загрузка = Ложь, тогда данные загружаются без проблем. Все остальные справочники обмениваются на ура!
Что может влиять на запись справочника в режиме Загрузка = Истина? В модуле объекта справочника при записи используется только: ОбновитьПовторноИспользуемыеЗначения(), комментирование строки и запись справочника в пользовательском прошла также на ура. Куда копать, не разберусь....
1 Timon1405
 
31.07.15
11:08
Предопреденные есть? какая платформа?
http://catalog.mista.ru/public/310542/
2 OldmaN2
 
31.07.15
11:10
(1) Предопределённых нет, платформа: 8.2.19.130
3 D_E_S_131
 
31.07.15
11:14
"Что может влиять на запись справочника в режиме Загрузка = Истина?" — для ответа на этот вопрос, нужно открыть модель справочника "Валюты" и пристально посмотреть на процедуры "ПередЗаписью()" и "ПриЗаписи()".
4 D_E_S_131
 
31.07.15
11:14
модель = модуль
5 OldmaN2
 
31.07.15
11:18
(4) В модуле объекта справочника при записи используется только: ОбновитьПовторноИспользуемыеЗначения(), комментирование строки и запись справочника в пользовательском прошла также на ура.
6 OldmaN2
 
31.07.15
11:18
(4) других процедур нет, только при записи
7 D_E_S_131
 
31.07.15
11:21
Подписки значит еще ищи на этот справочник.
8 OldmaN2
 
31.07.15
11:33
(7) Спасибо большое! Нарыл такой вот камень:
Процедура ПередЗаписьюСправочникаВалюты(Источник,Отказ) экспорт
    Если Источник.ОбменДанными.Загрузка тогда
        Если НЕ Справочники.Валюты.НайтиПоКоду(Источник.Код).Пустая() тогда
            Отказ = истина;
        КОнецЕсли;
    КонецЕсли;    
КонецПроцедуры

Теперь понять пытаюсь, на кой хрен предыдущий программист включил это условие....
9 lera01
 
31.07.15
11:37
(8) Лучше разобраться с правилами обмена и синхронизировать по коду, чтобы валюты не плодить.
10 OldmaN2
 
31.07.15
11:42
(9) Это полный типовой обмен РИБ
Выдавать глобальные идеи — это удовольствие; искать сволочные маленькие ошибки — вот настоящая работа. Фредерик Брукс-младший