Simptomi
Kada pokušate da dodate polje u repliciranu tabelu u softveru Microsoft Dynamics NAV 2009 servisni paket 1 (SP1) ili Microsoft Dynamics NAV 5.0 SP1, dobijate poruku o grešci koja odgovara sledećoj:
Došlo je do sledeće SQL Server greške ili grešaka prilikom pristupa Table_Name tabeli:
650,"42000",[Microsoft][ODBC SQL Server Upravljački program][SQL Server]Možete samo da navedete READPAST zaključavanje u nivoima izolacije PROČITANO ILI PONAVLJAJUĆE ČITANJE. SQL: ALTER TABLE "NAVDB". dbo". CRONUS International Ltd_$MyTable" PODRAZUMEVANO DODAVANJE "polja4" VARCHAR(10) NOT NULL CONSTRAINT "$ndodefault$625437302$4" "'
Napomene
-
Table_Name je čuvar mesta za stvarno ime tabele koju želite da koristite za dodavanje polja.
-
Do ovog problema dolazi na računaru koji koristi Microsoft SQL Server 2008 i koji ima instalirano Microsoft Dynamics NAV okruženje. Pored toga, do ovog problema dolazi samo ako je Microsoft SQL Server Replication omogućena u jednoj od Microsoft Dynamics NAV tabela.
Uzrok
Do ovog problema dolazi zato što ne možete da promenite šemu replicirane tabele u sistemu Microsoft SQL Server 2008 ako je odgovarajuća transakcija podešena da koristi nivo izolacije SERIALIZABLE. Ovo je novo ograničenje za Microsoft SQL Server 2008 koje nije postojalo u prethodnim verzijama sistema Microsoft SQL Server. Međutim, podrazumevana konfiguracija usluge Microsoft Dynamics NAV koristi nivo izolacije SERIALIZABLE za promenu tabela.
Rezolucija
Da biste rešili ovaj problem, konfigurišite Microsoft Dynamics NAV 5.0 SP1 i Microsoft Dynamics NAV 2009 SP1 da biste koristili nivo izolacije REPEATABLE READ u sistemu Microsoft SQL Server umesto nivoa izolacije SERIALIZABLE.
Za više informacija o tome kako da promenite nivo izolacije koji koristi Microsoft Dynamics NAV, posetite sledeće članke baze znanja (KB) i povezane hitne ispravke: