Добрый день. При обработке данных появляется ошибка:

Ошибка СУБД:
Microsoft SQL Server Native Client 11.0: Выражения Case могут быть вложенными только до уровня 10.

В отладчике нашел такой кусок запроса:

```1c
    | ВЫБОР
    | КОГДА втРасчетПоСреднегодовой.ДатаСведений = ДАТАВРЕМЯ(1, 1, 1)
    | ТОГДА ВЫБОР
    | КОГДА втРасчетПоСреднегодовой.ОстаточнаяСтоимостьНа0101 <> 0
    | ТОГДА втРасчетПоСреднегодовой.ГодРасчета
    | ИНАЧЕ ВЫБОР
    | КОГДА втРасчетПоСреднегодовой.ОстаточнаяСтоимостьНа0102 <> 0
    | ТОГДА ДОБАВИТЬКДАТЕ(втРасчетПоСреднегодовой.ГодРасчета, МЕСЯЦ, 1)
    | ИНАЧЕ ВЫБОР
    | КОГДА втРасчетПоСреднегодовой.ОстаточнаяСтоимостьНа0103 <> 0
    | ТОГДА ДОБАВИТЬКДАТЕ(втРасчетПоСреднегодовой.ГодРасчета, МЕСЯЦ, 2)
    | ИНАЧЕ ВЫБОР
    | КОГДА втРасчетПоСреднегодовой.ОстаточнаяСтоимостьНа0104 <> 0
    | ТОГДА ДОБАВИТЬКДАТЕ(втРасчетПоСреднегодовой.ГодРасчета, МЕСЯЦ, 3)
    | ИНАЧЕ ВЫБОР
    | КОГДА втРасчетПоСреднегодовой.ОстаточнаяСтоимостьНа0105 <> 0
    | ТОГДА ДОБАВИТЬКДАТЕ(втРасчетПоСреднегодовой.ГодРасчета, МЕСЯЦ, 4)
    | ИНАЧЕ ВЫБОР
    | КОГДА втРасчетПоСреднегодовой.ОстаточнаяСтоимостьНа0106 <> 0
    | ТОГДА ДОБАВИТЬКДАТЕ(втРасчетПоСреднегодовой.ГодРасчета, МЕСЯЦ, 5)
    | ИНАЧЕ ВЫБОР
    | КОГДА втРасчетПоСреднегодовой.ОстаточнаяСтоимостьНа0107 <> 0
    | ТОГДА ДОБАВИТЬКДАТЕ(втРасчетПоСреднегодовой.ГодРасчета, МЕСЯЦ, 6)
    | ИНАЧЕ ВЫБОР
    | КОГДА втРасчетПоСреднегодовой.ОстаточнаяСтоимостьНа0108 <> 0
    | ТОГДА ДОБАВИТЬКДАТЕ(втРасчетПоСреднегодовой.ГодРасчета, МЕСЯЦ, 7)
    | ИНАЧЕ ВЫБОР
    | КОГДА втРасчетПоСреднегодовой.ОстаточнаяСтоимостьНа0109 <> 0
    | ТОГДА ДОБАВИТЬКДАТЕ(втРасчетПоСреднегодовой.ГодРасчета, МЕСЯЦ, 8)
    | ИНАЧЕ ВЫБОР
    | КОГДА втРасчетПоСреднегодовой.ОстаточнаяСтоимостьНа0110 <> 0
    | ТОГДА ДОБАВИТЬКДАТЕ(втРасчетПоСреднегодовой.ГодРасчета, МЕСЯЦ, 9)
    | ИНАЧЕ ВЫБОР
    | КОГДА втРасчетПоСреднегодовой.ОстаточнаяСтоимостьНа0111 <> 0
    | ТОГДА ДОБАВИТЬКДАТЕ(втРасчетПоСреднегодовой.ГодРасчета, МЕСЯЦ, 10)
    | ИНАЧЕ ВЫБОР
    | КОГДА втРасчетПоСреднегодовой.ОстаточнаяСтоимостьНа0112 <> 0
    | ТОГДА ДОБАВИТЬКДАТЕ(втРасчетПоСреднегодовой.ГодРасчета, МЕСЯЦ, 11)
    | ИНАЧЕ ВЫБОР
    | КОГДА втРасчетПоСреднегодовой.ОстаточнаяСтоимостьНа3112 <> 0
    | ТОГДА КОНЕЦПЕРИОДА(втРасчетПоСреднегодовой.ГодРасчета, ГОД)
    | КОНЕЦ
    | КОНЕЦ
    | КОНЕЦ
    | КОНЕЦ
    | КОНЕЦ
    | КОНЕЦ
    | КОНЕЦ
    | КОНЕЦ
    | КОНЕЦ
    | КОНЕЦ
    | КОНЕЦ
    | КОНЕЦ
    | КОНЕЦ
    | ИНАЧЕ втРасчетПоСреднегодовой.ДатаСведений
    | КОНЕЦ КАК ДатаСведений
```

