```1c
    ВЫБРАТЬ
    ОбъектыОИС.ИнвентарныйНомер КАК ИнвентарныйНомерНоменклатурныйНомер,
    ОбъектыОИС.НаименованиеБУ,
    ЕСТЬNULL(ОбъектыОИС.Местонахождение, 0) КАК Местонахождение,
    ОбъектыОИС.Ссылка,
    ОбъектыОИС.Родитель,
    ЕСТЬNULL(МестонахождениеОССрезПоследних.ЦМО.Подразделение, 0) КАК Подразделение
    ИЗ
    Справочник.ОбъектыОИС КАК ОбъектыОИС
    ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.МестонахождениеОС.СрезПоследних КАК МестонахождениеОССрезПоследних
    ПО ОбъектыОИС.НаименованиеОбъекта = МестонахождениеОССрезПоследних.ОС
    ГДЕ
    ОбъектыОИС.Местонахождение <> МестонахождениеОССрезПоследних.ЦМО.Подразделение
```

Нужно вывести строки у которых различаются значения Местонахождение и Подразделение. Если Местонахождение не заполнено, а Подразделение заполнено, то строка выводится, а если наоборот, то нет.
---
В регистре ОС - это не ссылка, а наименование основного средства ?
основное средство это ссылка
тогда у тебя левое соединение вообще никогда не сработает

```1c
    ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.МестонахождениеОС.СрезПоследних КАК МестонахождениеОССрезПоследних
    ПО ОбъектыОИС.НаименованиеОбъекта = МестонахождениеОССрезПоследних.ОС
```

замени

```1c
    ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.МестонахождениеОС.СрезПоследних КАК МестонахождениеОССрезПоследних
    ПО ОбъектыОИС.ссылка = МестонахождениеОССрезПоследних.ОС
```

далее
вот это

```1c
    ЕСТЬNULL(ОбъектыОИС.Местонахождение, 0) КАК Местонахождение,
```

Замени на просто

```1c
    ОбъектыОИС.Местонахождение КАК Местонахождение,
```

последнюю строку

```1c
    ЕСТЬNULL(МестонахождениеОССрезПоследних.ЦМО.Подразделение, 0) КАК Подразделение
```

на

```1c
    ЕСТЬNULL(МестонахождениеОССрезПоследних.ЦМО.Подразделение, ЗНАЧЕНИЕ(Справочник.Подразделения.ПустаяСсылка)) КАК Подразделение
```
---
добавь в условие
И НЕ МестонахождениеОССрезПоследних.ЦМО.Подразделение ЕСТЬ NULL
---
ох...
проще заново запрос сделать, чем разбираться в этом. Конфа какая ?

Т.е. местонахождение в справочнике и регистре - это разные типы данных ?
В регистре ОС - это не ссылка, а наименование основного средства ?
Что за конструкция ЕСТЬNULL(ОбъектыОИС.Местонахождение, 0) КАК Местонахождение ? откуда там NULL если это живой реквизит справочника. И зачем заменять его цифрой ?
Тоже и данные регистра. Получается сравнение разных типов данных.
Короче, как-то все....
---
БГУ 1.0

Т.е. местонахождение в справочнике и регистре - это разные типы данных ?
в справочнике справочник ссылка. в регистре это поле ЦМО которое ссылается на справочник ЦМО в котором у реквизита подразделение такой же тип справочник ссылка

В регистре ОС - это не ссылка, а наименование основного средства ?
основное средство это ссылка

откуда там NULL если это живой реквизит справочника?
а если этот реквизит будет не заполнен, там разве не нул будет?
---
В регистре ОС - это не ссылка, а наименование основного средства ?
основное средство это ссылка
тогда у тебя левое соединение вообще никогда не сработает

```1c
    ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.МестонахождениеОС.СрезПоследних КАК МестонахождениеОССрезПоследних
    ПО ОбъектыОИС.НаименованиеОбъекта = МестонахождениеОССрезПоследних.ОС
```

замени

```1c
    ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.МестонахождениеОС.СрезПоследних КАК МестонахождениеОССрезПоследних
    ПО ОбъектыОИС.ссылка = МестонахождениеОССрезПоследних.ОС
```

далее
вот это

```1c
    ЕСТЬNULL(ОбъектыОИС.Местонахождение, 0) КАК Местонахождение,
```

Замени на просто

```1c
    ОбъектыОИС.Местонахождение КАК Местонахождение,
```

последнюю строку

```1c
    ЕСТЬNULL(МестонахождениеОССрезПоследних.ЦМО.Подразделение, 0) КАК Подразделение
```

на

```1c
    ЕСТЬNULL(МестонахождениеОССрезПоследних.ЦМО.Подразделение, ЗНАЧЕНИЕ(Справочник.Подразделения.ПустаяСсылка)) КАК Подразделение
```
---
и условие там лучше наверное в соединение перенести надо..
К сожалению 1.0 у меня нету, а в БГУ 2.0 там уже по другому.