Добрый день!
При запуске только что добавленной в список резервной копии базы в режиме Предприятия выводится сообщение:
«Внимание!!!
При выполнении конвертации структуры информационной базы произошла критическая ошибка. Процедура конвертации не завершена.
Запустите Конфигуратор и завершите процедуру конвертации.» — С двумя кнопками.
После запуска в Конфигураторе ошибка больше не появляется и всё работает.
Если удалить папку с базой, не удаляя запись в стартовом окне, и заменить её другой копией базы, но с таким же названием папки, то и здесь всё работает без этой ошибки.
Отсюда делаю вывод, что «процедура конвертации» происходит в момент добавления записи базы в список стартового окна, но точно не уверен.
Подскажите пожалуйста, где найти причину ошибки.
Спасибо
Обратился клиент с просьбой оказать помощь в 1С. Проблема: перестал работать обмен ут10.2 — бп 3.0. Ошибка указана выше. Обмен не работает, данные накапливаются, надо что-то делать.
Посмотрел конфигурацию БП3.0, действительно в ней нет данных «Перечисление.СтатусОплатыСчетаПокупателю.НеОплачен».
Т.е. главная задача убрать из правил это предопределенное свойство.
С корректировкой правил обмена дел особо не имел. Поэтому потратил некоторое время на выгрузку правил из БП3.0.
Обработка из конвертации данных «Выгрузка правил синхронизации.epf» в этой конфигурации не работает.
Как я и думал «добрые» разработчики 1с спрятали выгрузку правил обмена в файл вот тут:
В итоге сохранил их в файл zip.
В zip архиве у нас 3 файла
Причем при попытке загрузить их обратно в конфигурацию через кнопку «Загрузить правила» получил тут же ошибку «Неправильно указаны реквизиты шапки объекта «Валюты». Реквизит «ПараметрыПрописиНаРусском» не существует.«
Придется еще и эту ошибку исправлять. С конвертацией данных я еще довольно поверхностно знаком, но причину этой ошибки узнал. В конфигурации БП нет такого реквизита. Видимо эти правила были загружены когда этот реквизит еще был, а потом при обновлении конфигурации его разработчики убрали.
Решил редактировать файлы блокнотом.
Итак исправляем ошибку «Неправильно указаны реквизиты шапки объекта «Валюты». Реквизит «ПараметрыПрописиНаРусском» не существует.«
Открываем блокнотом файл ExchangeRules.xml и ищем «ПараметрыПрописиНаРусском».
Видим, что правило очень хочет чтобы приемником тоже был «ПараметрыПрописиНаРусском», которого у нас нет. Поэтому этот фрагмент мы удаляем.
Пакуем наши 3 файла в zip и пытаемся загрузить — все грузится без ошибок.
При загрузке правил еще возникала ошибка «Конфликт блокировок при выполнении транзакции«.
Решил так. Выгнал всех, запустил конфигуратор. Из конфигуратора 1с-предприятие и сразу грузить правила. Ошибка не появлялась.
Теперь исправим ошибку «Предопределенное значение «Перечисление.СтатусОплатыСчетаПокупателю.НеОплачен» не найдено«.
В конвертации данных нашел что вот в этом месте возникает ошибка
Но править решил через любимый блокнот.
Вот это место, я его просто закомментировал.
Вначале пытался просто сделать Перечисление.СтатусОплатыСчета, но БП начало при обмене падать с ошибкой что нет метода установитьСтатусДокумента.
Сохранил изменения, загрузил эти 3 файла в архив zip
и загрузил в БП
После этого обмен заработал без ошибок.
Исправленные правила также необходимо загрузить в УТ10.3
p.s. Понял, что необходимо срочно начать изучение КД.
Описание ошибки
Я конвертировал конфигурацию ДО КОРП 2.1.11.5.69.0 для edt 2021.2.10+2 все прошло нормально. Я могу запускать приложение, вносить изменения.
Но, если я например создаю новую ветку, и для этой новой ветки выбираю новую пустую базу, то при попытке обновить эту базу, получаю ошибку
Ссылка на неизвестное поле или поля не существует — BusinessProcess.Исполнение.TabularSection.ДополнительныеРеквизиты.StandardAttribute.Ref
Ссылка на неизвестное поле или поля не существует — BusinessProcess.Исполнение.TabularSection.ДополнительныеРеквизиты.Attribute.Свойство
Ссылка на неизвестное поле или поля не существует — BusinessProcess.Исполнение.TabularSection.ДополнительныеРеквизиты.Attribute.Значение
и так для каждого бизнесс процесса
Если я пытаюсь выгрузить файлы из проекта командой ring edt workspace export, то выгрузка проходит успешно, но при загрузке в новую конфигурацию та же ошибка.
Таким образом, проект в edt нормально работает только с той базой, из которой он и был сконвертирован
Как воспроизвести
- Взять базу ДО КОРП 2.1.11.5.69.0
- Создать новый проект edt
- импортировать проект в edt из этой базы
- Создать новую ветку, указать для нее чистую базу, попробовать обнвить эту базу данными проекта
- Или попробовать конвертировать проект ring edt workspace export в заданный каталог, и попробовать полученные файлы загрузить в новую конфигурацию
Скриншоты
No response
Ожидаемое поведение
Конвертация будет проходить без ошибок
Лог рабочей области
log.txt
trace.log
Версия 1С:EDT
Ruby 2021.2.10
Операционная система
Windows
Установленные плагины
No response
Дополнительная информация
No response
Значение не является значением объектного типа (ИмяТипа)
Данная ошибка наблюдается при загрузке. В моём случае конвертация была для стандартного обмена, потому ошибка полностью выглядит так:
{Обработка.КонвертацияОбъектовИнформационныхБаз.МодульОбъекта(6971)}: Значение не является значением объектного типа (ИмяТипа)
Если пытаться вычислить причину через отладчик, то там в процедуре ниже переменная ТипОбъекта принимает значение Строка:
Процедура ОпределитьДополнительныеПараметрыПоискаОбъекта(СвойстваПоиска, ТипОбъекта, СтруктураСвойств, ИмяТипаОбъекта, ЭтоОбъектДокумент) Если ТипОбъекта = Неопределено Тогда
// попробуем определить тип по свойствам поиска
ИмяТипаПриемника = СвойстваПоиска["{ИмяТипаВИБПриемнике}"];
Если ИмяТипаПриемника = Неопределено Тогда
ИмяТипаПриемника = СвойстваПоиска["{ИмяТипаВИБИсточнике}"];
КонецЕсли;
Если ИмяТипаПриемника <> Неопределено Тогда
ТипОбъекта = Тип(ИмяТипаПриемника);
КонецЕсли;
КонецЕсли;
СтруктураСвойств = Менеджеры[ТипОбъекта];
ИмяТипаОбъекта = СтруктураСвойств.ИмяТипа;
КонецПроцедуры
Чтоб выяснить причину, рекомендую в отладке просмотреть стек вызовов и определить, какое ПКО задействовано. Наиболее вероятно, что не задано значение свойства, которое должно конвертироваться посредством данного ПКО.