04.02.2021 Нургалеев Альберт 43703
Связи наборов данных в СКД

Содержание:

1.      Тип соединение наборов данных в СКД

2.      Чем соединение отличается от объединения набора данных?

3.      Настройка соединения наборов данных   


В СКД есть возможность соединять между собой разные наборы данных. Такая же возможность есть в Запросах. Какое соединение предпочтительнее: соединение наборов данных в СКД или соединение в Запросе внутри одного набора данных? Универсального алгоритма нет, но есть ключевые принципы, которые нужно учесть при выборе метода.


· Если есть возможность получить все данные в одном запросе, то это – более приоритетный вариант, чем соединение наборов данных в СКД:

- Запросы выполняются на сервере СУБД, а не на сервере 1С: Предприятие 8;

- У современных СУБД есть оптимизатор запросов, что способствует большей производительности при формировании отчета.


· Если нет возможности получить данные в одном запросе, то нужно использовать соединение наборов данных в СКД:

- Соединение разнородных наборов: Набор данных Запрос – Набор данных Объект, Набор данных Запрос – Набор данных Объединение, Набор данных Объект – Набор данных Объединение.


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

 

1.      Тип соединение наборов данных в СКД


Соединение наборов данных всегда левое внешнее. Что это значит? Предположим, у нас есть два набора данных: А и Б. Нам нужно соединить эти наборы по определенному условию и в результате получить 3 поля из набора А, и 1 поле из набора Б.


Пример соединения наборов данных

Пример соединения наборов данных


В результате внешнего левого соединения мы получим все строки из набора А. Из набора Б в результат попадут только те строки, которые соответствуют условию связей этих наборов. Таким образом из левого набора (Набор А) попадут все строки, а из правого (Набор Б) – только некоторые строки.  


2.      Чем соединение отличается от объединения набора данных?


Между объединением наборов данных и соединением есть большая разница. При объединении наборов данных в итоговую таблицу попадают все записи первого набора и все записи из второго набора данных в СКД. Это можно отобразить на схеме.


Объединение наборов данных

Объединение наборов данных


В отличии от Запросов, в объединении наборов данных количество полей может не совпадать. Например, в Наборе А всего 3 поля, а в Наборе Б – 4 поля. Такое объединение корректно отработает.   


3.      Настройка соединения наборов данных


Настройка связей наборов данных в СКД настраивается на вкладке «Связи наборов данных».


Связи наборов данных

Связи наборов данных

 

Источник связи – это первый набор данных, из которого будут отобраны все строки. Приемник связи – это второй набор данных, из которого будут присоединены только те строки, которые соответствуют условию связи. Выражение источник и Выражение приемник – это поля наборов данных, по которым будет установлена связь между наборами. В СКД есть возможность передавать параметры из левого набора данных в правый. Параметр – это параметр из второго (правого) набора данных, которому присваивается значение из поля Выражение источник.


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


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


Связи наборов данных в СКД – удобный инструмент, но важно хорошо понимать, в каком случае его использовать. Если у Вас возникли вопросы, будем рады помочь!


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

Нургалеев Альберт

Наши проекты

ООО "РУКАРД-АУРА"
ООО "РУКАРД-АУРА"

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

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

- Налоговый учет;...

ООО «Аэроэкспресс»
ООО «Аэроэкспресс»

Отрасль:

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

· Планирование закупок · Управление закупочными процедурами, включая 223 ФЗ ...

ООО "Эскорт-Центр"
ООО "Эскорт-Центр"

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

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

- Сквозной учет затрат по объектам
- Бухгалтерский учет
- Расчет зарплаты...

ООО «Солви Пак»
ООО «Солви Пак»

Отрасль:
Торговля. Производство печати на рулонных материалах

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

Управление отношениями с клиентами (CRM) ...

Автоматизация учета на базе ПП "1С:Комплексная автоматизация 8" в ЗАО "Крюгер-Гранд"
ЗАО «Крюгер-Гранд»

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

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

- Создание интерфейсов и наборов прав пользователей;
- Отражению временных ...

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

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

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

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

Автоматизации бизнес-процессов учета и планирования на базе «1С:ERP Управление предприятием 2.0»
ООО «Буровая сервисная компания «ГРАНД»

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

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

- Создание полноценной управленческой системы взамен существующих
- Внедр...

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

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

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

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

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

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

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

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

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

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

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

- Управление складами;
- Управление заказами поставщиков;
- Управление зак...

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

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

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

- Отказ от бумажного документооборота, от громоздких систем на базе офисного...

ООО "АСК ИНЖИНИРИНГ"
ООО "АСК ИНЖИНИРИНГ"

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

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

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

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

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

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

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