I nuovi General Ledgers di Exact Online compaiono solo dopo una settimana in glaccountsincremental (Invantive Cloud → SQL Server)

Qual è il problema

Copiamo i dati da Exact Online a un database SQL utilizzando il modulo applicativo di Invantive Cloud, in cui usiamo PSQL per caricare i dati dalla tabella GLAccountsIncremental. La sincronizzazione viene eseguita quotidianamente, ma i nuovi conti del General Ledger compaiono nel nostro database SQL solo dopo circa una settimana.

Esempio concreto

Di recente sono stati creati nuovi conti di mastro il 29 gennaio. Il 5 febbraio questi non erano ancora presenti nel nostro database SQL, nonostante la sincronizzazione venga eseguita quotidianamente. Anche dopo aver eseguito manualmente la sincronizzazione, queste righe non venivano caricate.
Quando le righe vengono infine caricate, nella colonna Created vediamo effettivamente la data di creazione (29 gennaio).

Cosa ho già provato

  • Verificare che l’esecuzione giornaliera del modulo applicativo vada a buon fine.
  • Eseguire manualmente di nuovo il processo di copia.
  • Verificare se eventuali filtri o restrizioni sulle date nei nostri script PSQL possano escludere i dati.

Tutto ciò non ha fornito alcuna spiegazione del motivo per cui le nuove righe diventano disponibili solo dopo circa una settimana.

Domanda

Come mai le nuove righe in GLAccountsIncremental diventano disponibili così tardi?
Esiste forse un’impostazione in Invantive Cloud o Exact Online che determina quando questa tabella viene aggiornata o sincronizzata?

In linea di principio, il driver UniversalSQL per Exact Online è in tempo reale.

Ci sono comunque delle cache; queste possono essere configurate per i database Invantive Cloud come descritto in:

Questi valori normalmente non vengono utilizzati in Invantive App Online perché lì le cache sono disattivate.

Possono anche essere impostati tramite istruzioni set come:

set use-http-disk-cache ...

e

set use-http-memory-cache ...

Vedi anche:

Grazie mille per la vostra rapida risposta!

Le cache erano impostate su 57600 (16 ore), le ho ora abbassate a 3600 (1 ora). Ma trovo comunque strano che ci voglia più di una settimana prima che le nuove righe vengano caricate. Da cosa potrebbe dipendere?

Un’impostazione della cache di 16 ore non può essere la causa.

La causa deve quindi trovarsi da qualche parte nella logica e/o nella frequenza delle chiamate.

Il consiglio è di controllare il codice per set e per gli hint SQL /*+ ... */.

No, non ho alcun set di SQL hint nel codice. Potrebbe forse dipendere dal fatto che si tratta di una tabella Incremental? Ci sono altri punti in cui si possono trovare cache oltre alla http disk e alla bridge response?

image

Una tabella incrementale richiederà le modifiche. Finché Exact Online le registra, la modifica verrà acquisita.

Altre cache che potrebbero causare questo problema non sono note.

Si consiglia di rendere il problema riproducibile e di analizzarlo con query nell’editor UniversalSQL.

Questa domanda è stata chiusa automaticamente dopo 1 settimana di inattività. L’ultima risposta fornita è stata contrassegnata come soluzione.

Se il problema dovesse ripresentarsi, si prega di porre una nuova domanda in un argomento separato. Si prega di includere nella nuova domanda un link a questo argomento, incollandone l’URL nel testo.