Messaggio di errore "Virgolette non chiuse dopo la stringa di caratteri" durante l'esecuzione del saldo di valutazione cronologico obsoleto per Payables Management in Microsoft Dynamics GP

Questo articolo fornisce una soluzione a un errore che si verifica quando si esegue il report Bilancio di valutazione cronologico obsoleto per Gestione pagamenti.

Si applica a: Microsoft Dynamics GP
Numero KB originale: 2580792

Sintomi

Quando si esegue il report Bilancio di valutazione cronologico obsoleto per Gestione pagamenti, viene visualizzato uno dei messaggi di errore seguenti:

Messaggio di errore 1 (per nota di credito)

[Microsoft] [ODBC SQL Server Driver][SQL Server]Riga 1: sintassi non corretta vicino a 'XXXXX'.[ Microsoft][ODBC SQL Server Driver][SQL Server]Virgolette non chiuse prima della stringa di caratteri ' e DocumentType=5'.

Messaggio di errore 2 (per il pagamento)

[Microsoft] [SQL Native Client] [SQL Server]sintassi non corretta vicino a 'S'[Microsoft][SQL Native Client][SQL Server] Virgolette non chiuse dopo la stringa di caratteri 'and DocumentType = 6"

È seguito dal messaggio seguente:

La procedura archiviataHistoricalAgedTrialBalance ha restituito i risultati seguenti: DBMS: 105, Microsoft Dynamics GP: 0

Causa

Questi errori sono causati da un problema noto in Microsoft Dynamics GP in cui viene immessa una nota di credito o un documento di pagamento manuale con un apostrofo nel campo Numero giustificativo .

Risoluzione

Per risolvere il problema, usare uno dei metodi seguenti:

Risoluzione 1

  1. Eseguire questo script in SQL nel database aziendale per cercare qualsiasi numero di giustificativo, numero di documento o ID fornitore con un singolo apostrofo, letto come virgolette non chiuse dal processo. Tutti i risultati per il numero di giustificativo (CONTRLNUM) sono probabilmente la clausola , ma anche il numero di documento e l'ID fornitore vengono aggiunti allo script e possono essere o meno un problema:

    SELECT * FROM PM00400
    WHERE 
    CNTRLNUM LIKE '%''%' or 
    DOCNUMBR LIKE '%''%' or 
    VENDORID LIKE '%''%' 
    
  2. Per tutti i risultati restituiti dallo script precedente, eseguire lo script 'ALL Payables' per ogni risultato restituito in precedenza. Poiché il problema è più che probabile un numero di giustificativo perché è un campo modificabile per l'utente. Controllare la configurazione dei pagamenti per assicurarsi di non avere un apostrofo nel numero di voucher successivo predefinito.

    Nota

    Se non si dispone di questo script, è possibile aprire un caso di supporto per assistenza per ottenere questo script e identificare tutte le tabelle in cui potrebbe trovarsi il documento.

  3. Correggere manualmente il numero di voucher con un'istruzione "update" diretta in SQL per tutte le tabelle restituite dallo script 'ALL Payables' per rimuovere il singolo apostrofo da un numero di giustificativo e il numero di documento Assicurarsi di scrivere il campo in modo che sia esattamente lo stesso in tutti i campi/tabelle in cui è stato modificato. Se il problema riguarda l'ID fornitore, non usare questi passaggi. È possibile usare lo strumento di modifica del fornitore in PSTL per modificare un ID fornitore.

Se hai bisogno di assistenza, puoi aprire un caso di supporto per ulteriore assistenza. Per raggiungere il servizio clienti telefonicamente, chiamare il numero 888-477-7877.

Ulteriori informazioni

Per evitare che questo problema si verifichi in futuro, è possibile bloccare il campo Numero giustificativo per impedire agli utenti di modificare il numero del giustificativo. A tale scopo, seguire questa procedura:

  1. Selezionare Microsoft Dynamics GP, selezionare Microsoft Dynamics GP Tools Setup PurchasingPayables (Impostafornitori di acquisti>) di Microsoft Dynamics GP>Tools>.>

  2. Deselezionare l'opzione Sostituisci numero giustificativo nella voce transazione e quindi selezionare OK.