Ошибки синхронизации при upgrade
Случилось делать upgrade с DAX4 на DAX5, возникли ошибки синхронизации. То есть выдает сообщение "не удалось синхронизировать 8 таблиц", списка таблиц нет. Удалось победить следующим образом:
1. Выйти из мастера upgrade и войти в Аксапту (надо было хоть посмотреть что там еще не сделано, в этом мастере).
2. Список таблиц, которые не синхронизировались, совпал со списком таблиц, где были warnings, которые все были типа "New unique index named 'I_1938BALCOLIDX may cause unique index violations'."
3. Открываем administrative tool/event viewer/ windows logs / applications. Смотрим там сообщение об ошибке от Dynamics Server. Там есть список полей, которые должны быть уникальны. Почему то мне удалось это увидеть ни в аксапте, ни в MSSQL, название индекса мне ничего не говорит.
4. Открываем SQL management studio, и пишем там кверю типа SELECT count(dataareaid), COUNT(balancesheet), count(COLUMN_), dataareaid, balancesheet, COLUMN_ from LedgerBalColumnsDim GROUP BY dataareaid, balancesheet, COLUMN_
HAVING count(*) > 1 order by dataareaid, balancesheet, column_
Скажу честно в кверях я разбираюсь как свинья в апельсинах, так что может и получше способы есть.
Кверя выдает что есть мол такие записи и много. Там где мало - нет проблем поправить, но несколько таблиц имеют таких записей сотни. Потому что длина поля с названием отчета стала короче, был сделан truncate и возникли дубли. То есть пень я пнем, наверное это сообщение было в предупреждениях на момент update, но так как их там много было, а времени всегда мало, то были они проигнорированы.
Вопрос теперь что с этим делать. Собственно данные эти я могу экселем перести и можно табличку эту очистить вообще, хотя компаний много и поэтому ломает это делать. А ручками вычищать чего то не соображу как.
Может получше способы есть.
__________________
Может быть выйдет, а может не-е-е-ет...
Новая песня вместо штиблет..
|