28.10.2021 Анна Лисовая 71813
Левое соединение таблиц

Содержание:

1.       Соединение в запросах 1С

2.       Левое соединение в запросе в 1С 8.3

 

1.      Соединение в запросах 1С

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

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

Типы соединений таблиц:

1.       Левое соединение;

2.       Правое соединение;

3.       Внутреннее соединение;

4.       Полное соединение.



Рис. 1 Таблицы данных до соединения

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

2.      Левое соединение в запросе в 1С 8.3

Левое соединение является одним из 4-х возможных видов соединений таблиц. При использовании левого соединения в запросе в 1С 8.3 мы сообщаем системе, что результат должен быть в виде абсолютно всех записей из левой таблицы с добавлением записей из правой таблицы, но только тех, которые подходят по условию связей.

Пусть нужно сделать связку таблиц, основываясь на поле товар. Условие у нас будет равно, тогда результатом будет следующая таблица, которая представлена на примере ниже:


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


Рис. 2 Пример результата левого соединения в запросе в 1С

В этом случае текст запроса будет выглядеть следующим образом:   



Рис. 3 Запрос для соединения таблиц данных


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

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

Если под условие для связи подходят несколько пунктов из таблицы справа, то в таблице-результате появится несколько строк. Но, в таком случае, таблица не будет отражать корректную информацию, так что лучше проводить связи опираясь на два поля, в нашем примере, на «Товар» и «Цвет», при этом обязательно произвести обработку значений «NULL».

Таблица будет иметь следующий вид:


Рис. 4 Левое соединение таблиц - результат

А текст запроса, с обработкой, будет выглядеть так:



Рис. 5 Левое соединение в запросе



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

Анна Лисовая






Наши проекты

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

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

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

Реализовали разработку уникального модуля «Интернет-магазины» на базе прог...

ОАО «Фаберлик»
ОАО «Фаберлик»

Отрасль:

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

- Регламентированный учет;
- Кадровый учет;...

СТС-Медиа
СТС-Медиа

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

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

- Бухгалтерский учет;
- Налоговый учет;
- МСФО (GAAP/управленческий учет);
- Ð...

Внедрение ПП "1С:Бухгалтерия 8 ПРОФ" в ООО «Союз Три» (Кондитерский дом Renardi)
ООО «Союз Три»

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

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

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

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

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

Внедренное типовое решение:
1С:Управление небольшой фирмой 8 ПРОФ

- Взаиморасчеты с поставщиками
- Учет прихода ТМЦ
- Взаиморасчеты с покуÐ...

ЗАО «Ламбумиз»
ЗАО «Ламбумиз»

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

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

- Маркетинг;
- Продажи;
- Планирование закупок;
- Закупки;
- РегламентиÑ...

ООО «Стейдж Энтертейнмент Россия»
ООО «Стейдж Энтертейнмент Россия»

Отрасль:
Театральная деятельность

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

Реализован процесс трансформации данных бухгалтерского учета по РСБУ в данÐ...

Автоматизация кадрового учета на базе «1С:ERP Управление предприятием 2.0»
Автопредприятие ПАО «Газпром»

Отрасль:
Транспорт

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

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

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

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

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

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

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

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

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

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

Установка программного продукта БИТ.Финанс для 1С:Бухгалтерия 8
ООО «Джи Эй Си Шиппинг энд Лоджистикс»

Отрасль:
Транспорт

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

Построение единого информационного пространства финансовой службы;
Учет ...

Группа компаний ТМ «Дружба народов»
Группа компаний ТМ «Дружба народов»

Отрасль:
Пищевая промышленность

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

- Переход на новый релиз 2.1 программы «1С:ERP Управление предприятием»
- Разра...

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

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

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

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