10.01.2025 Иван Ильичев 6922
Как создать, изменить и удалить запись в реги...

Содержание:

1. Создание записи в регистре сведений

2. Изменение записи в регистре сведений

3. Как удалить записи из регистра сведений

4. Рекомендации по работе с регистрами сведений  

    

Регистры сведений в 1С используются для хранения данных, привязанных к измерениям и ресурсам. Для управления ими программно (создание, изменение и удаление записей) применяется Менеджер записи регистра сведений. Рассмотрим основные действия:

 

1. Создание записи в регистре сведений


Для добавления новой записи используется метод НоваяЗапись.


Пример:

Процедура ДобавитьЗаписьВРегистр()

    // Создаем объект записи регистра сведений

    ЗаписьРегистра = РегистрыСведений.ИмяРегистра.НоваяЗапись();


    // Заполняем измерения

    ЗаписьРегистра.Измерение1 = Значение1;

    ЗаписьРегистра.Измерение2 = Значение2;


    // Заполняем ресурсы

    ЗаписьРегистра.Ресурс1 = ЗначениеРесурса1;

    ЗаписьРегистра.Ресурс2 = ЗначениеРесурса2;


    // Заполняем реквизиты (если есть)

    ЗаписьРегистра.Реквизит1 = ЗначениеРеквизита1;


    // Сохраняем данные

    ЗаписьРегистра.Записать();

КонецПроцедуры;


Объяснение:

1.    НоваяЗапись — создает объект для новой записи.

2.    Поля регистра (измерения, ресурсы, реквизиты) заполняются значениями.

3.    Метод Записать сохраняет данные в регистре сведений.

 

2. Изменение записи в регистре сведений


Для изменения записи сначала необходимо найти её. Используются:

●       объект Запрос;

●       метод НайтиПоКлючу (если у регистра есть уникальный ключ).


Пример:

Процедура ИзменитьЗаписьВРегистре()

    Запрос = Новый Запрос;

     Запрос.Текст =

           "ВЫБРАТЬ

           |    События.КонтактноеЛицо КАК КонтактноеЛицо,

           |    События.Акаунт КАК Акаунт,

           |    События.Период КАК Период

           |ИЗ

           |    РегистрСведений.События КАК События

           |ГДЕ

           |    События.Акаунт = &Акаунт";

Запрос.УстановитьПараметр("Акаунт",Справочники.КонтактныеЛица.НайтиПоНаименованию("Контактное Лицо"));

     РезультатЗапроса = Запрос.Выполнить();

     Выборка = РезультатЗапроса.Выбрать();

     Запись = РегистрыСведений.События.СоздатьМенеджерЗаписи();

     Пока Выборка.Следующий() Цикл

    Запись.Период = Выборка.Период;

           Запись.Акаунт = Выборка.Акаунт;

           Запись.КонтактноеЛицо  = Выборка.КонтактноеЛицо;

           Запись.Прочитать();

           Если Запись.Выбран() Тогда

                Запись.КонтактноеЛицо = Справочники.КонтактныеЛица.НайтиПоНаименованию("Контактное Лицо");

                Запись.Записать();        

           КонецЕсли;

     КонецЦикла;

КонецПроцедуры;


Объяснение:

Для изменения записи сначала необходимо найти её.

Делаем запрос в условие которого прописываем по какому пользователю мы будем искать записи,  в запросе выбираем все измерения и период если у нас регистр периодический, после этого в цикле присвоим данные выборки измерениям иначе будет ошибка. С помощью метода «Выбран» проверяем считана ли запись и уже после этого присваиваем нужное контактное лицо.

3. Как удалить записи из регистра сведений


Далее будут приведены примеры по удалению записей в регистре.


Пример:

Удаление всех записей регистра путем создания пустого набора и его записи.


Набор=РегистрыСведений.ИмяРегистра.СоздатьНаборЗаписей();

Набор.Записать();

Удаление записей в регистре по измерению - контактное лицо

&НаСервере

Процедура УдалениеЗаписейНаСервере()

    КонтактЛицо = Справочники.ИмяСправочника.НайтиПоНаименованию("Имя контактного лица");

    Набор = РегистрыСведений. ИмяРегистра.СоздатьНаборЗаписей();

Набор.Отбор.КонтактноеЛицо.Установить(КонтактЛицо);

    Набор.Прочитать();

    Для шаг = 1 - Набор.Количество() По 0 Цикл

        Запись = Набор[- шаг];

        Набор.Удалить(- шаг);

    КонецЦикла;

    Набор.Записать();

КонецПроцедуры


Объяснение:

Делаем отбор по контактному лицу  и перебираем этот набор  в цикле.

В цикле выполняется удаление записей в наборе.

 

4. Рекомендации по работе с регистрами сведений


1.    Проверка данных: Перед добавлением или изменением записи убедитесь в корректности заполнения всех измерений и ресурсов.

