•Migrator może nie uruchomić się z powodu braku assembly, od których jest zależny, •mogą nie uruchomić się zewnętrzne aplikacje, których używa Migrator, czyli Btrieve2SQL.exe i UsersMigrator.exe oraz aplikacja migrowanego modułu np. AmFk.exe, lub Administracja.exe. •Btrieve2SQL.exe może zakończyć się niepowodzeniem i zwrócić kod błędu: •Administracja.exe może zakończyć się niepowodzeniem przy tworzeniu bazy z powodu niespełniania przez hasło polityki haseł albo ogólnego uszkodzenia instalacji. •UsersMigrator.exe może zakończyć się niepowodzeniem z powodu nieprawidłowego loginu lub hasła albo ogólnego uszkodzenia instalacji •Migrator odnajduje Btrieve2SQL.exe i UsersMigrator.exe na podstawie wpisów w rejestrze, wpisy są dodawane podczas instalacji Migracji w gałęzi HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Sage\Symfonia, np.: •Administracja.exe jest odnajdowana na podstawie rejestru. •Predefiniowane profile i skrypty są znajdowane na podstawie rejestru, w podkatalogach katalogu określonego przez: •Migrator odnajduje aplikacje modułów na podstawie wpisów w rejestrze, te wpisy tworzą instalacje modułów, dla FK np.: •Użytkownicy SQL określeni w parametrach Migracji mogą nie posiadać wystarczających uprawnień. •Plik TemplateDB_16.11.bak może nie być wrzucony do domyślnego katalogu backup'ów SQL Server'a. Tego rodzaju błędy można diagnozować na podstawie output'a Migratora, systemowego dziennika zdarzeń lub logów Symfonia.Common.
|
•mogą wystąpić błędy składni SQL, •skrypty mogą być nieprzygotowane na specyficzne dane konkretnej bazy
W bazie TemporaryDB i TargetDB Migrator zakłada tabele dla logowania procesu Migracji: •TableLog, •TransformSteps, •StepLog, •ScriptSequence, •ScriptLog Procedura [dbo].[spShowTransformErrors] zwraca wszystkie błędy z tabel logów. Pomocne w diagnozie będzie też zapytanie: select seq.scriptname, log.eventtype, log.message from dbo.scriptsequence seq inner join dbo.scriptlog log on log.scriptid = seq.id
Błędy SQL, które wystąpiły w kroku UpdateTemporary należy diagnozować na bazie TemporaryDB, zaś w kroku SQL2SQL na bazie TargetDB
|