Обманчивая ошибка "Данные были изменены или удалены другим пользователем"

0. rinat_alp2 51 25.03.18 13:10 Сейчас в теме
В данной статье описывается такая причина возникновения сообщения об ошибке «Данные были изменены или удалены другим пользователем», расследование которой может завести в тупик.

Перейти к публикации

Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. vasilev2015 1894 25.03.18 21:07 Сейчас в теме
При отмене транзакции отменяются только изменения СУБД, а изменения локальных переменных, в том числе объектного типа остаются. Так и есть. Чтобы не использовать запись два раза, используйте процедуру "УстановитьСсылкуНового". Не делайте вложенных транзакций записи - используйте фоновые задания. (Все, что смог сказать полезного)
Светлый ум; A_Max; Shmell; nvv1970; +4 Ответить
3. rinat_alp2 51 26.03.18 12:55 Сейчас в теме
(1) Спасибо, добавил исправление через "ПолучитьСссылку".
4. rinat_alp2 51 26.03.18 13:02 Сейчас в теме
(1) Думаю было бы удобнее, если бы платформа выдавала сообщение об ошибке:
"Операция не может быть выполнена из-за несоответствия версии или отсутствия записи базы данных (возможно, запись была изменена или удалена)", не так конкретно:
"Данные были изменены или удалены другим пользователем".
2. nvv1970 26.03.18 08:52 Сейчас в теме
Обманчивая ошибка идёт из недостатка знаний и применения неправильных методов.
Все работает именно так как и должно работать.
sukorskis; Waanneek; Shmell; +3 Ответить
5. user970589 3 29.09.19 09:20 Сейчас в теме
(2)у меня в типовой базе УТ11 такая ошибка вылетает. в понедельник выгоню всех лишних и повторю, но сдается, что толку может и не быть. Посмотрим завтра.
6. Работник 83 07.04.20 10:39 Сейчас в теме
У меня случилась такая оказия. Только случай другой. Никто ничего не создавал паралельно. Просто документ пересчета товаров с несколькими тысячами позиций перестал записываться после очередной порции внесения данных. Пользователь не обратил внимания на это сообщение и продолжил. Когда уже половину данных внес, давай беспокоиться и звонить.

Что я придумал в этой ситуации чтобы не потерять несколько часов работы инвентаризации.

Удалось вывести список таблицной части в табличный документ штатной командой меню. Сохранил этот список в файл mxl (можно и excel). Потом создал новый документ пересчета с той же датой/временем и настройками. Штатной обработкой от 1С "...заполнение табличных частей..." загрузил данные из сохраненного файла в новый документ.

На все про все ушел 1час на осознание происшедшего, обдумыванием что сделать, загрузкой и контрольной сверкой с данными из глючного документа. Так же пришлось через универсальный отчет посмотреть какие данные записываются в скрытые колонки.
7. sttt 113 08.06.20 12:13 Сейчас в теме
(6)
ВыгрузкаДанных = Внешние Обработки.Создать("http://devtool1c.ucoz.ru/load/0-0-0-16-20", ложь);
Выгрузка Данных.СохранитьЗначениеВФайлЛкс(тз, ПутьФайла, Истина);

Пару минут работы))
Оставьте свое сообщение
Вопросы с вознаграждением