Dictionary dict = new Dictionary();
TableId tableId;
;
setPrefix("Synchronizace DB");
tableId = dict.tableNext(0);
while (tableId)
{
setPrefix(tableId2Name(tableId));
try
{
appl.dbSynchronize(tableId, false);
}
catch {}
tableId = dict.tableNext(tableId);
}
Tyto komplikace vidím to jako další argument, proč raději upgradovat přímo na AX2009…
středa 12. května 2010
Synchronizace databáze v AX 4
Aktuálně dokončuji upgrade jedné implementace z AX3 na AX4 a odnesl jsem si z toho pár postřehů. První postřeh je staronový - postupně totiž zapomínám, co jak funguje ve starých verzích AX.
Pokud selže synchronizace databáze v AX2009, objeví se formulář se seznamem problémů. V AX4 se obvykle dozvíte jen Cannot execute a data definition language command on (). The SQL database has issued an error. A nevíte ani, která tabulka to způsobila.
Následující job umožní zjistit jména problémových tabulek. Bylo by možné modifikovat přímo dbSynchronize(), ale implementace nezávislého jobu je jednodušší.
Přihlásit se k odběru:
Komentáře k příspěvku (Atom)
ja k tomu pouzivam job forceDbSynchronize stazenej z nakyho ruskyho fora a zatim nezklamal :)
OdpovědětVymazathttp://mail.imh.cz/~drahosh/mediatel/install/CIR_forceDbSynchronize.xpo