Выполнение операции невозможно так как строка была удалена 1с
Перейти к содержимому

Выполнение операции невозможно так как строка была удалена 1с

  • автор:

ЗУП 3.1.19.80 Ошибка при заполнении документа «Начисление зарплаты»

Описание:
При начислении зарплаты может возникать ошибка:

<Обработка.МенеджерРасчетаЗарплаты.МодульОбъекта(8796)>: Ошибка при получении значения атрибута контекста (ИдентификаторСтроки)

Выполнение операции невозможно, т.к. строка была удалена.

Способ обхода:
В меню «Все функции…» включить константу «Выполнять расчет зарплаты без оптимизации».
https://bugboard.v8.1c.ru/error/000051543

Можно попробовать зайти в Меню — Функции для технического специалиста и включить константу «Выполнять расчет зарплаты без оптимизации».
Единственный нюанс, из-за этой галочки могут другие ошибки появится.

Добрый вечер!
Извините за вмешательство в чужой вопрос. У нас появилась аналогичная проблема.
«Можно попробовать зайти в Меню — Функции для технического специалиста и включить константу «Выполнять расчет зарплаты без оптимизации».» — не помогло. Без ошибок заполняется , если через подбор небольшими «кусками» заполнять, человек по 50.
Если заполнять документ без указания подразделения, то появляется другое сообщение о ошибке. И эа ошибка сегодня зарегистрирована 1С.
Ошибка 50014421

Код ошибки: 50014421
Статус: Не указан Зарегистрирована: 08.11.2021
Продукт: «1С:ЗУП 3, 1С:ЗГУ 3»

Описание:
При заполнении документа «Начисление зарплаты и взносов» появляется сообщение об ошибке

Итератор для значения не определен

<ОбщийМодуль.УчетНДФЛ.Модуль(4892)>: Для каждого СтрокаТЗ Из ДоходыТекущегоРасчета Цикл

Способ обхода:
Кнопкой подбора добавлять в документ сотрудников по 30-40 человек.

На наш взгляд — эти ошибки «звенья одной цепи» . Причем на некоторых серверах эта ошибка не воспроизводится, подразделение на полторы тысячи человек заполняется без проблем, как и ранее.

Добрый день! Разработчики написали, что ошибку 50014421 исправили. Она возникала только при работе в сервисе 1С Fresh и похожих. Для исправления нужно перезайти в приложение.

Добрый день! Сегодня встречала ошибку 50014421, по ней на партнерском форуме написано, что помогает удаление зависшего фонового задания.

Добавить элемент в ТаблицуЗначений

Ругается, что Поле объекта не обнаружено (Контрагент). Что не так? Как правильно добавлять элемент?

Добавлено через 3 минуты
тьфу, блин. Поняла. )

Вывести ТаблицуЗначений на форму
Проблема следующая. Создала форму, на ней реквизит:ТаблицаДокумента, тип: ТаблицаЗначений.

Выгрузить ТаблицуЗначений в табличный документ
Понимаю, что вопрос глупый, но все же. Есть процедура; Процедура ВыбратьНоменклатуру()Экспорт .

Tklwegsd, а не подскажите ещё что это за такая забавная ошибка
"<Отчет.ПокрытиеРезервов.МодульОбъекта(823)>: Ошибка при получении значения атрибута контекста (Банк)
НайденнаяСтрока = ТЗСнятияСДепозитов.Найти(Строка.Банк, "Банк");
по причине:
Выполнение операции невозможно, т.к. строка была удалена.
"

Что это такое? Я ничего не удаляла, колонка Банк создана.

Сообщение от Тамика

раньше
в другой

а в этой слабО поставить брейк пойнтер ? )) и посмотреть, что он там с чем должен сравнить и найтить ?

Сообщение от Тамика

Создать список, ввести элемент и добавить этот элемент в начало списка
создать список,ввести элемент и добавить этот элемент в начало списка

