Архив автора: polkovskoi

Удаление строк из таблицы значений (обход сверху)

Для того, чтобы удалить строки из таблицы значений 1С по определённому условию, можно использовать цикл «Для Каждого Из« и обойти таблицу, начиная с первой строки.

Предположим, что таблица имеет две колонки — «Договор» и «Валюта», где «Валюта» — валюта договора. Необходимо из таблицы удалить все строки с теми договорам, валюта которых находится в определённом списке:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
// МассивВалют - массив, в котором хранится список валют.
//
// Построчно обходим таблицу значений
Для Каждого Стр ИЗ ОсновнаяТаблицаДанных Цикл
	// Вводим счетчик
	Сч = 0;
	Пока Сч < ОсновнаяТаблицаДанных.Количество() Цикл
		// Получаем строку таблицы значений по индексу
		СтрокаТаблицы = ОсновнаяТаблицаДанных.Получить(Сч);
		// Если значение валюты в текущей строке таблицы значений входит
		// в массив валют - удаляем строку. Счётчик при этом не меняет своего
		// значения. Этим обеспечивается построчная проверка таблицы
		// начиная сверху.
		Если МассивВалют.Найти(СтрокаТаблицы.Валюта) <> Неопределено Тогда
			ОсновнаяТаблицаДанных.Удалить(СтрокаТаблицы);
		Иначе
			Сч = Сч + 1;
		КонецЕсли;
	КонецЦикла;
КонецЦикла;

Запуск сайта

Ну вот, сайт о программировании на 1С готов!

Добавлены счетчики, подготовлены разделы, в которых будут размещаться статьи, повествующие о том, как работать с экселем из 1С, какие фичи есть у СКД и информация, необходимая любому эксперту по технологическим вопросам 1С. Читать далее