Ошибка "Выполнение операции невозможно, так как строка была удалена"
(6) ДокументОбъект.<Имя документа> (DocumentObject.<Имя документа>)
Прочитать (Read)
Синтаксис:
Считывает данные документа из базы данных.
Сервер, толстый клиент, внешнее соединение, мобильное приложение(сервер).
Примечание:
Позволяет прочесть данные заново. Недопустим для нового объекта.
Пример:
(12) Ты умеешь нормально выражать свои мысли? Я спросил в чем разница между картинкой и текстом, информативность одинаковая.
(11) В модуле объекта документа, я СОБРАЛСЯ читать документ
(0)Это происходит потому, что при вызове Прочитать() перечитываются и пересоздаются в памяти все данные документа, в том числе и ТЧ, которую перебираешь.
Комиссия премии Дарвина берет на карандашик программистов, которые пишут такой код.
Процедура ОбработкаПроведения(Отказ, РежимПроведения)
НужноЗаписать=Ложь;
Если Состояние=Перечисления.CRM_ТипыСостоянийСобытий.Завершено тогда
Для каждого стр Из Распоряжения Цикл
Если стр.Задача.Выполнена=Ложь Тогда
Отказ = Истина;
Сообщение = Новый СообщениеПользователю;
Сообщение.Текст = "Для завершения все задачи в списке должны быть выполнены!";
Сообщение.Поле = "";
Сообщение.УстановитьДанные(ЭтотОбъект);
Сообщение.Сообщить();
прервать;
КонецЕсли;
КонецЦикла;
ИначеЕсли Распоряжения.Количество() > 0
И ( Состояние = Перечисления.CRM_ТипыСостоянийСобытий.Запланировано
ИЛИ Состояние = Перечисления.CRM_ТипыСостоянийСобытий.ВРаботе)Тогда
Для каждого стр Из Распоряжения Цикл
Если ЗначениеЗаполнено(стр.Задача) Тогда
Если
НЕ стр.Задача.ПринятаКИсполнению
И НЕ стр.Задача.Выполнена
И (стр.Задача.Описание<>стр.Описание
ИЛИ стр.Задача.Исполнитель<>стр.Исполнитель
ИЛИ стр.Задача.ДатаНачала<>стр.ДатаНачала
ИЛИ стр.Задача.СрокИсполнения<>стр.ДатаОкончания
ИЛИ стр.Задача.Важность<>стр.Важность
ИЛИ стр.Задача.Сложность<>стр.Сложность) Тогда
ОбъектЗадача = стр.Задача.ПолучитьОбъект();
ОбъектЗадача.Предмет = Ссылка;
ОбъектЗадача.ПредметСтрокой = CRM_БизнесПроцессыИЗадачиСервер.ПредметСтрокой(Ссылка);
ОбъектЗадача.Автор = ПараметрыСеанса.ТекущийПользователь;
ОбъектЗадача.Исполнитель = стр.Исполнитель;
ОбъектЗадача.Наименование = "Распоряжение " + объектЗадача.ПредметСтрокой;
ОбъектЗадача.Дата = ТекущаяДата();
ОбъектЗадача.ДатаНачала = стр.ДатаНачала;
ОбъектЗадача.Описание = стр.Описание;
ОбъектЗадача.CRM_Личная = Истина;
ОбъектЗадача.Важность = стр.Важность;
ОбъектЗадача.Сложность = Стр.Сложность;
ОбъектЗадача.СрокИсполнения = стр.ДатаОкончания;
Попытка
ОбъектЗадача.Записать();
Исключение
Отказ=Истина;
Сообщение = Новый СообщениеПользователю;
Сообщение.Текст = "Не удалось обновить информацию в задаче из "+Строка(стр.НомерСтроки)+" строки!";
Сообщение.Поле = "";
Сообщение.УстановитьДанные();
Сообщение.Сообщить();
КонецПопытки;
КонецЕсли;
ОбъектЗадача = Задачи.ЗадачаИсполнителя.СоздатьЗадачу();
ОбъектЗадача.Предмет = Ссылка;
ОбъектЗадача.ПредметСтрокой = CRM_БизнесПроцессыИЗадачиСервер.ПредметСтрокой(Ссылка);
ОбъектЗадача.Автор = ПараметрыСеанса.ТекущийПользователь;
ОбъектЗадача.Исполнитель = стр.Исполнитель;
ОбъектЗадача.Наименование = "Распоряжение " + объектЗадача.ПредметСтрокой;
ОбъектЗадача.Дата = ТекущаяДата();
ОбъектЗадача.ДатаНачала = стр.ДатаНачала;
ОбъектЗадача.Описание = стр.Описание;
ОбъектЗадача.CRM_Личная = Истина;
ОбъектЗадача.Важность = стр.Важность;
ОбъектЗадача.Сложность = Стр.Сложность;
ОбъектЗадача.СрокИсполнения = стр.ДатаОкончания;
ОбъектЗадача.АктивироватьИнтерактивно();
Попытка
ОбъектЗадача.Записать();
Прочитать();
стр = Распоряжения.Получить(ИндексСтроки);
стр.Задача = ОбъектЗадача.Ссылка;
НужноЗаписать=Истина;
Исключение
отказ = Истина;
Сообщение = Новый СообщениеПользователю;
Сообщение.Текст = "Не удалось создать задачу по "+Строка(стр.НомерСтроки)+" строке";
Сообщение.Поле = "";
Сообщение.УстановитьДанные();
Сообщение.Сообщить();
КонецПопытки;
Если НужноЗаписать Тогда
Записать(РежимЗаписиДокумента.Запись);
КонецЕсли;
Выполнение операции невозможно так как строка была удалена 1с
В «Подбор и обработка объектов БД» выборка документов, участвующих в партионном учете, (несколько тысяч объектов за период, который уже закрыт для изменений документов) запускаю обработку проведение:
иногда практически сразу (после нескольких десятков документов), а иногда под конец массива ошибка:
«Выполнение операции невозможно, т.к. строка была удалена»
(см. скриншот).
Можно просто вернуться «снять успешные» и толкнуть дальше перепроведение.
Закономерности появления ошибки пока не выявил.
На момент написания вышла версия ИР 4.17.1p, но почитав список обновлений не нашел описания исправления чего-то подобного.
Ошибка Обработка.НачислениеПроцентом
Добрый день!
Платформа 1С:Предприятие 8.3 (8.3.15.1830), КАМИН:Расчет заработной платы. Версия 3.0 (3.0.107.5)
проблема имеет место с Версии 3.0 (3.0.107.4)
Ошибка при заполнении документа Начисление простое, используя помощник Начисление процентом — добавление сотрудника.
"<Обработка.НачислениеПроцентом.Форма.Форма.Форма(1984)>: Ошибка при получении значения атрибута контекста (Процент)
п_Стр.Сумма = Окр(п_Стр.База*п_Стр.Процент/100,ОкруглениеСуммы);
по причине:
Выполнение операции невозможно, так как строка была удалена."
Проблема в обработке Начисление процентом модуль формы
Процедура РассчитатьТаблицу(МассивСтрок,п_ПараметрНоваяСтрока = Ложь)
строка 1857
л_Строка = МассивСтрок[0];
РассчитатьСтроку(л_Строка);
л_Строка ссылается на удаленную строку в ТаблицаОбработки. Строка удаляется в теле процедуры ОпределимБазуПоСтроке(л_Массив, МассивСтрок) ранее.
Дополнительно возможна некорректная работа модуля в Процедура ОпределимБазуПоСтроке(п_СпСотр = Неопределено,п_МассивСтрокРасчета = Неопределено)
строка 1149
Если ФлагПоДокументу Тогда
переменная ФлагПоДокументу содержит значение не булево, а цифру.
258
487
Здравствуйте,
На релизе КАМИН:Расчет заработной платы. Версия 3.0 (3.0.107.5) ошибка не воспроизводится.
Выполнение операции невозможно так как строка была удалена 1с
Ошибки обновлятора
На этой странице я буду описывать наиболее частые ошибки при использовании моей программы «Обновлятор-1С: групповое (пакетное) обновление всех баз за один раз».
Первый и самый простой вариант
Суть ошибки и инструкция для её исправления указаны прямо в отчёте по операции. Ну, например, мы указали неверные логин и пароль для базы и тогда в отчёте будут такие строки:
Тут всё просто — читаем, переходим по ссылкам, исправляем и пробуем заново.
Второй и самый сложный вариант
Ошибка произошла на стороне 1с и обновлятор нам прямо об этом и говорит вот такой строчкой в отчёте:
В этом случае смотрим отчёт чуть выше и ищем там зелёные строки , начинающиеся с символов [1c] .
Эти строки передала обновлятору сама платформа 1с и именно их нужно анализировать.
Ниже я подготовил список наиболее частых ошибок от платформы 1с (те, что зелёным цветом) и способы их устранения:
Какие ещё есть варианты проблем
Ниже я перечислю ответы лишь на самые важные вопросы. Если вашей проблемы здесь нет — воспользуйтесь поиском по сайту (форма ниже) , при этом:
- если речь об ошибке — формулируйте поисковый запрос, включая строку с ошибкой
- в начале поискового запроса добавьте фразу «обновлятор 1с»
- вот пример хорошего запроса «обновлятор 1с ошибка не удалось снять установленную блокировку новых сеансов с базой»
А вот ответы на самые важные вопросы:
Подключение к базе:
Другие материалы по обновлятору:
Мне ничего не помогло (или проблема в другом) — хочу написать вам письмо
Видимо ваш случай какой-то особенный и я с удовольствием вам помогу, но со своей стороны прошу вас выполнить ряд моих требований:
1. Обязательно прочтите условия оказания технической поддержки: ссылка.
2. В начале письма сразу укажите, что уже читали «Ошибки обновлятора» и это вам не помогло.
3. Приложите к письму полный отчёт по операции из обновлятора (в виде отдельного файла, не нужно вставлять отчёт в текст самого письма). Отчёт можно сохранить в отдельный файл, нажав на нём правой кнопкой мыши и выбрав соответствующий пункт открывшегося контекстного меню.
4. Если есть возможность повторить ошибку, то запустите операцию в режиме отладки. Для этого запустите операцию, удерживая на клавиатуре клавишу «Shift«. В результате у вас получится более детальный отчёт, который также нужно приложить к письму.
5. Приложите к письму снимки экрана настроек обновлятора (всех или тех, что вы считаете важными), а также закладок в «свойствах проблемной базы«. О том как делать снимки рассказано здесь.
6. Если проблема в каком-то конкретном обновлении (например, оно не находится или выдаётся ошибка при его загрузке в базу) — сожмите его в архив и приложите к письму. О том как загрузить большой архив в интернет — рассказано здесь (с пункта 5) на примере базы 1с.
Информации я прошу, конечно, много и для начинающих пользователей собрать и прислать её мне может быть не так легко. Но в этом случае я прошу вас обратиться к более опытным товарищам, чтобы они вам помогли.