Маю зараз халепу:
Взяв стартову базу з Terrasoft Sales 3.4.0.54
Розробка велась на MSSQL2008R2x64 під Windows 7 Home Edition.
Зробив бекап для перенесення бази на MSSQL2008R2x32 під Windows 2003 Server.
На вказаному сервері бекап піднімається нормально.
Але!
В адміністраторі на відновленій базі не розкриваються таблиці tbl_Account та tbl_Contact
Невозможно редактировать сервис 'Accounts\General\Main Grid\tbl_Account/tbl_Contact'. List index out of bounds (0)>

Сервіс tbl_Account вдалося скопіювати-перейменувати-відновити так, що функціонує нормально.
А от з сервісом tbl_Contact провернути таку операцію не вдалося.
Копія створюється.
При спробі зберегти відкриту копію виходить повідомлення:
Object 'Relation.ParenField' is not assigned>
При спробі перейменувати копію йде інше повідомлення:
Duplicate hash list entry: 60C1F956B6AB49E6A2D7450FF5D44464>

Провів ще експеримент по використанню пакета оновлень на обох компах:
підняв стартову базу в дві копії - TS, TS1
в TS1 перейменував назву tbl_Account з "Контрагент" на "Контрагент1"
сформував пакет оновлень для TS і спробував його накласти.
Результат однаковий:
Access violation at address 00439A38 in module 'TSAdmin.exe'. Read of address 00000004>

(Це після того як аналогічний результат отримав при спробі накласти пакет оновлень по реальних змінах)

Наостанок ще спробував створити скрипти для перенесення бази.
Теж не вдалося:
------------------------------

Выдано исключение типа "System.OutOfMemoryException".

------------------------------
Тепер чекаю реакції по інциденту і білш нічого іншого придумати не вдається.
Хіба що повторити розробку і наповнення даними заново.

Нравится

7 комментариев

Ігоре, рекомендую Вам видалити сервіси повністю запитом до бази даних

delete from tbl_Service
where Code = 'tbl_Account'

або в адміністраторі

04

і залити наново.

Нажаль, помилку обійти не вдається.

Коли вилучати сервіс через адміна, то система видає таку помилку:
[12.02.15 22.10.29.181] (E) Невозможно удалить 'Contacts\General\Main Grid\tbl_Contact'. List index out of bounds (0) «Call Stack»

Якщо вилучити запитом в базі і відновити сервіс з файлу, то, при спробі відкрити відновлений сервіс, повертається початкова помилка:
[12.02.15 23.26.01.384] (E) Невозможно редактировать сервис 'Contacts\General\Main Grid\tbl_Contact'. List index out of bounds (0) «Call Stack»

Ігоре, пересвідчіться, будь ласка, що Вами коректно перенесені і зареєстровані бінарні файли системи, оскільки проблема з редагуванням в тому числі може виникати через пошкодження бінарних файлів системи.

Чи намагалися Ви повторно розвернути резервну копію у себе на комп'ютері?

На комп"ютері замовника я зробив переінсталяцію програмного продукту.

Окрім того тестування системи пакетного оновлення на обох комп"ютерах дало однаковий негативний результат.

Але на моєму компі база піднімається коректно.

Можливо є якісь нюанси створення бекапу для MSSQL2008R2x64, які не враховуються в MSSQL2008R2x32 ?

Здравствуйте, Игорь.
Процедура создания резервной копии базы данных не отличается на MS SQL Server R2 x64 и MS SQL Server R2 x86. Разница просто в "битности" серверов. Правильно я понимаю, что проблем с созданием и установкой резервных копий нет, а проблема при попытке переноса пакета обновления?
С уважением, Terrasoft Support Team.

Так, Олександре, з резервними копіями проблем немає.
Є проблема скористатися базою, відновленою з резервної копії, на сервері призначення.
Хоча маю собі таке уявлення, що перенесення бази є формою повного відтворення всіх сервісів.

Щодо використання механізму пакету оновлень, то з ним, скоріше за все, вийшла плутанина з послідовністю оновлення сервісів.

На даний час вдалося послідовно оновити сервіси з файлів.
Довідкові дані з таблиць переніс скриптами.

З повагою,
Ігор АНдрусенко.

Если в обновлении участвовали сервисы таблиц, то попробуйте на новом сервере создать логин fkeys (Sequrity\Logins, правой кнопкой, New Login...) , а потом выполнить на базе запрос: sp_change_users_login 'auto_fix', 'fkeys'
С уважением, Terrasoft Support Team.

Показать все комментарии