![]() |
|
Ошибка при удалении строки в табличной части | ☑ | ||
---|---|---|---|---|
0
LivingStar
15.10.19
✎
09:10
|
Есть форма документа. На ней выведены 3 табличные части.
При удалении строки из первой табличной части выходит ошибка. Индекс находится за границами массива. Так как там идет программная обработка удаления, строк из третей табличной части, по данным второй. Пытаюсь сейчас понять в чем причина ошибки, что неправильно сделано и как нужно. Подскажите пожалуйста предметно кому ясно в чем дело. ошибка возникает на втором цикле. &НаКлиенте Процедура НарушенияПередУдалением(Элемент, Отказ) Если Элементы.Нарушения.ТекущаяСтрока = Неопределено Тогда Возврат; КонецЕсли; Идентификатор = Элементы.Нарушения.ТекущиеДанные.ИдентификаторНарушения; ПодчиненныеСтроки = Объект.ПриостановленныеРаботы.НайтиСтроки(Новый Структура("ИдентификаторНарушения", Идентификатор)); Для Каждого ПодчиненнаяСтрока Из ПодчиненныеСтроки Цикл Объект.ПриостановленныеРаботы.Удалить(ПодчиненнаяСтрока); КонецЦикла; ПодчиненныеСтрокиФайловНарушений = Объект.ФайлыПоНарушениям.НайтиСтроки(Новый Структура("ИдентификаторНарушения", Идентификатор)); Для Каждого ПодчиненнаяСтрока Из ПодчиненныеСтрокиФайловНарушений Цикл Объект.ПриостановленныеРаботы.Удалить(ПодчиненнаяСтрока); КонецЦикла; КонецПроцедуры |
|||
1
vicof
15.10.19
✎
09:15
|
ну а ты блеать не можешь пять строчек кода сравнить?
|
|||
2
vicof
15.10.19
✎
09:16
|
Ошибка в том, что Приостановленные работы не то же самое, что файлы по нарушениям. Но тебе не понять.
|
|||
3
LivingStar
15.10.19
✎
09:25
|
(2) Это понятно ФайлыПоНарушениям - одна табличная часть.
ПриостановленныеРаботы - другая табличная часть. Что тогда тут хотели сделать, если это в принципе не возможно? Из одной табличной части пытаться удалить другую табличную часть. И как бы это можно было бы сделать правильно? |
|||
4
LivingStar
15.10.19
✎
09:27
|
Я правильно понимаю, что это в принципе не будет работать, если будет выполняться цикл?
ПодчиненныеСтрокиФайловНарушений = Объект.ФайлыПоНарушениям.НайтиСтроки(Новый Структура("ИдентификаторНарушения", Идентификатор)); Для Каждого ПодчиненнаяСтрока Из ПодчиненныеСтрокиФайловНарушений Цикл Объект.ПриостановленныеРаботы.Удалить(ПодчиненнаяСтрока); КонецЦикла; |
|||
5
dezss
15.10.19
✎
09:29
|
(4) Да тупо ошиблись.
Во втором цикле поменяй Объект.ПриостановленныеРаботы на Объект.ФайлыПоНарушениям |
|||
6
LivingStar
15.10.19
✎
09:33
|
(5) Ок просветление пришло, вроде как.
Спасибо. Посмотрю как пойдет дальше. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |