Ошибка SDBL: Выход за пределы размерности результата

История по устранению этой ошибки началась пару недель назад. При очередном сохранении и обновлении конфигурации, конфигуратор надолго задумался, а потом неожиданно выдал: «Ошибка SDBL: Выход за пределы размерности результата». На помощь был призван Google, было найдено куча хлама, холивара и пр. Покопавшись в этой куче бесполезной информации, я опробовал несколько обычно действенных методов:

  1. Ребут сервиса сервера 1с
  2. Тестирование и исправление ИБ
  3. Выгрузка в DT и загрузка его обратно
  4. Установка обновления платформы
  5. Очистить таблицы MSSQL dbo._ConfigChngR и dbo._ConfigChngR_ExtProps (этот способ не пробовал)

С первого по третий пункт не дал результата (чуть ниже я напишу, дополнение к первому пункту, которое решило проблему).

В рекомендациях на форумах было найдено:

  • Удалить регистрацию изменений, если база Распределенная (т.н. РБД), т.е. имеет подчиненные узлы.
  • Обновить платформу 1с

Я начал с первого, т.к. база была распределенная, плюс совсем недавно было создано еще пару планов обменов. Очистив узлы с помощью обработки: РегистрацияИзмененийДляОбмена82.epf, я не получил нужного решения проблемы, ошибка осталась.

Пришлось ставить новую платформу, т.к. это было последнее средство, которое могло помочь. В рекомендациях было сказано: » в 15 релизе 1с 8.2 эта ошибка была исправлена», но у меня уже стояла платформа 8.2.18.104, заглянув в раздел users.v8, я скачал обновление 8.2.19.68.

И вот оно счастье, нажав f5 в конфигураторе, конфигурация обновилась.

Счастье длилось не долго, пару недель, а точнее до сегодняшнего утра. Поставив вечером в пятницу конфигуратор на обновление, в понедельник утром я обнаружил ту же самую ошибку.

Решений не было. Началась паника, т.к. был последний релиз, обновлять было нечего. Снова, с дрожащими руками и надеждой в сердце, обратился к форумам и поисковику. Было найдено решение для другой конфигурации: бухгалтерия предприятия. «Необходимо, удалить все общие реквизиты из существующих объектов.» Задал Поиск общих реквизитов по ссылкам: Общие реквизиты не использованы ни в одном объекте конфигурации. Значит решение не применимо в моей ситуации.

Решение: Случайным образом я решил остановить полностью все процессы связанные с 1с (скрипт приведу ниже), а потом запустил обратно. И, о, чудо! Конфигурация обновилась, ошибки больше не было.

Скрипт остановки сервисов:

@taskkill /IM rmngr.exe /f
@net stop «1C:Enterprise 8.2 Server Agent»
@net stop «SQLSERVERAGENT»
@net stop «MSSQLSERVER»
@exit

Скрипт запуска сервисов:

@net start «1C:Enterprise 8.2 Server Agent»
@net start «MSSQLSERVER»
@net start «SQLSERVERAGENT»
@exit

Создаем текстовый файл, пишем туда текст скрипта, сохраняем и меняем расширение на bat.

Запускаем файл от имени администратора.

Конфигурация, на которой возникла проблема:

  • MS SQL 2008 R2
  • сервер 1с 8.2.19.68( изначально 8.2.18.104)
  • конфигурация УТ 11.1.1.17
  • база данных распределенная

Оставить комментарий