Двусвязный список — Добавить элемент после заданного, удалить заданный элемент
Реализуйте списочную структуру в виде класса. работа состоит из двух частей: из класса (структуры.

Как добавить элемент в очередь, используя указатель на последний элемент?
Не пойму как добавить элемент в очередь используя указатель на последний элемент. Выполняю задание.

Обновление строк в табличной части обработки

Процедура ЗаказыПринятыеПриИзмененииФлажка(Элемент, Колонка)
Если ЭлементыФормы.ЗаказыПринятые.ТекущаяКолонка.Имя = "Отказ" Тогда
СтрокаТаблицы = ЭлементыФормы.ЗаказыПринятые.ТекущаяСтрока;
СсылкаНаДокумент = СтрокаТаблицы.Ссылка;
Режим = РежимДиалогаВопрос.ДаНет;
Ответ = Вопрос("Вы подтверждаете отмену заявки", Режим, 0);
Если Ответ = КодВозвратаДиалога.Да Тогда
ДокОбъект = СсылкаНаДокумент.ПолучитьОбъект();
ДокОбъект.СтатусЗаявки = Перечисления.СтатусЗаявки.Отменена;
ДокОбъект.Записать(РежимЗаписиДокумента.Проведение);
ВыполнитьОбновление();
Иначе
СтрокаТаблицы.Отказ = Ложь;
Возврат;
КонецЕсли;
КонецЕсли;
КонецПроцедуры

Т.е. происходит возможный отказ заявки. Так вот, вкупе с обработчиком ожидания порой происходят такие нюансы как вылет такой ошибки:

<Обработка.ОкноРаботыДиспетчера.Форма.Форма(586)>: Ошибка при установке значения атрибута контекста (Отказ): Выполнение операции невозможно, так как строка была удалена.
СтрокаТаблицы.Отказ = Ложь;

Выполнение операции невозможно так как строка была удалена 1с

(6) ДокументОбъект.<Имя документа> (DocumentObject.<Имя документа>)
Прочитать (Read)
Синтаксис:

Считывает данные документа из базы данных.

Сервер, толстый клиент, внешнее соединение, мобильное приложение(сервер).
Примечание:

Позволяет прочесть данные заново. Недопустим для нового объекта.
Пример:

(12) Ты умеешь нормально выражать свои мысли? Я спросил в чем разница между картинкой и текстом, информативность одинаковая.

(11) В модуле объекта документа, я СОБРАЛСЯ читать документ

(0)Это происходит потому, что при вызове Прочитать() перечитываются и пересоздаются в памяти все данные документа, в том числе и ТЧ, которую перебираешь.

Комиссия премии Дарвина берет на карандашик программистов, которые пишут такой код.

Процедура ОбработкаПроведения(Отказ, РежимПроведения)
НужноЗаписать=Ложь;
Если Состояние=Перечисления.CRM_ТипыСостоянийСобытий.Завершено тогда
Для каждого стр Из Распоряжения Цикл

Если стр.Задача.Выполнена=Ложь Тогда

Отказ = Истина;
Сообщение = Новый СообщениеПользователю;
Сообщение.Текст = "Для завершения все задачи в списке должны быть выполнены!";
Сообщение.Поле = "";
Сообщение.УстановитьДанные(ЭтотОбъект);
Сообщение.Сообщить();
прервать;
КонецЕсли;

КонецЦикла;
ИначеЕсли Распоряжения.Количество() > 0
И ( Состояние = Перечисления.CRM_ТипыСостоянийСобытий.Запланировано
ИЛИ Состояние = Перечисления.CRM_ТипыСостоянийСобытий.ВРаботе)Тогда

Для каждого стр Из Распоряжения Цикл

Если ЗначениеЗаполнено(стр.Задача) Тогда

Если
НЕ стр.Задача.ПринятаКИсполнению
И НЕ стр.Задача.Выполнена
И (стр.Задача.Описание<>стр.Описание
ИЛИ стр.Задача.Исполнитель<>стр.Исполнитель
ИЛИ стр.Задача.ДатаНачала<>стр.ДатаНачала
ИЛИ стр.Задача.СрокИсполнения<>стр.ДатаОкончания
ИЛИ стр.Задача.Важность<>стр.Важность
ИЛИ стр.Задача.Сложность<>стр.Сложность) Тогда

ОбъектЗадача = стр.Задача.ПолучитьОбъект();
ОбъектЗадача.Предмет = Ссылка;
ОбъектЗадача.ПредметСтрокой = CRM_БизнесПроцессыИЗадачиСервер.ПредметСтрокой(Ссылка);
ОбъектЗадача.Автор = ПараметрыСеанса.ТекущийПользователь;
ОбъектЗадача.Исполнитель = стр.Исполнитель;
ОбъектЗадача.Наименование = "Распоряжение " + объектЗадача.ПредметСтрокой;
ОбъектЗадача.Дата = ТекущаяДата();
ОбъектЗадача.ДатаНачала = стр.ДатаНачала;
ОбъектЗадача.Описание = стр.Описание;
ОбъектЗадача.CRM_Личная = Истина;
ОбъектЗадача.Важность = стр.Важность;
ОбъектЗадача.Сложность = Стр.Сложность;
ОбъектЗадача.СрокИсполнения = стр.ДатаОкончания;
Попытка
ОбъектЗадача.Записать();
Исключение
Отказ=Истина;
Сообщение = Новый СообщениеПользователю;
Сообщение.Текст = "Не удалось обновить информацию в задаче из "+Строка(стр.НомерСтроки)+" строки!";
Сообщение.Поле = "";
Сообщение.УстановитьДанные();
Сообщение.Сообщить();
КонецПопытки;
КонецЕсли;

ОбъектЗадача = Задачи.ЗадачаИсполнителя.СоздатьЗадачу();
ОбъектЗадача.Предмет = Ссылка;
ОбъектЗадача.ПредметСтрокой = CRM_БизнесПроцессыИЗадачиСервер.ПредметСтрокой(Ссылка);
ОбъектЗадача.Автор = ПараметрыСеанса.ТекущийПользователь;
ОбъектЗадача.Исполнитель = стр.Исполнитель;
ОбъектЗадача.Наименование = "Распоряжение " + объектЗадача.ПредметСтрокой;
ОбъектЗадача.Дата = ТекущаяДата();
ОбъектЗадача.ДатаНачала = стр.ДатаНачала;
ОбъектЗадача.Описание = стр.Описание;
ОбъектЗадача.CRM_Личная = Истина;
ОбъектЗадача.Важность = стр.Важность;
ОбъектЗадача.Сложность = Стр.Сложность;
ОбъектЗадача.СрокИсполнения = стр.ДатаОкончания;

ОбъектЗадача.АктивироватьИнтерактивно();
Попытка
ОбъектЗадача.Записать();
Прочитать();
стр = Распоряжения.Получить(ИндексСтроки);
стр.Задача = ОбъектЗадача.Ссылка;
НужноЗаписать=Истина;
Исключение
отказ = Истина;
Сообщение = Новый СообщениеПользователю;
Сообщение.Текст = "Не удалось создать задачу по "+Строка(стр.НомерСтроки)+" строке";
Сообщение.Поле = "";
Сообщение.УстановитьДанные();
Сообщение.Сообщить();
КонецПопытки;

Если НужноЗаписать Тогда
Записать(РежимЗаписиДокумента.Запись);
КонецЕсли;

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *