ВыбратьПоСсылкам в 8.3.26: фирма «1С» оптимизирует выборку объектов по заданному набору ссылок

25.01.2024      1622

Официальный технологический блог фирмы «1С» сообщил о новой оптимизации, которая появится в 8.3.26. Разработчики платформы собираются ускорить массовые операции с объектами и добавить новый метод – ВыбратьПоСсылкам(<Источник>, <Колонка>).


Почему возникла идея оптимизации массовой обработки объектов по набору ссылок

Анонс новых функциональных возможностей технологической платформы 8.3.26 размещен в «Заметках из Зазеркалья». Специалисты «1С» предлагают оптимизировать массовую обработку объектов по набору ссылок для улучшения производительности.

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

Поскольку с самых ранних версий 1С 8.0 у менеджеров объектов базы данных (Справочники, Документы, ПланыВидовХарактеристик и т.д.) уже есть метод Выбрать(), позволяющий за одно обращение к базе получить выборку, содержащую данные сразу многих объектов, решено было реализовать метод ВыбратьПоСсылкам(), позволяющий получать выборки объектов по заданному набору ссылок для более быстрой пакетной обработки


Как будет работать новый метод ВыбратьПоСсылкам()

Методы ВыбратьПоСсылкам(<Источник>, <Колонка>) / SelectByRefs(<Source>, <Column>) будут добавлены в менеджеры объектов:

  • СправочникМенеджер.<Имя_справочника>;
  • ДокументМенеджер.<Имя_документа>;
  • ПланВидовХарактеристикМенеджер.<Имя_плана_видов_характеристик> и т.д.

Полный список будет доступен в технической документации к релизу.

Метод ВыбратьПоСсылкам() работает так же, как метод менеджера объектов Выбрать() – оба метода возвращают выборку объектов соответствующего типа.

Новшество заключается в том, что в качестве критерия выборки метод ВыбратьПоСсылкам() получает коллекцию ссылок на объекты соответствующего менеджеру типа.

Параметры метода ВыбратьПоСсылкам():

  • <Источник> – обязательный, коллекция ссылок, объекты которых должны быть получены в результате выполнения метода. Это может быть ТаблицаЗначений, РезультатЗапроса, Массив, ФиксированныйМассив.
  • <Колонка> – необязательный. Если в качестве значения первого параметра фигурирует ТаблицаЗначений или РезультатЗапроса, с помощью этого параметра можно указать колонку, содержащую ссылки. Колонка может быть задана именем (значение типа Строка) или индексом (значение типа Число). Если значение параметра не задано, используется первая колонка источника. Если значением параметра <Источник> является Массив, значение параметра <Колонка> игнорируется.

 

Пример использования Метод ВыбратьПоСсылкам. Источник: wonderland.v8.1c.ru

 

Но не все так просто. Метод ВыбратьПоСсылкам считывает объекты порциями. Если не предпринять дополнительных мер, этот механизм не обеспечит целостного считывания, поскольку целостность данных обеспечивается только на уровне отдельных объектов, а не всей выборки в целом.

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

Полное описание оптимизации менеджеров объектов для пакетной обработки в 1С:Предприятие 8.3.26 в официальном технологическом блоге


Автор:
Обозреватель


Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. Brawler 448 26.01.24 08:28 Сейчас в теме
Хотелось бы понять как себя ведет

Выборка. ПолучитьОбъект();


И

НекаяСсылка. ПолучитьОбъект();


Как получаются данные в первом и втором случае, когда в памяти создается объект?
user813936; +1 Ответить
2. Ujine1313 9 26.01.24 22:33 Сейчас в теме
Что то как то странно оптимизировано. Чем вся эта конструкция отличается от того что взять полученную таблицу значений из запроса и получить из нее объекты по ссылкам? В примере берут ТЗ используют ее как фильтр для всей коллекции товаров и получают выбору товаров, потом из этой выборки получают ссылки на товар и от них объекты.
Может кто то объяснит?
3. Омский Домовой 408 27.01.24 09:10 Сейчас в теме
(2) Думаю , что в таблице значений лежат просто ссылки, а при выполнении метода уже полученные объекты. Т.е. при обращении к ссылке из таблицы значений для получения некого реквизита происходит новое обращение к БД, а при обращение из выборки все реквизиты типа уже получены.
Может ошибаюсь. Это чисто мое предположение.
alest; triviumfan; +2 Ответить
4. nvv1970 27.01.24 13:50 Сейчас в теме
(3) выбрать из менеджера - никогда не получал объекты, а только ссылки обходил порциями по 25. Так ведь?
Почему новый метод получает объекты?
Если это так, то почему его не назвали нормально, ~ типа "получить объекты" по ссылкам?

Сто лет не встречал использования выборки из менеджера. Если он действительно получает сразу объекты целиком, то смысл понятен.
Но где же пакетная запись?
6. triviumfan 91 29.01.24 10:06 Сейчас в теме
(4)
Если это так, то почему его не назвали нормально, ~ типа "получить объекты" по ссылкам?

Всё логично, ведь результат будет выборка, а не объект :)
И как указано выше - это аналог метода Выбрать().
(4)
Сто лет не встречал использования выборки из менеджера

Я тоже, в 99.9% случаев это ВыборкаИзРезультатаЗапроса, почти все используют табличную модель обращения к данным.
5. kamisov 148 28.01.24 11:32 Сейчас в теме
Спасибо, уже очень давно не надо. Лучше бы JWT починили
7. 7OH 69 30.01.24 09:11 Сейчас в теме
С именем промазали так же, как и с ВызватьПаузу.
ВыбратьПоСсылкам - вообще не даёт представления о том - ЧТО на выходе - ссылки или объекты.
alest; mikeA; +2 Ответить
9. mikeA 1 01.02.24 07:25 Сейчас в теме
(7) Осталась одна сложная задача в 1С) Инвалидацию кэша вроде как побороли))
8. mikeA 1 01.02.24 07:21 Сейчас в теме
Зачем выгружать результат запроса в таблицу значений если первый параметр ВыбратьПоСсылкам может быть результатом запроса?
10. naf2000 05.02.24 08:23 Сейчас в теме
А могли бы сделать функцию возвращающую массив именно объектов (тех, которые через ПолучитьОбъект строятся). Или даже в языке запросов функцию, возвращающую поле-объект
Это была бы оптимизация, а не вот это всё
Оставьте свое сообщение

См. также

Канбан Метод для управления потоком задач: онлайн-курс для руководителей и менеджеров продуктов

Новость Обучение Руководитель проекта

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

сегодня в 14:00    142    AnastasiaKl    0       

1

Рассказываем про секцию «Решения 1С: архитектура, учет и кейсы автоматизации на 1С»

Новость Aнализ&Управление Мероприятия

Недавно мы рассказывали о секции конференции «Анализ и Управление в ИТ-проектах» – «Управление проектами»: рассказали о трендовых темах секции, как подать заявку на доклад, чтобы ее приняли, и давали слово модераторам секции.

вчера в 16:00    234    AnastasiaKl    0       

1

Готовьтесь к экзамену «Специалист по платформе 1С:Предприятие 8.3» вместе с Инфостарт

Новость Обучение

Онлайн-курс по подготовке к экзамену «1С:Специалист» стартует 11 марта. Автор курса – практикующий экзаменатор, преподаватель 1С:Учебного центра №1 и один из разработчиков экзамена.

вчера в 15:00    772    AnastasiaKl    1       

17

В 1С-Коннект доступны новые тарифы для доступа к видеозвонкам

Новость Сервисы ИТС

В тарифах сервиса 1С-Коннект, который автоматизирует техподдержку и корпоративные коммуникации, появились дополнительные опции для доступа к видеозвонкам и видеоконференциям. Цены – гуманные, в среднем от 26 до 132 рублей за человека в месяц.

вчера в 09:51    219    ЕленаЧерепнева    0       

2

Бесплатный вебинар по Базе знаний и 1С-Store или о выгодах сотрудничества с Инфостарт

Новость Сервисы ИТС

14 февраля команда Инфостарт.Сопровождение 1С совместно с ИТ-лабораторией провели бесплатный онлайн-вебинар, где рассказали о всех возможностях и выгодах работы с Базой знаний Инфостарт и сервисом 1С-Store.

27.02.2024    390    AnastasiaKl    0       

17

Онлайн-интенсив по платформе «1С:Предприятие» для начинающих 1С-программистов

Новость Обучение Программист

12 марта стартует онлайн-курс по изучению механизмов платформы «1С:Предприятие». Программа обучения подготовлена для слушателей, у которых уже есть некоторые навыки и знания по программированию и конфигурирования в системе «1С:Предприятие».

27.02.2024    342    AnastasiaKl    0       

15

Открываем первый тур голосования за доклады и мастер-классы

Новость Aнализ&Управление Мероприятия

Сегодня стартует первый тур голосования за доклады и практические активности конференции «Анализ и управление в ИТ-проектах».

27.02.2024    398    eselyanina    0       

3

«1С:Налоговый мониторинг»: новое имя продукта и модули для БП и ERP в составе основной поставки

Новость Новый релиз

Фирма «1С» изменила наименование решения для автоматизации налогового мониторинга, а также добавила в состав поставки модули для интеграции с 1С:ERP и 1С:Бухгалтерией 8.

27.02.2024    386    ЕленаЧерепнева    0       

3

РежимЗамещения в 8.3.26: новый режим «Обновление» и применимость для регистров накопления

Новость Зазеркалье

В платформе 8.3.26 системное перечисление «РежимЗамещения» получит новое значение «Обновление» и сможет применяться, в том числе, для регистров накопления и подчиненных регистров сведений.

26.02.2024    988    ЕленаЧерепнева    1       

2

Представляем хедлайнеров конференции «Анализ и управление в ИТ-проектах»

Новость Aнализ&Управление Мероприятия

Уже завтра 27 февраля стартует голосование за заявки на доклады и мастер-классы: можно будет проголосовать за наиболее интересные для вас заявки и поддержат спикеров.

26.02.2024    469    eselyanina    0       

17

Итоги вебинара 1С-Отчетность: ответы на самые интересные вопросы

Новость Отчетность Сервисы ИТС

На бесплатном вебинаре по 1С-Отчетность мы рассказывали о новых ключевых возможностях системы: многопользовательский режим; формирование машиночитаемой доверенности (МЧД) в 1С-Отчетность; интеграция сервиса с личным кабинетом ФНС для контроля ЕНС.

26.02.2024    400    AnastasiaKl    1       

15

Как определить, что вашему 1С:ITIL нужен веб-портал

Новость

Представьте, что можно работать в конфигурации 1С:ITIL, даже если на вашем устройстве нет установленной платформы 1С. Функциональность решения при этом не ограничивается: пользователь может создавать обращения и управлять ими в быстром и интуитивно понятном интерфейсе.

22.02.2024    801    user997184    3       

3

Вебинар по Оркестратор 1С: делимся результатами встречи и ответами на вопросы слушателей

Новость

Бесплатный онлайн-вебинар «Единый центр мониторинга и логирования 1С систем» прошел 13 февраля. Спикер вебинара и разразработчик Оркестратор 1С Дмитрий Круглов рассказал о ключевых возможностях готового решения, какие задачи оно решает, и продемонстрировал работу программного продукта.

22.02.2024    1067    AnastasiaKl    0       

16

О чем вы узнаете на митапе «1С в облаке: возможности и риски, решения и кейсы»?

Новость Мероприятия

15 марта в 11:00 мск пройдет бесплатный онлайн митап «1С в облаке: возможности и риски, решения и кейсы». Модераторы рассказали о том, зачем участвовать в митапе, какую пользу получат участники мероприятия.

22.02.2024    578    eselyanina    0       

16

Осталось 7 дней до повышения цен на участие в конференции «Анализ и Управление в ИТ-проектах»

Новость Aнализ&Управление Мероприятия

