26.02.2021 Айдар Фархутдинов 118783
Отбор записей регистра сведений в 1С

Содержание:

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

2.       Менеджер записи регистра сведений


Здравствуйте, коллеги! В данной статье рассмотрим, как получить записи регистра сведений с некоторым отбором записей для последующей работы с ними.


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


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


Для того чтобы выполнить данную задачу, можно воспользоваться функцией набора записей регистра сведений с помощью объекта «НаборЗаписей». Для создания объекта «НаборЗаписей» необходимо обратиться к регистру сведений и вызвать метод «СоздатьНаборЗаписей()». В результате мы получим пустую коллекцию объектов типа «ЗаписьРегистраСведений».


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

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


Представим, что у нас есть некоторые начальные данные, и нам необходимо получить записи, в которых значения полей равны нашим начальным данным. Для этого воспользуемся свойством «Отбор» у полученного ранее объекта, после чего вызовем метод «Установить (Параметр отбора)». Данный метод можно вызывать несколько раз в случае, если нужно установить отбор записей регистра сведений по нескольким полям. Если отборов несколько, то связь будет осуществляться при помощи логического «И».


Отбор записей регистра сведений

Отбор записей регистра сведений


После того как установлен отбор регистра, чтобы получить записи с установленным отбором, потребуется вызвать метод «Прочитать()», читающий записи регистра сведений с отбором, который был установлен ранее. После выполнения данного метода коллекция «Набор записей» заполнится данными отобранными из регистра сведений.


Метод чтения набора записей

Метод чтения набора записей


Далее можно обойти полученную коллекцию циклом и добавить или изменить какие-то поля в каждой записи. Либо же обработать любым другим доступным способом.


Цикл набора записей

Цикл набора записей


Для того чтобы записать измененные данные в базу, необходимо вызвать метод «Записать()», после чего весь набор записей после отбора будет снова записан в регистр сведений с измененными или новыми данными.


команда записи

Команда записи в регистр сведений


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


Особенность отбора в регистре сведений заключается в том, что его можно установить только на равенство, соответственно нельзя, например, установить отбор «Записи в которых поле «Количество» больше чем 4», можно использовать только «Записи в которых «Количество» равно 5».


В том случае, если необходимо выбрать записи по какому-либо другому условию, например, записи, в которых поле «количество» имеет значение больше 4, либо если нужно воспользоваться связью отличной от логического «И», например, «ИЛИ»: «Физическое лицо = ФИО» ИЛИ «Год рождения < 31.08.2000», придется написать запрос регистра сведений


запрос к регистру сведений

Запрос у регистру сведений


Результатом этого будет подобная таблица:


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

Результат запроса к регистру сведений

 

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


После получения результата запроса с ним можно будет делать все что угодно, в том числе и записать снова в регистр.  


2.       Менеджер записи регистра сведений


Если в регистре сведений все записи уникальны или требуется получить только одну запись, следует воспользоваться объектом «Менеджер записи».


Менеджер записи регистра сведений создается аналогично Набору записей, но с использованием другого метода – СоздатьМенеджерЗаписей().


Метод СоздатьМенеджерЗаписией()

Метод СоздатьМенеджерЗаписией()


После создания можно установить отбор записей регистра сведений, задав значения полей и вызвать метод «Прочитать», который вернет в переменную «МенеджерЗаписи» запись регистра сведений.


Действия с записью после возвращения менеджера в регистр сведений

Прочтение менеджера записей и его возвращение в регистр сведений


Далее можно производить с данной записью какие-либо действия, например, обратиться к одному из полей данной записи.


Действия с записью после возвращения менеджера

Действия с записью после возвращения менеджера в регистр сведений


Стоит отметить, что менеджер записи регистра сведений в отличие от набора записей регистра сведений доступен только для регистров с установленным свойством «Независимый» регистр сведений, то есть только для тех, у которых нет регистратора.


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

Айдар Фархутдинов

 

Наши проекты

ООО «ПЛЮСПЭЙ»
ООО «ПЛЮСПЭЙ»

Отрасль:
Организацией расчетов посредством электронных средств платежа

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

- Разработка подсистемы оперативного учета транзакций...

ООО «ЛИГА-ТРАНС»
ООО «ЛИГА-ТРАНС»

Отрасль:
Профессиональные услуги, бытовое обслуживание

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

- Сделано ТЗ по автоматизации учета МСФО: - Разработана карта бюджета доходов и расходов в разрезе управленческого учета - Установлены форм...

Оптимизация производительности системы
ЗАО ИД «Комсомольская правда»

Отрасль:
Медиа

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

- Оптимизация производительности системы, в том числе сервера Postgre. ...

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

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

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

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

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

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

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

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

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

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

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

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

ООО «ДАФ Тракс Рус» (DAF Trucks Rus)
ООО «ДАФ Тракс Рус» (DAF Trucks Rus)

Отрасль:
Машиностроение

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

- Осуществлена разработка матрицы прав и ролей для финансового подразделения:
• распределение ролей стало более четким и структурированны...

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

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

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

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

Автоматизация документооборота в компании ООО "Ликард"
ООО «Ликард» (ОАО ЛУКОЙЛ)

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

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

- Отказ от бумажного документооборота, от громоздких систем на базе офисного пакета;
- Создан единообразный интерфейс как в офисе, так и...

Автоматизации учета затрат и расчета себестоимости с использованием конфигурации «Koderline: Управление проектами строительства скважин»
ООО «Буровая сервисная компания «ГРАНД»

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

Внедренное типовое решение:
«Koderline: Управление проектами строительства скважин»

Учет и планирование:
- собственную разработку компании «Кодерлайн» – конфигурацию «Koderline: Управление проектами строительства скважин»...

ООО "ТК "Сытый Дом-НН"
ООО "ТК "Сытый Дом-НН"

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

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

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

Автоматизация производственного планирования нефтесервисной компании на базе 1С:ЕРП 2.0
ЗАО «Инвестгеосервис»

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

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

- Блок планирования проектов (процессы объемно-календарного планирования производства)...

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

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

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

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