Связана ли ошибка с запросом, у кого какие мысли, в какую сторону копать?
---
Связана. Переписать без
```1c
    Иначе Выбор
```
---
Связана. Переписать без
```1c
    Иначе Выбор
```
---
Спасибо база типовая erp ошибку зарегистрировали, номер ошибки 00-00539242
---
Я смотрю они там много чего регистрируют, только тут на форуме ребята бывает и шустрее решают проблемы.
---
```1c
    |// Дата сведений - первый ненулевой месяц.
    | ВЫБОР
    | КОГДА втРасчетПоСреднегодовой.ДатаСведений = ДАТАВРЕМЯ(1, 1, 1)
    | ТОГДА ВЫБОР
    | КОГДА втРасчетПоСреднегодовой.ОстаточнаяСтоимостьНа0101 <> 0
    | ТОГДА втРасчетПоСреднегодовой.ГодРасчета
    | КОГДА втРасчетПоСреднегодовой.ОстаточнаяСтоимостьНа0102 <> 0
    | ТОГДА ДОБАВИТЬКДАТЕ(втРасчетПоСреднегодовой.ГодРасчета, МЕСЯЦ, 1)
    | КОГДА втРасчетПоСреднегодовой.ОстаточнаяСтоимостьНа0103 <> 0
    | ТОГДА ДОБАВИТЬКДАТЕ(втРасчетПоСреднегодовой.ГодРасчета, МЕСЯЦ, 2)
    | КОГДА втРасчетПоСреднегодовой.ОстаточнаяСтоимостьНа0104 <> 0
    | ТОГДА ДОБАВИТЬКДАТЕ(втРасчетПоСреднегодовой.ГодРасчета, МЕСЯЦ, 3)
    | КОГДА втРасчетПоСреднегодовой.ОстаточнаяСтоимостьНа0105 <> 0
    | ТОГДА ДОБАВИТЬКДАТЕ(втРасчетПоСреднегодовой.ГодРасчета, МЕСЯЦ, 4)
    | КОГДА втРасчетПоСреднегодовой.ОстаточнаяСтоимостьНа0106 <> 0
    | ТОГДА ДОБАВИТЬКДАТЕ(втРасчетПоСреднегодовой.ГодРасчета, МЕСЯЦ, 5)
    | КОГДА втРасчетПоСреднегодовой.ОстаточнаяСтоимостьНа0107 <> 0
    | ТОГДА ДОБАВИТЬКДАТЕ(втРасчетПоСреднегодовой.ГодРасчета, МЕСЯЦ, 6)
    | КОГДА втРасчетПоСреднегодовой.ОстаточнаяСтоимостьНа0108 <> 0
    | ТОГДА ДОБАВИТЬКДАТЕ(втРасчетПоСреднегодовой.ГодРасчета, МЕСЯЦ, 7)
    | КОГДА втРасчетПоСреднегодовой.ОстаточнаяСтоимостьНа0109 <> 0
    | ТОГДА ДОБАВИТЬКДАТЕ(втРасчетПоСреднегодовой.ГодРасчета, МЕСЯЦ, 8)
    | КОГДА втРасчетПоСреднегодовой.ОстаточнаяСтоимостьНа0110 <> 0
    | ТОГДА ДОБАВИТЬКДАТЕ(втРасчетПоСреднегодовой.ГодРасчета, МЕСЯЦ, 9)
    | КОГДА втРасчетПоСреднегодовой.ОстаточнаяСтоимостьНа0111 <> 0
    | ТОГДА ДОБАВИТЬКДАТЕ(втРасчетПоСреднегодовой.ГодРасчета, МЕСЯЦ, 10)
    | КОГДА втРасчетПоСреднегодовой.ОстаточнаяСтоимостьНа0112 <> 0
    | ТОГДА ДОБАВИТЬКДАТЕ(втРасчетПоСреднегодовой.ГодРасчета, МЕСЯЦ, 11)
    | КОГДА втРасчетПоСреднегодовой.ОстаточнаяСтоимостьНа3112 <> 0
    | ТОГДА КОНЕЦПЕРИОДА(втРасчетПоСреднегодовой.ГодРасчета, ГОД)
    | КОНЕЦ
    | ИНАЧЕ
    | втРасчетПоСреднегодовой.ДатаСведений
    | КОНЕЦ КАК ДатаСведений,
```
---
Вот так сработал

