8.х Поиск в базе по UUID

Тема в разделе "Общие вопросы "1С:Предприятие 8"", создана пользователем Yoda, 6 окт 2008.

  1. TopicStarter Overlay
    Yoda
    Offline

    Yoda Опытный в 1С

    Регистрация:
    5 сен 2008
    Сообщения:
    120
    Симпатии:
    0
    Баллы:
    26
    Есть ли метод поиска по базе данных объекта по ID , не зная самого объекта метаданных? (чтоб по коду получить и какой объект и что за данные, если они существуют).
  2. lazy
    Offline

    lazy Модераторы Команда форума Модератор

    Регистрация:
    1 сен 2007
    Сообщения:
    2.127
    Симпатии:
    4
    Баллы:
    29
    Если у Вас есть УИД, но неизвестно, к какому типу он относится - то единственный вариант, перебирать метаданные, и делать для каждого ПолучитьСсылку() покуда не будет найден нужный элемент...
  3. TopicStarter Overlay
    Yoda
    Offline

    Yoda Опытный в 1С

    Регистрация:
    5 сен 2008
    Сообщения:
    120
    Симпатии:
    0
    Баллы:
    26
    Идея поиска родилась в результате загрузки из файлового режима в SQL . Поиск в справочниках и документах не дал результатов, но потом обнаружил, что это 2е субконто региста бухгалтерии... Есть ли какая - нибудь идея поиска данной пакости (особенно озадачила меня дата : Jan 1 1753 12:00AM)?

    Microsoft OLE DB Provider for SQL Server: The CREATE UNIQUE INDEX statement terminated because a duplicate key was found for the object name 'dbo._AccTtl25882' and the index name '_AccTt25882_ByPeriod_TRRRRRN'. The duplicate key value is (Jan 1 1753 12:00AM, 0x8eed84c5bd70a5564325f7f65c8a5d0f, 0xa6ab000d879cb33311dba094258543fb, 0x08, 0x00000017, 0x84ea00151724cad711dd2be0a5913a32, 0x08, 0x00000056, 0x83f300151724cad711dd54ea24da110b, <NULL>, 0).
    HRESULT=80040E2F, SQLSrvr: Error state=1, Severity=10, native=1505, line=1
  4. BabySG
    Offline

    BabySG Администраторы Команда форума Администратор

    Регистрация:
    10 июн 2007
    Сообщения:
    11.853
    Симпатии:
    12
    Баллы:
    29
    Проверьте даты в регистрах бухни.
    У вас стоит где-то дата меньше 1753 года - 2005 скуль такого не понимает.

    Смотрите дату документа (регистратора) - ибо по нему строиться индекс в данном случае.
  5. TopicStarter Overlay
    Yoda
    Offline

    Yoda Опытный в 1С

    Регистрация:
    5 сен 2008
    Сообщения:
    120
    Симпатии:
    0
    Баллы:
    26
    Спасибо. Простейший запрос до 31.12.1753 г показал 2 документа датированных 0008г н.э. и 0808н.э. ... зато кто-то быстро ввёл документы :)
  6. TopicStarter Overlay
    Yoda
    Offline

    Yoda Опытный в 1С

    Регистрация:
    5 сен 2008
    Сообщения:
    120
    Симпатии:
    0
    Баллы:
    26
    1753 Вылечилось, но у2 базы более интерестный случай при загрузке в SQL пишет : Table "Document137" containes Data type values that cannot be stored to MS SQL Server with zero date offset. Как я понимаю , что это где то стоит дата без времени (пустую дату в реквизитах "Дата" не нашёл)?
  7. TopicStarter Overlay
    Yoda
    Offline

    Yoda Опытный в 1С

    Регистрация:
    5 сен 2008
    Сообщения:
    120
    Симпатии:
    0
    Баллы:
    26
    Нашёл, оказывается MS SQL 2005 сам по себе очень нервный не только на даты документов ,но и на даты в табличных частях документов.
  8. BabySG
    Offline

    BabySG Администраторы Команда форума Администратор

    Регистрация:
    10 июн 2007
    Сообщения:
    11.853
    Симпатии:
    12
    Баллы:
    29
    Он смотрит на даты ВЕЗДЕ, ибо смещение там другое, отличное от 2000-го

Поделиться этой страницей