Простые типы / Типы с "пустым" значением

Реквизиты = Новый Соответствие;
Реквизиты.Вставить("Фамилия""Иванов");

//Получить возвращает Неопределено, если
//ключа нет: подстановку значения
//по умолчанию пишут тернарным оператором
Отчество = Реквизиты.Получить("Отчество");
Отчество = ?(Отчество = Неопределено,
    "не указано", Отчество);
//Отчество = "не указано"

//Структура отдаёт признак наличия
//и значение за одно обращение: второй
//параметр получит Неопределено, если
//свойства в структуре нет
Данные = Новый Структура("Фамилия""Петров");
Стаж = Неопределено;
Если Не Данные.Свойство("Стаж", Стаж) Тогда
    Стаж = 0;
КонецЕсли;
//Стаж = 0

//Для простых типов ту же подстановку
//делают через ЗначениеЗаполнено
Скидка = 0;
Скидка = ?(ЗначениеЗаполнено(Скидка),
    Скидка, 5);
//Скидка = 5

//В самом запросе NULL заменяют функцией
//ЕСТЬNULL, не дожидаясь выборки:
//    ЕСТЬNULL(Цены.Цена, 0) КАК Цена

Сообщить(Отчество + " " + Стаж + " " +
    Скидка);
//Сообщает: не указано 0 5