Sintomi

Sono presenti note duplicate o collegate tra loro in Microsoft Dynamics GP.Questo articolo fornisce uno script che può essere usato per determinare l'indice di nota più alto assegnato in una determinata società. È anche possibile usarlo per reimpostare il valore dell'indice note successivo al numero successivo più alto. In questo modo si eviterà che altri indici di nota in futuro siano collegati incrociati o non corretti.Questo non correggerà gli indici delle note già non corretti.

Causa

L'indice note successivo nella tabella master (SY01500) della società è stato impostato su un valore troppo basso, causando la ricezione di indici delle note uguali ad altri record nei nuovi record.Risoluzione 1. Creare un backup di DYNAMICS e di tutti i database aziendali.2. Eseguire l'istruzione seguente sul database della società che contiene le note duplicate o collegate tra loro.Nota  Se si usa Analizzatore query, eseguire l'istruzione in SQL Query Analyzer. Per aprire Analizzatore query, fare clic sul pulsante Start , scegliere Programmi , selezionare Microsoft SQL Server e quindi fare clic su Analizzatore query . Se si usa Microsoft SQL Server Management Studio, eseguire l'istruzione in Microsoft SQL Server Management Studio. Per aprire Management Studio, fare clic sul pulsante Start , scegliere Programmi , scegliere Microsoft SQL Server 2005/2008/2012 e quindi fare clic su SQL Server Management Studio . Per eseguire uno script, fare clic su Nuova query .

--------------------------------------------- FindMaxNoteIndex.SQL /*** ** **Scopo: ** ** Trovare il valore massimo di NOTEINDX da tutte le tabelle, incluso Project Accounting. ** ** Questo script deve essere eseguito sulla società in cui le note non sono corrette.** aggiornerà automaticamente il tuo SY01500 all'indice delle note successivo corretto.** */ se esiste (selezionare * da tempdb.. sysobjects dove name = '##GPSMaxNote') drop table dbo.##GPSMaxNote imposta nocount su create table ##GPSMaxNote (MaxNoteIndex numeric(19,5) null) Andare----------------------- dichiara @cStatement varchar(255) /* Valore dal t_cursor */ dichiarare @noteidx numerico(19;5) dichiarare @database come varchar(5) set @database = cast(db_name() come varchar(5))/* Ottenere le tabelle con un nome di colonna NOTEINDX. */dichiara T_cursor cursore per select 'declare @NoteIndex numeric(19,5) select @NoteIndex = max(' +c.name+ ') from ' + o.name + ' insert ##GPSMaxNote values(@NoteIndex)' da sysobjects o, syscolumns c dove o.id = c.id e o.type = 'U' e (c.name = 'NOTEINDX' o c.name come '%noteidx%' o c.name come '%niteidx%' o c.name ='NOTEINDX2')/* Ok, abbiamo l'elenco di tabelle. Ora ottieni il valore massimo di NOTEINDX da ogni tabella. */aprire T_cursor recupero successivo da T_cursor in @cStatement mentre (@@fetch_status <> -1) Iniziare exec (@cStatement) recupero successivo da T_cursor in @cStatement Fine deallocate T_cursor/* Display Maximum Note Index */ selezionare 'Max Note Index:', max(MaxNoteIndex) da ##GPSMaxNote dove MaxNoteIndex non è Null/* Update Next Note Index */ usare DYNAMICS set @noteidx = (selezionare max(MaxNoteIndex) da ##GPSMaxNote dove MaxNoteIndex non è Null) aggiornare SY01500 impostare NOTEINDX = (@noteidx + 1,0) dove INTERID=@database imposta nocount disattivato-------------------------------------------------------------------------- In questo modo si troverà l'indice massimo delle note per tutte le società e quindi si aggiornerà la tabella SY01500 per assicurarsi che le note non vengano collegate tra loro in futuro.3. Ripetere il passaggio 2 per ogni database aziendale con indici di note tra collegati. Questo articolo è stato TechKnowledge Document ID: 4837

SI APPLICA A

Microsoft Dynamics GP 9.0

Microsoft Business Solutions- Great Plains 8.0

Microsoft Business Solutions- Great Plains 7.5

Microsoft Great Plains eEnterprise 7.0

Microsoft Great Plains Dynamics 7.0

Great Plains eEnterprise 6.0

Great Plains Dynamics 6.0

System Manager

Serve aiuto?

Vuoi altre opzioni?

Esplorare i vantaggi dell'abbonamento e i corsi di formazione, scoprire come proteggere il dispositivo e molto altro ancora.