[10689] Ошибка обработки изменения состояния

Версия ЛЭРС УЧЁТ: 3.49.1
Сервер БД: PostgreSQL
Сотрудник вносил новые единицы оборудования + добавлял новые варианты исполнения у существующих моделей. Вдруг начали валиться ошибки и не открываются справочники.

Необработанная ошибка в сервере. "Ошибка обработки изменения состояния.". Разработчикам был отправлен отчет об ошибке. Sequence contains no matching element

в мобильном приложении всё работает. Рабочее место и Веб интерфейс ни в какую.

Под пытками сотрудник сознался, что пользовался функцией “замена оборудования” не по назначению, а именно:

  • При создании оборудования получает ошибку “оборудование с таким серийным номером уже существует”
  • Добавляет “0” в начало серийного номера
  • Пользуется функцией замена оборудования, указывая серийный номер без “0”
  • Вуаля.

Также он заметил, что из справочника оборудования пропадают какие-то записи, но не придал этому значения.

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

Пока можно сказать, что ошибка связана с вариантом исполнения. Тут, возможно, наша проблема когда в устройстве остаётся ссылка на уже удалённый вариант.

В принципе, резервная копия не нужна. Ошибки мы видим, других вариантов нет. У вас удалили вариант исполнения, ссылка на который осталась в базе данных. Проблема возникает только с Postgres. Исправим в 3.49.2.

Нашёл в базе 2 единицы оборудования с несуществующими вариантами исполнения. Установил им значение “NULL” - проблема решилась.
Прошу в будущем добавить проверку для защиты от подобной ошибки.

Уже сделано. Будет включено в следующее обновление.

@lersbot update 3.49.2