#0
by kissolo
Подскажите, плиз. Только начал изучать 8ку. Задание - выбрать в обработке документ, удалить из табличной части строки, подходящие по условию. Но строка не удаляется. "Объект недоступен для изменения." ЧЯДНТ?
#8
by ДенисЧ
А теперь удалим строку из ссылки. Это будет упражнением на дом, когда мы протрезвеем...
#13
by Chameleon1980
Объект.ДокументРеализация.Товары кто это? Тебе правильно говорили, что нужно получитьОбъект чтобы у него что-то менять. Если ты имеешь ссылку на документ получи объект вот так: ДокОбъект=СсылкаНаДок.ПолучитьОбъект поработай с ним (именно с ДокОбъект) - поудаляй там. Потом сохраняй именно ДокОбъект как ты будешь удалять строки это уже второй вопрос, но первоначальный твой подход неверный. т.к. после удаления даже первой ненужной строки у тебя нарушается цикл для каждого. Есть разные способы.
#16
by kissolo
ДокументРеализация - это реквизит обработки, его тип - ДокументСсылка.РеализацияТоваровУслуг. Объект.ДокументРеализация.Товары - это соотв-нно табличная часть документа. (Наверное надо было сразу сказать, это типовая БП).
#17
by ДенисЧ
"это реквизит обработки, его тип - ДокументСсылка" Сколько дятла не корми, а у слона всё-равно толще....
#18
by kissolo
Тормознул. Сейчас поправил код, строка удалилась, док записался. вот код: Осталось проверить, как будет удалять строки в середине таблицы - не будет ли пропускать строки после удаления строки...
#21
by kissolo
Ну, собссно, я и не сомневался, в 7ке так же пропускает следующую строку после удаленной. Спасибо, это рабочий вариант! :) Скажите, а если по моему варианту работать, но спозиционироваться после удаления на одну строку назад - такое возможно? Какой командой?
#22
by Управление торговлей
Вот код: сообщить("Количество строк документа: "+д.товары.Количество); Количество строк документа: 8 Количество после удаления: 4 Пропусков нет
#23
by kissolo
Угу. А если будет подряд две строки с Количеством=2? Или три? Если они идут хотя бы через одну - то да, все нормально. А вот если подряд хотя бы две - то увы, облом. Тут, по идее, как вариант - множественное прохождение цикла по строкам, когда при хотя бы единственном удалении - включать флажок повторного прохождения, и опять крутить цикл... Но я хотел обойтись без этого, а просто после удаления строки спозиционироваться на текущейстроке - 1. как-то так. Просто синтаксис в 8ке не знаю еще, вот и спрашиваю - такое возможно?...
#24
by GreatOne
Немного потерял суть вопроса, но думаю, что дело все еще в удалении строк из тч, удовлетворяющему некоему условию. ""Просто синтаксис в 8ке не знаю еще, вот и спрашиваю - такое возможно?... Для синтаксиса есть синтаксис помощник. Для много другого - глобальный поиск. Вот к примеру сочетание букв "удалитьстрок" в глобальном поиске открывает кучу методов, первый в списке найденных является решением вопроса.
#27
by Управление торговлей
Да хоть в порядке чисел Фибоначчи. При удалении строк выборка не сбивается.
#28
by Управление торговлей
Опровергаю, был не прав. Затупил и имел в виду обработку результата .найтистроки
#29
by kissolo
Нет, как удалить строки, я уже понял, вопрос еще один задал - как спозиционироваться на конкретной строке в таблице (это если использовать мой вариант кода из )? Вы уже на вопрос ответили в коде. про синтаксис помощник знаю, но как он поможет, если не знаю, как пишется команда? (Посмотрел на него, там иная совершенно структура, по сравнению с 7кой, к ней еще привыкнуть надо). Я про позиционирование на конкретной строке. За "глобальный поиск" спасибо - редко пользовался, забыл тут использовать. и Вопрос. Вот у вас Инд = 2. Вы удалили эту строку. Теперь на следующем шаге цикла, с Инд=3, у вас какая строка будет? ИМХО (исходя из опыта на 7ке), это уже не 4я оригинальная, а 5я, т.е. одну строку Вы пропустили из проверки. Я не прав? Туда. Пытался сам справиться, но слишком мало знаю :( А что, Вы там работаете? Вот то-то и оно :) Получается, что надо использовать счетчик, как в или , и при удалении строки - уменьшать его на единицу.
#30
by Крошка Ру
>>Вот у вас Инд = 2. Вы удалили эту строку. Теперь на следующем шаге цикла, с Инд=3, у вас какая строка будет? ИМХО (исходя из опыта на 7ке), это уже не 4я оригинальная, а 5я, т.е. одну строку Вы пропустили из проверки. Я не прав? Цикл перебирает строки с конца. Удалил 4-ю строку - цикл переходит на 3-ю и пофиг, что вместо удаленной 4-й встала 5-я.
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям
Похожие вопросы 1С
- Удаление помеченных на удаление документов
- ТЗ. Удаление строки сдвигает строки?
- Удаление помученных на удаление элементов справочников
- Как запретить удаление документа (или пометку на удаление) ?
- Роль: удаление и интерактивное удаление
- Удаление строки в табличной части документа
- Удаление нулевой строки табличной части документа из файловой базы
- Динамический список - выделенные строки - суммирование содержимого строки..
- Удаление помеченных на удаление
- v7: Медленное удаление помеч.на удаление документов после обрезки базы
- v7: Перебрать строки табличной части документа. Реквизит строки с типом - Документ.
- Выбрать в табличной части документа элемент табличной части справочника
В этой группе 1С
- Веб-сервис Mobile 1c
- Восстановление поврежденного txt файла
- Акт сверки по счетам-фактурам для Бухгалтерии 3.0
- http-сервис в 1С - создал, работает, но есть вопрос:
- C#. Не могу подключить к WPF пространство System.Windows
- v7: Как в цикле выполнять действие через определенное количество шаков цикла ??
- И снова ошибка SDBL: Выход за пределы размерности результата
- Настройка RemoteApp в домене
- УТ 11. Добавить запись в справочник партнеры программно
- УТ11, бонусная система - начисление суммой.
- Вывод изображения из дополнительного реквизита! (2)
- Зуп Изменился банк и карт счета
- Сканер ШК в БП3
- Обособленный учёт
- УПП. Расчет себестоимости движения по регистрам затраты на выпуск - партии товар
- Как настроить продажу мерных товаров в 1с УТ чтобы потом они проходили во Frontol
- Отваливается сервер 1С, никто не в курсе, почему это может происходить?
- Замена единиц измерения в БП 3.0
- Как отключить партионный учет в Управлении Торговлей 10.3?
- Снятие фонового задания без перезагрузки сервера