_______________________________________________________________
Код для копирования:
· Как отобрать записи из непериодического независимого регистра сведений по нескольким измерениям и удалить их
// Допустим в ВашемРегистреСведений 2 Измерения :
// 1Измерение=Номенклатура,2Измерение =Продукция и один Ресурс = Количество
НаборЗаписей = РегистрыСведений.ИмяВашегоРегистраСведений.СоздатьНаборЗаписей();
// Объявляем переменные:
ВыбраннаяНоменклатура = Справочники.Номенклатура.НайтиПоКоду("00000095981");
ВыбраннаяПродукция = Справочники.Номенклатура.НайтиПоКоду("00000012552");
//____ОТОБРАТЬ ЗАПИСИ РЕГИСТРА СВЕДЕНИЙ ПО НЕСКОЛЬКИМ ИЗМЕРЕНИЯМ_____________
НаборЗаписей.Отбор.Номенклатура.Установить(ВыбраннаяНоменклатура);
НаборЗаписей.Отбор.Продукция.Установить(ВыбраннаяПродукция);
//____УДАЛИТЬ ЗАПИСИ ОТБОРА__________________________________________________
// Удаляем отобранные выше строки из Вашего регистра сведений:
НаборЗаписей.Записать();
_______________________________________________________________
Код для копирования:
_________________________________________________________________________________
· Как добавить новую запись в непериодический независимый регистр сведений
НаборЗаписей = РегистрыСведений.ИмяВашегоРегистраСведений.СоздатьНаборЗаписей();
// Внимание!!! Обязательно нужно делать отбор, а иначе после записи
// все данные регистра удалятся и останется только одна добавленная запись
НаборЗаписей.Отбор.Номенклатура.Установить(ВыбраннаяНоменклатура);
НаборЗаписей.Отбор.Продукция.Установить(ВыбраннаяПродукция);
//Добавляем новую запись в регистр сведений
НоваяЗапись = НаборЗаписей.Добавить();
НоваяЗапись.Номенклатура = ВыбраннаяНоменклатура;
НоваяЗапись.Продукция = ВыбраннаяПродукция;
НоваяЗапись.Количество = 78;
// Записываем новую строку в регистр сведений
НаборЗаписей.Записать();
_______________________________________________________________
_______________________________________________________________
Код для копирования:
· Как отобрать, прочитать, изменить записи в непериодическом независимом регистре сведений
ВыбраннаяПродукция = Справочники.Номенклатура.НайтиПоКоду("00000013452");
НаборЗаписей = РегистрыСведений.ИмяВашегоРегистраСведений.СоздатьНаборЗаписей();
НаборЗаписей.Отбор.Продукция.Установить(ВыбраннаяПродукция);
// Прочитать записи из регистра
НаборЗаписей.Прочитать();
// Обойти записи регистра
Для Каждого Запись Из НаборЗаписей Цикл
Сообщить("Номенклатура =" +Строка(Запись.Номенклатура) + "Продукция= " + Строка(Запись.Продукция) +"Количество= "+ Строка(Запись.Количество));
// Как изменить запись регистра в зависимости от условия
// (Для примера, изменим в нашем регистре сведений у продукции одну номенклатуру на другую с другим
// количеством)
Если Запись.Номенклатура = Справочники.Номенклатура.НайтиПоКоду("00000000123")тогда
Запись.Номенклатура = Справочники.Номенклатура.НайтиПоКоду("00000000325");
Запись.Количество = 7;
КонецЕсли;
КонецЦикла;
НаборЗаписей.Записать();
_______________________________________________________________
_______________________________________________________________
Код для копирования:
______________________________________________________________________________
· Как отобрать, прочитать, изменить записи в регистре сведений по регистратору
(регистр сведений, подчиненный регистратору)
НаборЗаписей = РегистрыСведений.ИмяВашегоРегистраСведений.СоздатьНаборЗаписей();
ВыбранныйРегистратор = СсылкаВыбранныйДокумент;
НаборЗаписей.Отбор.Регистратор.Установить(ВыбранныйРегистратор);
// Прочитать записи из регистра
НаборЗаписей.Прочитать();
// Обход всех записей регистра
Для Каждого Запись Из НаборЗаписей Цикл
Сообщить("Номенклатура =" +Строка(Запись.Номенклатура) + "Продукция= " + Строка(Запись.Продукция) +"Количество= "+ Строка(Запись.Количество));
// Как изменить запись регистра в зависимости от условия
Если Запись.Номенклатура=Справочники.Номенклатура.НайтиПоКоду("00000000123")тогда
Запись.Количество = 55;
КонецЕсли;
КонецЦикла;
НаборЗаписей.Записать();
_______________________________________________________________
_______________________________________________________________
Код для копирования:
_________________________________________________________________________________
· Как выгрузить регистр сведений в таблицу значений
НаборЗаписей = РегистрыСведений.ИмяВашегоРегистраСведений.СоздатьНаборЗаписей();
НаборЗаписей.Отбор.Номенклатура.Установить(ВыбраннаяНоменклатура);
НаборЗаписей.Отбор.Продукция.Установить(ВыбраннаяПродукция);
// Прочитать записи из регистра
НаборЗаписей.Прочитать();
// Как выгрузить все записи регистра сведений в таблицу значений
ТаблицаЗначений = НаборЗаписей.Выгрузить();
// Как выгрузить коронку регистра сведений в массив
ВашМассив = Новый Массив;
ВашМассив = НаборЗаписей.ВыгрузитьКолонку("Номенклатура");
_________________________________________________________________________________
· Как удалить все записи из регистра сведений(полная очистка регистра сведений)
НаборЗаписей = РегистрыСведений.ИмяВашегоРегистраСведений.СоздатьНаборЗаписей();
НаборЗаписей.Записать();
_________________________________________________________________________________
// 2-й способ (не программный)
Открыть 1С àРежим: Предприятие
В меню найти нужный регистр сведений
С помощью кнопок меню отобрать в регистре нужные строки (можно по одному или по нескольким измерениям)
Выделить все отобранные строки сочетанием клавиш Ctrl-A
Нажать кнопку Delete
_______________________________________________________________