Refactor di Invoice Post. Buffer: nuova interfaccia, nuovo enum e…Invoice Posting Buffer

Salve lettore, in questo articolo voglio porre la tua attenzione su una novità che in qualche modo è passata sotto traccia: il refactor della registrazione delle fatture tramite l’utilizzo della tabella Invoice Post. Buffer. 

Se sei un po’ pratico delle codeunit 80 e 90 (sono rispettivamente le codeunit Sales-Post e Purch.-Post) avrai sicuramente visto, se non utilizzato, la tabella Invoice Post. Buffer. Questa tabella è utilizzata nelle versioni antecedenti a Business Central, nella registrazione di fatture e note di credito, per aggregare i record di G/L Entry.

In BC19 se cerchi le funzioni che utilizzano la tabella Invoice Post. Buffer noterai che ora contengono il tag Obsolete come nell’esempio sotto.

La vecchia gestione diventerà obsoleta perché non è estensibile, poiché la chiave primaria in quella tabella non può essere modificata senza introdurre modifiche di rilievo tra le soluzioni e le localizzazioni dei partner. In questa tabella esistono differenze significative tra le localizzazioni, in particolare per APAC, BE, ES, IT, NA e RU, e questo ha reso difficile estrarre le localizzazioni nelle estensioni.

Questo refactoring rende estensibile il processo di registrazione per le transazioni di vendita, acquisto e servizio e consente ai partner di modificare il modo in cui l’algoritmo di registrazione aggrega le voci G/L, ad esempio tramite righe di documento specifiche, gruppi di registrazione o la configurazione fiscale richiesta dalla legislazione locale. I partner possono sostituire le personalizzazioni utilizzando l’interfaccia per la registrazione delle fatture G/L, risolvere i problemi legacy per la tabella Invoice Post. Buffer e utilizzare la propria implementazione della registrazione delle fatture G/L.

Sono state rimosse le dipendenze dalla tabella Invoice Post. Buffer nell’applicazione di base e creato un componente Invoice Posting Buffer con un’interfaccia e un enum estensibile per permettere l’implementazione.

Degli esempi di codeunit che sfruttano la nuova interfaccia Invoice Posting sono le codeunit 815 “Sales Post Invoice”, codeunit 816 “Purch. Post Invoice” e 817 “Service Post Invoice”. Attualmente questa funzionalità è disponibile solo in ambiente sandbox, non può ancora essere attivata in ambiente di produzione. Quando lo sarà dovrai andare, per le vendite ad esempio, in Setup Contabilità Clienti ed impostare un valore sul campo “Setup registrazione fattura”.

Nella codeunit 80, pertanto, troverai spesso controlli di questo tipo. E chiamate alla nuova tabella Invoice Posting Buffer.

Quello che ti ho raccontato vale ovviamente anche per gli acquisti e per i servizi. Infine nota com’è l’interfaccia.

Ti consiglio, pertanto, che se devi fare modifiche di farle sia per la modalità classica che per l’interfaccia; almeno fino a quando le due gestione coesisteranno. Dopodiché se ci sarà ancora il parallelismo, a quel punto allineati con i tuoi colleghi finance affinché impostino dai clienti la stessa codeunit di registrazione.

Fammi sapere se hai già utilizzato questa modalità di registrazione delle fatture.

Leave a Reply

Il tuo indirizzo email non sarà pubblicato.