Quando si esegue l'aggiornamento a Microsoft Dynamics GP 2010, la conversione della tabella per il database aziendale non riesce. Accanto all'azienda viene visualizzata una X rossa che indica un errore. Per determinare quali tabelle non sono riuscite, eseguire lo script seguente:
SELECT b.fileOSName, a.fileNumber, a.PRODID, a.Status, a.errornum, a.errordes, c.CMPANYID, c.INTERID
FROM DYNAMICS.dbo.DU000030 a
JOIN
DYNAMICS.dbo.DU000010 b
ON a.fileNumber = b.fileNumber
AND a.PRODID = b.PRODID
JOIN
DYNAMICS.dbo.SY01500 c
ON a.companyID = c.CMPANYID
WHERE (a.Status <> 0 or a.errornum <> 0) and a.Status <>15
Nella colonna errordesc viene visualizzato il messaggio di errore seguente:
[Microsoft] [SQL Server Native Client 10.0] [SQL Server] Violazione del vincolo PRIMARY KEY 'PKUPRXXXXX'. Impossibile inserire una chiave duplicata nell'oggetto 'dbo. UPRXXXXXX'.
Questo messaggio di errore viene visualizzato quando non si riesce ad aggiornare una o più delle tabelle seguenti:
UPR10203
UPR10204
UPR10205
UPR10206
UPR10207
UPR10209
UPR10213
UPR10214
Causa
Nota Prima di seguire le istruzioni di questo articolo, assicurarsi di avere una copia di backup completa del database che è possibile ripristinare in caso di problemi.
La chiave primaria modificata con Microsoft Dynamics GP 2010 e i record nella tabella violano la nuova chiave. I record non devono essere presenti nelle tabelle di lavoro delle retribuzioni dopo l'esecuzione di una verifica delle retribuzioni. Per risolvere il problema, rimuovere i record.
Per risolvere automaticamente il problema, passare alla sezione "Risolvere ilproblema per me ". Se si preferisce risolvere manualmente il problema, passare alla sezione "Consenti di risolvere ilproblema manualmente ".
Sintomi
Per risolvere automaticamente il problema, fare clic sul collegamento Correggi il problema. Quindi, fare clic su Esegui nella finestra di dialogo Download file e seguire le istruzioni della procedura guidata.
Nota Questa procedura guidata potrebbe essere in inglese. Tuttavia, la correzione automatica funziona anche per le altre versioni di Windows.
Nota Se non si è nel computer che presenta il problema, è possibile salvare la correzione automatica in un'unità flash o in un CD e quindi eseguirla nel computer che presenta il problema.
Correzione automatica
Per risolvere il problema manualmente, seguire questa procedura:
-
Non ripristinare il database aziendale. Questo problema può essere risolto in caso di errore durante l'aggiornamento a Microsoft Dynamics GP 2010.
-
Avviare il SQL Server Management Studio. A questo scopo, usare uno dei metodi seguenti a seconda del programma in uso.
Metodo 1: Per SQL Server 2005 Se si usa SQL Server 2005, iniziare SQL Server Management Studio. A questo scopo, fare clic sul pulsante Start, scegliere Tutti i programmi ,selezionare Microsoft SQL Server 2005e quindi fare clic su SQL Server Management Studio.
Metodo 2: Per SQL Server 2008Se si usa SQL Server 2008, iniziare SQL Server Management Studio. A questo scopo, fare clic sul pulsante Start, scegliere Tutti i programmi ,selezionare Microsoft SQL Server 2008e quindi fare clic su SQL Server Management Studio.
-
Eseguire gli script seguenti nel database aziendale che non riesce:
Delete UPR10203
Delete UPR10204
Delete UPR10205
Delete UPR10206
Delete UPR10207
Delete UPR10209
Delete UPR10213
Delete UPR10214 -
Eseguire lo script seguente per cancellare i record non riusciti:
Delete DYNAMICS..DU000030 where Status = 135 and fileNumber in (424, 425, 426, 427, 428, 429, 385, 386)
-
Avviare Microsoft Dynamics GP 2010 Utilities e aggiornare di nuovo la società.