Имя: Пароль:
1C
1С v8
Помогите победить ошибку при обмене
0 ks-78
 
27.09.13
15:01
Есть две базы УТ 11.0. Есть свой план обмена. Так вот при загрузке в одну из баз возникает ошибка.

{ОбщийМодуль.ОбновлениеИнформационнойБазы.Модуль(387)}: Ошибка при вызове метода контекста (Выполнить)
    ТаблицаЗначений = Запрос.Выполнить().Выгрузить();
по причине:
Ошибка выполнения запроса
по причине:
В данной транзакции уже происходили ошибки!

Вот функция, в которой возникает ошибка:

Функция ВерсияИБ(Знач ИдентификаторБиблиотеки, Знач ПолучитьВерсиюОбщихДанных = Ложь) Экспорт
    
    УстановитьПривилегированныйРежим(Истина);
    
    Запрос = Новый Запрос;
    Запрос.Текст =
    "ВЫБРАТЬ
    |    ВерсииПодсистем.Версия КАК Версия
    |ИЗ
    |    РегистрСведений.ВерсииПодсистем КАК ВерсииПодсистем
    |ГДЕ
    |    ВерсииПодсистем.ИмяПодсистемы = &ИмяПодсистемы
    |    И ВерсииПодсистем.ОбластьДанных = &ОбластьДанных";
    Если НЕ ОбщегоНазначенияПовтИсп.ДоступноИспользованиеРазделенныхДанных()
        ИЛИ ПолучитьВерсиюОбщихДанных Тогда
        
        ОбластьДанных = -1;
    Иначе
        ОбластьДанных = ОбщегоНазначения.ЗначениеРазделителяСеанса();
    КонецЕсли;
    Запрос.УстановитьПараметр("ОбластьДанных", ОбластьДанных);
    Запрос.УстановитьПараметр("ИмяПодсистемы", ИдентификаторБиблиотеки);
    ТаблицаЗначений = Запрос.Выполнить().Выгрузить();
    Результат = "";
    Если ТаблицаЗначений.Количество() > 0 Тогда
        Результат = СокрЛП(ТаблицаЗначений[0].Версия);
    КонецЕсли;
    Возврат ?(ПустаяСтрока(Результат), "0.0.0.0", Результат);
    
КонецФункции

Параметры в запрос устанавливаются правильные, дважды эта процедура при загрузке вызывается и отрабатывает без проблем. А вот третий раз не хочет запрос выполняться.
Подскажите, как разобраться, почему запрос не выполняется, если с самим запросом все в порядке?