8.х Помогите с переносом файловой БД на SQL

Тема в разделе "Установка платформы "1С:Предприятие 8"", создана пользователем hristoff, 27 июн 2013.

  1. TopicStarter Overlay
    hristoff
    Offline

    hristoff

    Регистрация:
    26 июн 2012
    Сообщения:
    15
    Симпатии:
    0
    Баллы:
    1
    Тема наверно уже подымалась не раз. Но всеже прошу помощи.
    Как мне справиться с ниже описанной проблемой не зная структуры БД и навыков программирования под 1С.

    Вобщем все банально при загрузки базы 1С 8.2 БГУ в SQL получаю ошибку:

    Ошибка загрузки информационной базы. В информационную базу загружены не все данные
    по причине:
    Попытка вставки не уникального значения в уникальный индекс:
    Microsoft SQL Server Native Client 10.0: Выполнение инструкции CREATE UNIQUE INDEX прервано, поскольку обнаружен повторяющийся ключ для объекта с именем "dbo._AccRgAT0542" и индекса с именем "_AccRgA0542_ByPeriod_TRRRRRRN". Повторяющееся значение ключа: (ноя 1 5999 12:00AM, 0x84c337a21c70478b4ef7b74ba6e02534, 0x9988e9187ba2c1de41141f92ff9e20db, 0x9b40c114203285574b3b3b231d62e4ca, 0xaa94f46d04ad3e5011e25f621883a3d9, 0x00000000000000000000000000000000, <null>, 0).
    HRESULT=80040E2F, SQLSrvr: SQLSTATE=23000, state=1, Severity=10, native=1505, line=1

    Далее взял я Tool_1CD и попробовал найти повторы. Но значений в _AccRgAT0542 слишком много.
    Далее искал ноя 1 5999 12:00AM. Вот тут загадка это похоже уже заработало смещение дат + 2000 поскольку в базе есть значения только с датами 3999 но их тоже очень много, да с временем 12:00AM нет ни одного.

    Только не понял насчет значений ключа при загрузке он показывает смещение или его значение ?
    Хотя на подобные значения я наткнулся:
    a6e02534-b74b-4ef7-84c3-37a21c70478b = 0x84c337a21c70478b4ef7b74ba6e02534
    Но опятьже их очень много.


    Прикладываю xml выгрузку _AccRgAT0542. Может кто сможет мне ткнуть где конкретно эти повторы.

    СКАЧАТЬ ВЫГРУЗКУ
  2. Неназываемый
    Offline

    Неназываемый Опытный в 1С Команда форума

    Регистрация:
    2 фев 2007
    Сообщения:
    507
    Симпатии:
    7
    Баллы:
    29
    Перед выгрузкой сделать Тестирование и исправление и chdbfl.exe

    И я немного не догнал, что за xml выгрузка такая?
    У вас обмен между базами или конвертация файловой в sql?
  3. shurikvz
    Offline

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

    Регистрация:
    1 окт 2009
    Сообщения:
    8.410
    Симпатии:
    316
    Баллы:
    104
    И что вам даст то, что вы в файловой базе найдете повторы? Что делать то с ними дальше будете?

    База на SQL была создана со смещением дат 2000?
    ТиИ файловой сделайте со всеми галками.

    Записи с датами 3999 - это итоги по РН "на конец всех времен". Так и должно быть.
  4. TopicStarter Overlay
    hristoff
    Offline

    hristoff

    Регистрация:
    26 июн 2012
    Сообщения:
    15
    Симпатии:
    0
    Баллы:
    1
    Сразу скажу chdbfl.exe и ТиИ не помогают.
    xml это я через Tool_1CD вытянул конкретно данные из конкретной таблицы файла 1CD. Просто зачем всю выкладывать ругается только на определенную таблицу да и искать так немного проще.
    А базу простой выгрузкой переношу.



    Про повторы где-то уже писалось что помогает следующие действия:
    1. Сделать копию файла 1CD!
    2. В Tool_1CD включить в настройках отображение смещений в файле.
    3. Посмотреть адрес (смещение) лишней записи.
    4. Шестнадцатиричным редактором изменить по этому адресу один байт с 00 на 01.
    5. Открыть базу в конфигураторе. Открыть ТиИ.
    6. Поставить галочку (только одну!) на "Реиндексация таблиц". Выполнить ТиИ.
    7. Поставить галочку (только одну!) на "Сжатие таблиц". Выполнить ТиИ.

    Про смещение тоже читал установленно все верно 2000.

    Про 3999 спасибо не знал про такой нюанс думал какие то косяки в базе.

    Какие ещё варианты есть ?
  5. shurikvz
    Offline

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

    Регистрация:
    1 окт 2009
    Сообщения:
    8.410
    Симпатии:
    316
    Баллы:
    104
    А какому регистру накопления (в терминах 1С) соответствует AccRgA0542? Если из режима 1С предприятие попробовать перерасчитать итоги по этому регистру?
  6. TopicStarter Overlay
    hristoff
    Offline

    hristoff

    Регистрация:
    26 июн 2012
    Сообщения:
    15
    Симпатии:
    0
    Баллы:
    1
    не могу сказать поскольку не могу определить.

    Но вобщемто моя проблема решается банальным пересчетом итогов в ТиИ.

    Но както я побаиваюсь его делать. Может ли что-то пойти не так после пересчета ? Или можно смело сделать ?

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