Ошибка sdbl — Ожидается выражение (pos = 324)

В интернете нашли несколько вариантов исправления этой ошибки. Попробовали практически все. Некоторые оказались безуспешными. В итоге нашли самый простой способ решения этого вопроса.

При открытии справочника Сотрудники в конфигурации «Бухгалтерия предприятия для Узбекистана» появлялось сообщение Ошибка sdbl — Ожидается выражение (pos = 324). Платформа: 1С:Предприятие 8.3 (8.3.6.2100) 

Что пробовали и не помогло:

1. Перезагрузка сервера и сервиса 1С:Предприятия.

2. Запустили тестирование и исправление информационной базы. Результат: из-за большого объема данных в определенных регистрах сведений, реструктуризация до нужного справочника не дошла. Делалась несколько часов, после чего приняли решение остановить.

3. Очистка таблиц MSSQL dbo._ConfigChngR и dbo._ConfigChngR_ExtProps

4. Удаление регистрации изменений

Как решили: Добавили реквизит в справочник «Сотрудники» и запустили в режиме «Предприятие». Реструктуризация справочника прошла успешно и ошибка исправилась.

15 Comments

  1. psa247

    Спасибо!

    Reply
  2. Armando

    А технологический журнал по событиям EXCP и SDBL что показывал?

    Reply
  3. Evgeniy.Pecheykin

    (2) Armando, к сожалению этих данных нету.

    Reply
  4. MsDjuice

    Плюсую! Очень помогло, спасибо.

    Reply
  5. ketr

    помогло!!!

    Reply
  6. evakuzmina

    Помогло! Не проводился самописный документ. Залез в связанный с ним регистр сведений, добавил реквизит — заработало! ТИИ, chdbfl ранее не помогли.

    Reply
  7. NetKat

    Спасибо ! Помогло!.Респект!

    Reply
  8. erdem.badluev

    У меня была подобная ситуация. После обновления конфигурации, при выполнении запроса вылетело «Ошибка sdbl — Ожидается выражение (pos = …)» — все вышеописанные пункты не помогли. Добавлял реквизиты ко всем справочникам и регистрам встречающимся в запросе — не помогло. С помощью SQL Profiler выявил проблемную часть запроса:

    ВЫБРАТЬ
    СписокДоговоров.Ссылка
    ИЗ
    СписокДоговоров КАК СписокДоговоров
    ГДЕ
    (СписокДоговоров.гжкхОтношения = ЗНАЧЕНИЕ(Перечисление.гжкхОтношения.СУправляющейОрганизацией)
    ИЛИ СписокДоговоров.гжкхГУИД <> &ПустойИдентификатор
    И СписокДоговоров.Стадия <> ЗНАЧЕНИЕ(Перечисление.СтадииДоговора.Действующий))
    

    Показать

    Причина ошибки оказалась в условии, а именно строке:

    СписокДоговоров.гжкхГУИД <> &ПустойИдентификатор

    ниже по коду:

    Запрос.УстановитьПараметр(«ПустойИдентификатор», Новый УникальныйИдентификатор(«00000000-0000-0000-0000-000000000000»));

    переставил местами операнды в сравнении и убрал лишние скобки:

    ВЫБРАТЬ
    СписокДоговоров.Ссылка
    ИЗ
    СписокДоговоров КАК СписокДоговоров
    ГДЕ
    СписокДоговоров.гжкхОтношения = ЗНАЧЕНИЕ(Перечисление.гжкхОтношения.СУправляющейОрганизацией)
    ИЛИ &ПустойИдентификатор <> СписокДоговоров.гжкхГУИД
    И СписокДоговоров.Стадия <> ЗНАЧЕНИЕ(Перечисление.СтадииДоговора.Действующий)

    и заработало!

    Платформа 8.2.19.130.

    Видимо парсер запросов виноват…

    Reply
  9. RyNe

    (8) Подскажите, пожалуйста, а как Вы с помощью Profiler нашли ошибку? По каким ключевым словам поиск в логах делали?

    Reply
  10. erdem.badluev

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

    Reply
  11. UserPro

    Удалите базу из списка подключения. И повторно добавьте, должно решить проблему

    Reply
  12. putinpe

    (11) Спасибо тебе милчеловек. Помог твой способ. Самый просто. По новому просто базу добавил и имя базы на английском написал

    Reply
  13. rudnitskij

    (11)Это советы из того же ряда «Обновите релиз/очистите кэш сервера» и прочая муть, которую советуют пользователям, когда не могут по его проблеме ответить прямо сейчас и нужно хотя бы полчаса времени

    Reply
  14. rudnitskij

    Была похожая проблема, перепробовал всё, что гуглится в инете — чистка кеша, обновление релиза «и т.п. для ТП». Решил аналогичным методом — добавлением реквизита к документу, в котором была ошибка. Минус метода оказался в том, что были потеряны данные в одном из реквизитов документа, который был добавлен разработчиком за месяц до сбоя.

    ЗЫ. Что примечательно: в сбойнувшей базе менее, чем за сутки до сбоя, проводили ТиИ

    Reply
  15. vitalya24

    (13)

    Советы из разряда крайне полезных.

    Была подобная ошибка, что делали:

    1. Чистка кеша,

    2. Выгрузка/загрузка в dt

    3. Тестирование chdbfl

    4. Тестирование и исправление в 1с.

    Ничего из этих вариантов не помогло, помогло только добавление реквизита в моем случае в справочник номенклатура.

    Так что не всегда попытка лечения стандартными средствами помогает.

    Автору статьи спасибо.

    Reply

Leave a Comment

Ваш адрес email не будет опубликован. Обязательные поля помечены *