1С, Табличная часть документа, Строка табличной части документа, корректировка, поиск строки, перебор, обход, цикл, Текущая строка табличной части документа, Удалить строку табличной части документа
//Корректировать строку табличной части документа
//"ОС" - наименование табличной части
Тч = Док.ОС;
Тч[0].НалоговаяГруппаОС = Справочники.НалоговыеГруппы.НайтиПоНаименованию("Четвертая (с 2004 г)");
Док.Записать(РежимЗаписиДокумента.Проведение);
//------------------------------------------------------------------
//Поиск в табличной части документа
//"Платежи" - наименование табличной части
Сообщить(Док.Платежи.Найти(ТоЧтоНужноНайти, "РеквизитВТабЧастиГдеИскатьЗначение")["РеквизитВТабЧастиОткудаВзятьЗначение"]);
//------------------------------------------------------------------
//Cделать текущей строку табличной части формы документа
//"Выписки" - наименование табличной части
ЗаписьВыписка = ДокБанковскаяВыписка.Выписки.Добавить();
ЗаписьВыписка.Реквизит1 = "Реквизит1";
ЗаписьВыписка.Реквизит2 = "Реквизит2";
ФормаВыписка = ДокБанковскаяВыписка.ПолучитьФорму("ФормаДокумента");
ФормаВыписка.ЭлементыФормы.Выписки.ТекущаяСтрока = ЗаписьВыписка;
ФормаВыписка.Открыть();
//------------------------------------------------------------------
//Удалить записи из табличной части документа с помощью структуры
Отбор = Новый Структура;
Отбор.Вставить("КодОбъекта", ЗначениеКодОбъекта);
Документ = Документы.ПриходнаяНакладная.НайтиПоНаименованию("Наименование").ПолучитьОбъект();
//Удаляем записи табличной части
ЗаписиТабЧасти = Документ["НазваниеТабЧасти"].НайтиСтроки(Отбор);
Для Каждого ЗаписьТабЧасти Из ЗаписиТабЧасти Цикл
Документ["НазваниеТабЧасти"].Удалить(ЗаписьТабЧасти);
КонецЦикла;
//------------------------------------------------------------------
//Удалить строки (записи) из табличной части документа в цикле (при переборе)
Док = ДокБанковскаяВыписка.ПолучитьОбъект();
КоличествоЗаписей = Док.Выписки.Количество();
КоличествоОборотов = 0;
Для ъ = 0 По КоличествоЗаписей - 1 Цикл
КоличествоОборотов = КоличествоОборотов + 1;
Если Док.Выписки[ъ].ИмяПоля = Истина Тогда
Док.Выписки.Удалить(Док.Выписки[ъ]);
ъ = ъ - 1;
КонецЕсли;
Если КоличествоОборотов = КоличествоЗаписей Тогда
Прервать;
КонецЕсли;
КонецЦикла;
Док.Записать();
//"ОС" - наименование табличной части
Тч = Док.ОС;
Тч[0].НалоговаяГруппаОС = Справочники.НалоговыеГруппы.НайтиПоНаименованию("Четвертая (с 2004 г)");
Док.Записать(РежимЗаписиДокумента.Проведение);
//------------------------------------------------------------------
//Поиск в табличной части документа
//"Платежи" - наименование табличной части
Сообщить(Док.Платежи.Найти(ТоЧтоНужноНайти, "РеквизитВТабЧастиГдеИскатьЗначение")["РеквизитВТабЧастиОткудаВзятьЗначение"]);
//------------------------------------------------------------------
//Cделать текущей строку табличной части формы документа
//"Выписки" - наименование табличной части
ЗаписьВыписка = ДокБанковскаяВыписка.Выписки.Добавить();
ЗаписьВыписка.Реквизит1 = "Реквизит1";
ЗаписьВыписка.Реквизит2 = "Реквизит2";
ФормаВыписка = ДокБанковскаяВыписка.ПолучитьФорму("ФормаДокумента");
ФормаВыписка.ЭлементыФормы.Выписки.ТекущаяСтрока = ЗаписьВыписка;
ФормаВыписка.Открыть();
//------------------------------------------------------------------
//Удалить записи из табличной части документа с помощью структуры
Отбор = Новый Структура;
Отбор.Вставить("КодОбъекта", ЗначениеКодОбъекта);
Документ = Документы.ПриходнаяНакладная.НайтиПоНаименованию("Наименование").ПолучитьОбъект();
//Удаляем записи табличной части
ЗаписиТабЧасти = Документ["НазваниеТабЧасти"].НайтиСтроки(Отбор);
Для Каждого ЗаписьТабЧасти Из ЗаписиТабЧасти Цикл
Документ["НазваниеТабЧасти"].Удалить(ЗаписьТабЧасти);
КонецЦикла;
//------------------------------------------------------------------
//Удалить строки (записи) из табличной части документа в цикле (при переборе)
Док = ДокБанковскаяВыписка.ПолучитьОбъект();
КоличествоЗаписей = Док.Выписки.Количество();
КоличествоОборотов = 0;
Для ъ = 0 По КоличествоЗаписей - 1 Цикл
КоличествоОборотов = КоличествоОборотов + 1;
Если Док.Выписки[ъ].ИмяПоля = Истина Тогда
Док.Выписки.Удалить(Док.Выписки[ъ]);
ъ = ъ - 1;
КонецЕсли;
Если КоличествоОборотов = КоличествоЗаписей Тогда
Прервать;
КонецЕсли;
КонецЦикла;
Док.Записать();