❓Рубрика: Вопросы на собеседовании #вопросынасобесах №91
На позицию: Программист 1С
Вопрос:
Что такое NULL, Неопределено, ПустаяСсылка, БитаяСсылка в 1С и как определить программно каждый из них?
Ответ:
✅ NULL - Отсутствие значения в результатах SQL‑запроса.
Проверка в коде: ЗначениеЗаполнено(Поле) Проверка в запросе: ГДЕ Поле Есть NULL
✅ Неопределено - Специфическое для 1С значение. Встречается, когда: обращаются к несуществующему свойству объекта, функция не возвращает значение, переменная объявлена, но не инициализирована
Проверка в коде: ЗначениеЗаполнено(Переменная) Проверка в запросе: ГДЕ Поле = НЕОПРЕДЕЛЕНО
✅ ПустаяСсылка - ссылка на объект метаданных (например, элемент справочника или документ), который существует в конфигурации, но не создан в базе. Ссылка сформована, но не ведёт на реальную запись.
Проверка в коде: Ссылка = Справочники.Номенклатура.ПустаяСсылка() или Ссылка.Пустая() = Истина Проверка в запросе: ГДЕ Таблица.Ссылка = Значение(Справочник.Номенклатура.ПустаяСсылка)
✅ БитаяСсылка - ссылка, которая указывает на объект, ранее существовавший в базе, но затем удалённый.
Проверка в коде: Если Ссылка.ПолучитьОбъект() = Неопределено Тогда // это битая ссылка Проверка в запросе: ГДЕ НЕ Ссылка ЕСТЬ NULL И Ссылка.Ссылка ЕСТЬ NULL
❗️ Есть что добавить, пиши в комментариях.