Успейте купить билеты по более выгодным тарифам: благодаря високосному году, времени на решение у вас чуть больше. А мы вам поможем с аргументами в пользу покупки и визита в почти летний Санкт-Петербург.

21.02.2024    706    user997184    0       

16

Infostart Toolkit 2024.1: новые инструменты и интеграция с полем глобального поиска

Новость InfostartToolkit Маркетплейс Новый релиз Обзор готовых решений

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

21.02.2024    1957    vikad    6       

16

Внимание, конкурс! Современные возможности 1С: нетиповые интеграции и доработки

Новость Сообщество

Конкурс статей и доработок на платформе 1С. Цель конкурса – показать, какие нетривиальные задачи можно решать с помощью функциональности платформы 1С:Предприятие.

20.02.2024    2597    user997184    8       

20

Приглашаем принять участие в бесплатном вебинаре на тему «Автоматизация процессов производственной лаборатории»

Новость

Онлайн-вебинар по автоматизации процессов производственной лаборатории состоится 29 февраля. На встрече мы расскажем, как эффективно управлять качеством продукции на производстве, применяя возможности 1С:LIMS.

20.02.2024    725    AnastasiaKl    0       

3

В УНФ и Рознице 3.0 поддержан разрешительный порядок продаж для маркировки

Новость 1С:Розница 3.0 1С:Управление нашей фирмой 1.6 1С:Управление нашей фирмой 3.0 ИТ-Новость

С 1 апреля без проверки в ГИС МТ «Честный знак» продавать некоторые категории маркированного товара на кассе будет нельзя. Рассказываем, как реализована поддержка новых требований в УНФ и Розница 3.0.

19.02.2024    1455    ЕленаЧерепнева    8       

5

Онлайн-курс по проектированию интерфейсов 1С в Figma. Старт – 18 марта

Новость Обучение

На курсе по проектированию мы изучим функционал мощного дизайнерского инструмента – Figma и научимся его использовать в разработке дизайн-решений для 1С интерфейсов.

19.02.2024    986    AnastasiaKl    0       

17

Станьте партнером конференции «Анализ и управление в ИТ-проектах»

Новость Aнализ&Управление Мероприятия

Через 3,5 месяца в Санкт-Петербурге состоится конференция «Анализ & Управление в ИТ-проектах». Пока мы работаем над программой и организацией мероприятия, партнеры активно бронируют места под стенды.

19.02.2024    786    eselyanina    0       

15

1С:Бизнес-обучение: новая веб-платформа от фирмы «1С» для обучения топ-менеджеров

Новость Сервисы ИТС

Фирма «1С» анонсировала новый образовательный сервис для руководителей с доступом по подписке. Пользователям будут доступны видеолекции и материалы, посвященные менеджменту и личному развитию. В планах – проведение вебинаров и онлайн-конференций.

19.02.2024    793    ЕленаЧерепнева    1       

2

5 новинок из каталога готовых решений для 1С

Новость Маркетплейс

Инфостарт.Маркетплейс представляет новые готовые решения каталога. Среди них: обработка по отправке отчетов в Telegram, решение по работе с маркировкой, виртуальный терминал по приему платежей по СБП и обработки для работы с табличными частями 1С.

15.02.2024    1562    AnastasiaKl    1       

3

Конференция «Анализ и Управление в ИТ-проектах 2024»: собрали идеи для ваших докладов о продуктовой разработке

Новость Aнализ&Управление Мероприятия

Одна из секций конференции «Анализ и Управление в ИТ-проектах 2024» посвящена управлению продуктом и продуктовой разработке. Модераторы секции «Управление продуктом» – Маргарита Маковеева и Дмитрий Макаров.

15.02.2024    950    user997184    0       

1

Участвуйте в пилотном проекте по Таймлист и упрощайте решение своих ежедневных бизнес-задач

Новость

2 февраля прошло ежегодное в России мероприятие по тайм-менеджменту – праздник «День сурка». Сотрудники Инфостарта побывали на событии в качестве информационных партнеров, и сегодня мы расскажем о пилотном проекте внедрения сервиса «Таймлист».

15.02.2024    1217    AnastasiaKl    0       

16