Ответ в теме: Как решить ошибку «Не удалось найти объект ‘#tt1′» в 1С:Предприятие 8.3?

База знаний Одина — Одинэсника Форумы ODIN — Форум по 1С Предприятию Как решить ошибку «Не удалось найти объект ‘#tt1′» в 1С:Предприятие 8.3? Ответ в теме: Как решить ошибку «Не удалось найти объект ‘#tt1′» в 1С:Предприятие 8.3?

#36149
bot_avaOdin — Одинэсник
Участник

    Как решить ошибку "Не удалось найти объект '#tt1'" в 1С:Предприятие 8.3?

    Ошибка «Не удалось найти объект ‘#tt1′» в 1С:Предприятие 8.3 (8.3.27.1936) при работе с регистром накопления, как на вашем скриншоте, связана с тем, что в SQL-запросе, который формирует отчет или обработка, используется временная таблица с именем «#tt1», но SQL Server не может её найти или она не создана корректно.

    Причины и решения:

    1. **Изменения в платформе 8.3.27**
    В версии 8.3.27 и выше изменился механизм работы с временными таблицами в запросах, особенно в универсальных отчетах и сложных запросах к регистрам накопления. Иногда платформа некорректно формирует SQL-запрос, и временная таблица не создается или удаляется раньше времени.

    2. **Кэширование и оптимизация запросов**
    Иногда ошибка возникает из-за устаревшего кэша запросов или неправильной оптимизации. Рекомендуется:
    — Очистить кэш запросов (через администрирование или перезапуск сервера).
    — Пересоздать универсальный отчет или обновить его настройки.
    — Проверить, нет ли в отчете или обработке нестандартных расширений, которые могут влиять на формирование запроса.

    3. **Проблемы с SQL Server**
    Ошибка HRESULT=80040E37 и SQLSTATE=42S02 указывает, что SQL Server не находит объект (таблицу). Это может быть связано с:
    — Ограничениями прав пользователя базы данных.
    — Проблемами с транзакциями, когда временная таблица создается в одной сессии, а используется в другой.
    — Особенностями версии SQL Server (у вас Microsoft SQL Server Native Client 11.0, возможно, стоит проверить совместимость).

    4. **Решения на практике**
    — Обновить платформу 1С до более свежей версии (после 8.3.27.1936 вышли исправления, которые решают подобные проблемы).
    — Если обновление невозможно, временно переключить режим формирования отчетов на «Толстый клиент» (в настройках запуска базы).
    — Проверить и при необходимости переписать запросы в универсальном отчете, чтобы избежать использования временных таблиц с именами типа «#tt1».
    — В случае кастомных отчетов — переписать запросы с использованием табличных переменных или других конструкций, не зависящих от временных таблиц.

    5. **Ошибка в договоре аренды (второй скриншот)**
    Сообщение о несоответствии итоговой суммы услуг по графику оплат и начислений — это отдельная бизнес-ошибка, связанная с логикой расчета. Она не связана напрямую с ошибкой «#tt1», но указывает на то, что в договоре аренды есть расхождения в расчетах. Нужно проверить настройки графиков оплат и начислений, возможно, есть несовпадение периодов или сумм.

    **Итог:**
    Ошибка «#tt1» — известная проблема в версии 8.3.27.1936, связанная с формированием временных таблиц в SQL-запросах. Рекомендуется обновить платформу до более свежей версии, проверить права и настройки SQL Server, а также при необходимости переписать проблемные запросы. Для временного обхода можно переключить режим запуска на «Толстый клиент».

    Рекомендую посмотреть обсуждения и решения на форумах 1С, например:
    https://infostart.ru/public/1200611/ — там есть похожие случаи с временными таблицами и их решения.

    Если нужна помощь с конкретным запросом или отчетом — можно предоставить текст запроса для анализа.

    Если нужна помощь с исправлением ошибки в договоре аренды — отдельно опишите логику расчета, могу помочь с проверкой.

    База знаний 1С