Все-таки было решено сделать новую базу и перенести туда документы, справочники, независимые регистры накопления …
На диске ИТС, за ноябрь, я взял обработку по обмену - ВыгрузкаЗагрузкаДанныхXML.epf
Единственное, что я добавил это чтобы если загружается документ то он сразу проводился
...
Попытка
Если Метаданные.Документы.Содержит(Метаданные.НайтиПоТипу(ТипЗнч(ЗаписанноеЗначение))) тогда //если документ то проводим
ЗаписанноеЗначение.Записать(РежимЗаписиДокумента.Проведение);
Иначе
ЗаписанноеЗначение.Записать();
КонецЕсли;
Исключение
...
Но при проведении вылетает интересная ошибка.
{ВнешняяОбработка.ВыгрузкаЗагрузкаДанныхXML(94)}: Ошибка при вызове метода контекста (Записать): Действие не может выполняться в режиме загрузки данных
ЗаписанноеЗначение.Записать(РежимЗаписиДокумента.Проведение);
В чем может быть дело?
Вот полный код процедуры:
Процедура ВыполнитьЗагрузку(ИмяФайла) Экспорт
Если СтрДлина(ИмяФайла) = 0 Тогда
Предупреждение("Не задано имя файла выгрузки");
Возврат;
КонецЕсли;
ЧтениеXML = Новый ЧтениеXML;
ЧтениеXML.ОткрытьФайл(ИмяФайла);
// проверка формата файла обмена
Если Не ЧтениеXML.Прочитать() Или
ЧтениеXML.ТипУзла <> ТипУзлаXML.НачалоЭлемента Или
ЧтениеXML.ЛокальноеИмя <> "_1CV8DtUD" Или
ЧтениеXML.URIПространстваИмен <> "http://www.1c.ru/V8/1CV8DtUD/" Тогда
Предупреждение("Неверный формат файла выгрузки", 10, "Ошибка загрузки!!!");
Возврат;
КонецЕсли;
Если Не ЧтениеXML.Прочитать() Или
ЧтениеXML.ТипУзла <> ТипУзлаXML.НачалоЭлемента Или
ЧтениеXML.ЛокальноеИмя <> "Data" Или
ЧтениеXML.URIПространстваИмен <> "http://www.1c.ru/V8/1CV8DtUD/" Тогда
Предупреждение("Неверный формат файла выгрузки", 10, "Ошибка загрузки!!!");
Возврат;
КонецЕсли;
// чтение и запись в ИБ записанных в выгрузке объектов
Если Не ЧтениеXML.Прочитать() Тогда
Предупреждение("Неверный формат файла выгрузки", 10, "Ошибка загрузки!!!");
Возврат;
КонецЕсли;
Загружено = 0;
УстановитьИспользованиеИтогов();
Пока ВозможностьЧтенияXML(ЧтениеXML) Цикл
ЗаписанноеЗначение = ПрочитатьXML(ЧтениеXML);
Попытка // Планы обмена свойства ОбменДанными не имеют
ЗаписанноеЗначение.ОбменДанными.Загрузка = Истина;
Исключение
КонецПопытки;
Попытка
Если Метаданные.Документы.Содержит(Метаданные.НайтиПоТипу(ТипЗнч(ЗаписанноеЗначение))) тогда
ЗаписанноеЗначение.Записать(РежимЗаписиДокумента.Проведение); //если документ то проводим
Иначе
ЗаписанноеЗначение.Записать();
КонецЕсли;
Исключение
Если Вопрос("При записи произошла ошибка:" + Символы.ПС + ОписаниеОшибки() + Символы.ПС + "Продолжит загрузку?", РежимДиалогаВопрос.ДаНет) = КодВозвратаДиалога.Нет Тогда
ВызватьИсключение;
КонецЕсли;
Загружено = Загружено - 1;
КонецПопытки;
Загружено = Загружено + 1;
Состояние("Загружено объектов - " + Загружено);
ОбработкаПрерыванияПользователя();
КонецЦикла;
СнятьИспользованиеИтогов();
Состояние();
// проверка формата файла обмена
Если ЧтениеXML.ТипУзла <> ТипУзлаXML.КонецЭлемента Или
ЧтениеXML.ЛокальноеИмя <> "Data" Или
ЧтениеXML.URIПространстваИмен <> "http://www.1c.ru/V8/1CV8DtUD/" Тогда
Предупреждение("Неверный формат файла выгрузки", 10, "Ошибка загрузки!!!");
Возврат;
КонецЕсли;
Если Не ЧтениеXML.Прочитать() Или
ЧтениеXML.ТипУзла <> ТипУзлаXML.КонецЭлемента Или
ЧтениеXML.ЛокальноеИмя <> "_1CV8DtUD" Или
ЧтениеXML.URIПространстваИмен <> "http://www.1c.ru/V8/1CV8DtUD/" Тогда
Предупреждение("Неверный формат файла выгрузки", 10, "Ошибка загрузки!!!");
Возврат;
КонецЕсли;
ЧтениеXML.Закрыть();
КонецПроцедуры