23.12.2020 Мороз Олег 25099
Пустая ссылка в запросе 1С

Содержание:

1.       Обращение к пустой ссылке напрямую в запросе

2.       Обращение к пустой ссылке через параметр запроса 1С 8.3


При выборке данных из базы данных 1С:Предприятие при помощи запросов мы сталкиваемся с моментами, когда не получаем никаких данных – в выборе необходимое значение приравнивается к “NULL”.


Почему мы получаем такое значение? Всего лишь потому, что при соединении нескольких таблиц базы данных 1С:Предприятие, в присоединяемой таблице не было данных по необходимой нам связи. Или при объединении нескольких запросов при помощи конструкций «Объединить» или «Объединить все» не найдено соответствие полей.


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


В запросе 1С пустая ссылка может использоваться в любой части запроса: поле, условие.


Обратится к пустой ссылке, мы можем несколькими способами:

1.      Напрямую в запросе программы;

2.      Через параметр запроса 1С 8.3.  


1.   Обращение к пустой ссылке напрямую в запросе


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


Большинство разработчиков (да и я сам) склоняются именно к такому способу обозначения пустой ссылки в запросе.  


2.   Обращение к пустой ссылке через параметр запроса 1С 8.3


Для обращения через параметр запроса необходимо добавить в условие или поле параметр «&ВашПараметрПустойСсылки», а в наименовании параметра – Ваше наименование. При выполнении запроса необходимо добавить установку этого параметра. Иначе запрос не сможет быть выполнен и будет выдаваться ошибка.


Например, мы связываем две таблицы, в одной из которых у нас есть поле ссылочного типа – получаем “NULL”. Есть 2 способа обхода этого.


Первый способ – при помощи конструкции ЕСТЬNULL(НашеЗначение,НовоеЗначение). В «НашеЗначение» записываем то поле, которое мы будем получать из второй таблицы, и, если будет выполняться условие функции, значение автоматически будет получено из второго элемента функции.


Второй способ несколько проще технически, однако кода потребуется больше. Это конструкция «ВЫБОР КОГДА ТОГДА ИНАЧЕ КОНЕЦ». Плюс этой процедуры заключается в том, что можно прописать строгие правила выполнения установки значения пустой ссылки.


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


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

Мороз Олег Игоревич

Наши проекты

ООО «ЛукБелОйл»
ООО «ЛукБелОйл»

Отрасль:
Нефтегазовая отрасль

Внедренное типовое решение:

- Обследовании бизнес-процессов «Документооборот», «Казначейство и Бюджети...

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

Отрасль:

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

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

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

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

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

Финансы, управленческий учет, мониторинг показателей:
- Налоговый учет...

Компания IBS
Компания IBS

Отрасль:
Системный интегратор

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

- Интеграция систем – АСУП и «1С:Управление производственным предприятием»...

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

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

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

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

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

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

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

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

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

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

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

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

Московский филиал ООО «Авиакомпания «Икар»
Московский филиал ООО «Авиакомпания «Икар»

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

ЗАО «Многопрофильная формирующая авиагруппа» (ЗАО МФГ)
ЗАО «Многопрофильная формирующая авиагруппа» (ЗАО МФГ)

Отрасль:
Оптовая торговля транспортными средствами и оборудованием

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

- Финансы, управленческий учет, мониторинг показателей
- Бухгалтерский уче...

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

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

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

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