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

Содержание:

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С:Предприятие 8. Аренда и управление недвижимостью на базе "1С:Бухгалтерия 8"» в компании «Бутово Молл»
ООО «Бутово Молл»

Отрасль:
Недвижимость

Внедренное типовое решение:
1С:Аренда и управление недвижимостью на базе «1С:Бухгалтерия 8»

Управление продажами, логистикой и транспортом (SFM, WMS, TMS):
- Оформление зак...

ПЭК
ПЭК

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

Внедренное типовое решение:
1С:Управление производственным предприятием

- Внедрение функционала управления НСИ;
- Рефакторинг;
- Оптимизация общег...

ПАО «АрселорМиттал Кривой Рог»
ПАО «АрселорМиттал Кривой Рог»

Отрасль:
Металлургическая промышленность

Внедренное типовое решение:
1С:Управление производственным предприятием для Украины

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

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

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

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

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

Внедрение 1С:Управление торговлей в оптово-розничной компании «Много Плитки»
ООО «Много Плитки»

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

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

Закупки (снабжение) и управление отношениями с поставщиками:
- Оформление ...

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

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

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

Бухгалтерский учет Банк и касса Расчеты с контрагентами Торговые операции ...

МГК "Световые Технологии"
МГК "Световые Технологии"

Отрасль:

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

Специалисты "Кодерлайн" произвели доработки в системе 1С:ЕРП 2.4 с учетом треб...

Внедрение ПП "1С:Бухгалтерия 8 ПРОФ" в ООО "ДЕКОР"
ООО «ДЕКОР»

Отрасль:
Производство

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

Управление персоналом и кадровый учет (HRM):
- Кадровый учет
- Расчет зарпл...

 ЗАО "Инвестгеосервис" -ДО
ЗАО «Инвестгеосервис»

Отрасль:
Нефтесервис

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

- Работа с файлами;
- Делопроизводство;
- Процессы движения документов; ...

ООО «ПраксисКом»
ООО «ПраксисКом»

Отрасль:
Аутсорсинг бухгалтерских услуг

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

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

ФГУП «Почта России»
ФГУП «Почта России»

Отрасль:
Почта, доставка

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

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

ЗАО «Инвестгеосервис»
ЗАО «Инвестгеосервис»

Отрасль:
Нефтесервис

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

Объемно-календарное планирование производства Автоматизация бизнес-проце...

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

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

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

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