2.    Логирование: Ведение журнала операций поможет отслеживать изменения в регистре.

3.    Использование транзакций: Для массовых операций (изменения или удаления) используйте транзакции для сохранения целостности данных.

4.    Оптимизация запросов: При обработке больших объемов данных используйте индексы и минимизируйте выборку.

    

Программное управление регистрами сведений в 1С предоставляет гибкие инструменты для работы с данными.

Грамотное использование методов позволяет автоматизировать работу с регистрами сведений, обеспечивая эффективную обработку и учет данных.

 

Специалист компании ООО "Кодерлайн"

Иван Ильичев

Наши проекты

АО «Вертолетная сервисная компания»
АО «Вертолетная сервисная компания»

Отрасль:
МТО эксплуатации вертолетной техники

Внедренное типовое решение:
1С:Бухгалтерия КОРП

- Консультации по сложным вопросам налогового и бухгалтерского учета;
- Разработка специализированных форм внутрикорпоративной отчетност...

Группа компаний АО «Киномакс»
Группа компаний АО «Киномакс»

Отрасль:
Культура, шоу-бизнес

Внедренное типовое решение:
БИТ.Финанс

- Разработка Положения о Казначействе группы компаний
- Разработка Положения об управлении договорами группы компаний ...

Автоматизация складских операций на базе «1С:Предприятие 8. WMS Логистика. Управление складом»
ОАО «Фрейт Линк»

Отрасль:
Логистика и грузоперевозки

Внедренное типовое решение:
1С:Управление холдингом

Реализовали разработку уникального модуля «Интернет-магазины» на базе программного продукта «1С:Управление холдингом» согласно технического ...

МИР ХОББИ
МИР ХОББИ

Отрасль:
Торговля. Интернет магазин

Внедренное типовое решение:
1С:ERP Управление предприятием 2.0

Оформление заказов поставщикам
Взаиморасчеты с покупателями
Оформление заказов покупателей
Логистика адресного склада
Управление...

ООО "СЖД"
ООО "СЖД"

Отрасль:
Торговля, склад, логистика, транспорт

Внедренное типовое решение:
1С:Бухгалтерия 8 ПРОФ

Расчет зарплаты
Подбор кадров
Кадровый учет
Анализ кадрового состава
Учет рабочего времени
Регламентированная отчетность...

ООО «Мир Аксиомы»
ООО «Мир Аксиомы»

Отрасль:
Аудиторские и консалтинговые услуги

Внедренное типовое решение:
1С:Бухгалтерия КОРП

- Бухгалтерский учет:
Банк и касса
Завершение периода
Нематериальные активы
Расчеты с контрагентами
Регламентированная ...

Автоматизация контроля исполнительской дисциплины на базе ПП «1С:Документооборот 8 ПРОФ»
ООО «ФСК Лидер»

Отрасль:
Строительство и девелопмент

Внедренное типовое решение:
1С:Документооборот 8 ПРОФ

- Делопроизводство;
- Учет и хранение документов;
- Учет и контроль исполнения поручений;
- Учет договоров...

ООО «Экслтрейд»
ООО «Экслтрейд»

Отрасль:
Торговля

Внедренное типовое решение:
1С:Управление торговлей

Оформление заказов поставщикам Оптовая торговля Торговые операции ...

ООО ХДМ Рус
ООО ХДМ Рус

Отрасль:
Торговля

Внедренное типовое решение:
1С:Управление торговлей

Управление цепочками поставок Оптовая торговля ...

ООО «ПКП КАБЭЛЕКТРОСНАБ»
ООО «ПКП КАБЭЛЕКТРОСНАБ»

Отрасль:
Производство кабельной продукции

Внедренное типовое решение:
1С:Управление небольшой фирмой 1.6

- Оформление заказов покупателей;
- Управление складскими запасами;
- Анализ запасов/остатков...

ООО «Лаборатория успеха»
ООО «Лаборатория успеха»

Отрасль:
Общественное и плановое питание, гостиничный бизнес, туризм

Внедренное типовое решение:
1С:Управление холдингом 8

Бухгалтерский учет;
Расчет зарплаты и кадровый учет;...

ХИТЕК-ГРУП
ХИТЕК-ГРУП

Отрасль:
Продажа парикмахерского инструмента и аксессуаров

Внедренное типовое решение:
1С:ERP Управление предприятием 2.0

Документооборот (ECM)
• Делопроизводство
Управление бизнес-процессами и ИТ процессами
• Автоматизация бизнес-процессов
Управлени...

Наши соц. сети

Telegram-канал «Koderline 1С» Группа в Вконтакте «Кодерлайн КОРП» Rutube

Остались вопросы - обратитесь к нам!

Впишите свои Имя и Телефон, чтобы мы ответили на все интересующие Вас вопросы.
ФИО*
E-mail*
Телефон*
Сообщение