```1c
    | ВЫБОР
    | КОГДА втРасчетПоСреднегодовой.ДатаСведений = ДАТАВРЕМЯ(1, 1, 1)
    | ТОГДА ВЫБОР
    | КОГДА втРасчетПоСреднегодовой.ОстаточнаяСтоимостьНа0101 <> 0
    | ТОГДА втРасчетПоСреднегодовой.ГодРасчета
    | КОГДА втРасчетПоСреднегодовой.ОстаточнаяСтоимостьНа0102 <> 0
    | ТОГДА ДОБАВИТЬКДАТЕ(втРасчетПоСреднегодовой.ГодРасчета, МЕСЯЦ, 1)
    | КОГДА втРасчетПоСреднегодовой.ОстаточнаяСтоимостьНа0103 <> 0
    | ТОГДА ДОБАВИТЬКДАТЕ(втРасчетПоСреднегодовой.ГодРасчета, МЕСЯЦ, 2)
    | КОГДА втРасчетПоСреднегодовой.ОстаточнаяСтоимостьНа0104 <> 0
    | ТОГДА ДОБАВИТЬКДАТЕ(втРасчетПоСреднегодовой.ГодРасчета, МЕСЯЦ, 3)
    | КОГДА втРасчетПоСреднегодовой.ОстаточнаяСтоимостьНа0105 <> 0
    | ТОГДА ДОБАВИТЬКДАТЕ(втРасчетПоСреднегодовой.ГодРасчета, МЕСЯЦ, 4)
    | КОГДА втРасчетПоСреднегодовой.ОстаточнаяСтоимостьНа0106 <> 0
    | ТОГДА ДОБАВИТЬКДАТЕ(втРасчетПоСреднегодовой.ГодРасчета, МЕСЯЦ, 5)
    | КОГДА втРасчетПоСреднегодовой.ОстаточнаяСтоимостьНа0107 <> 0
    | ТОГДА ДОБАВИТЬКДАТЕ(втРасчетПоСреднегодовой.ГодРасчета, МЕСЯЦ, 6)
    | КОГДА втРасчетПоСреднегодовой.ОстаточнаяСтоимостьНа0108 <> 0
    | ТОГДА ДОБАВИТЬКДАТЕ(втРасчетПоСреднегодовой.ГодРасчета, МЕСЯЦ, 7)
    | КОГДА втРасчетПоСреднегодовой.ОстаточнаяСтоимостьНа0109 <> 0
    | ТОГДА ДОБАВИТЬКДАТЕ(втРасчетПоСреднегодовой.ГодРасчета, МЕСЯЦ, 8)
    | КОГДА втРасчетПоСреднегодовой.ОстаточнаяСтоимостьНа0110 <> 0
    | ТОГДА ДОБАВИТЬКДАТЕ(втРасчетПоСреднегодовой.ГодРасчета, МЕСЯЦ, 9)
    | КОГДА втРасчетПоСреднегодовой.ОстаточнаяСтоимостьНа0111 <> 0
    | ТОГДА ДОБАВИТЬКДАТЕ(втРасчетПоСреднегодовой.ГодРасчета, МЕСЯЦ, 10)
    | КОГДА втРасчетПоСреднегодовой.ОстаточнаяСтоимостьНа0112 <> 0
    | ТОГДА ДОБАВИТЬКДАТЕ(втРасчетПоСреднегодовой.ГодРасчета, МЕСЯЦ, 11)
    | КОГДА втРасчетПоСреднегодовой.ОстаточнаяСтоимостьНа3112 <> 0
    | ТОГДА КОНЕЦПЕРИОДА(втРасчетПоСреднегодовой.ГодРасчета, ГОД)
    | КОНЕЦ
    | ИНАЧЕ втРасчетПоСреднегодовой.ДатаСведений
    | КОНЕЦ КАК ДатаСведений,
```
---
спасибо