Data ultimo aggiornamento: 31/01/2024

Clicca per accedere al sito di NTS Informatica
Clicca per accedere all'argomentoClicca per accedere all'argomentoClicca per accedere all'argomentoClicca per accedere all'argomento
Clicca per accedere al sito di NTS Informatica

Fatturazione Elettronica

7 Note tecniche per installatori\programmatori

7.1 Modifiche al database e componenti interessati

Sono stati realizzati i seguenti componenti:

· DLL\PDB:

o B*FECONS (consolle fattura elettronica),

o B*FESYNC (sincronizzazione con DocEasy),

o B*FEPEFE (personalizzazione fattura elettronica)

· RPT: BNFECONS

· ARCPROC.MODX . Aggiunte voce di menu 4.1.I (Fatturazione elettronica) e se presente anche modulo contabilità 2.1.E (Fatturazione elettronica

· PROVA.MODX Il programma si basa sulle seguenti nuove tabelle che se non presenti vengono create al lancio del programma BNFECONS (Consolle fattura elettronica)

Blocco XML

Tabella

TESTATA

(fetestmag)

CORPO

(femovmag)

CODICE ARTICOLO

(femovmagart)

ALTRI DATI GESTIONALI)

(femovmagex

SCONTI/MAGGIORAZIONI DI RIGA

(femovmagscon)

DATI PAGAMENTO

(fedatipag)

DATI ORDINE

(fedatiord)

DATI DDT

(fedatiddt)

DATI RIEPILOGO IVA

(fedatiiva)

DATI CASSA PREVIDENZIALE

(fedaticassa)

ALLEGATI

(feallegati

CUSTOM ESTRAZIONE DATI

(fecustom)

Crea inoltre le seguenti tabelle:

TTFETESTMAG, TTFEMOVMAG, TTFEDATICASSA, TTFEALLEGATI, TTFEDATIDDT, TTFEDATIIVA, TTFEDATIORD, TTFEDATIPAG, TTFEMOVMAGART, TTFEMOVMAGEX, TTFEMOVMAGSCON, TTFESCOMAGG,

Inoltre sempre all'avvio del programma verifica se ci sono i seguenti campi e se non presenti li aggiunge

Anagra.an_an_feescl

anagra.an_codeori

anagra.an_emailpec

anagen.ag_emailpec

anasto.as_emailpec

destdiv.dd_estpariva

deststo.dd_estpariva

destgen.dd_estpariva

ttdestdiv.dd_estpariva

ttdestgen.dd_estpariva

ttdeststo.dd_estpariva

tabciva.tb_art15

tabatti.tb_regfiscfe

tabpaga.tb_modpagafe

tabpaga.tb_modpagafe_1

tabpaga.tb_modpagafe_2

tabpaga.tb_modpagafe_3

tabpaga.tb_modpagafe_4

tabpaga.tb_modpagafe_5

tabpaga.tb_modpagafe_6

tabanaz.tb_codeori

tabanaz.tb_idpaesetrfe

tabanaz.tb_codfisctrfe

tabanaz.tb_reauff

tabanaz.tb_reanum

tabanaz. tb_reacapsoc

tabanaz.tb_reasocioun

tabanaz.tb_reasocioun

tabanaz. tb_reastatoliq

tabanaz.tb_teleftrfe

testmagc.tm_numdocex

pnnote.py_numdocex

7.2 Integrazione con altri programmi

Dalle versioni Net 2015 SR9 CU1, CUBE 1 SR3 CU1, CUBE 2 SR1 è gestita l'integrazione con i programmi Gestione documenti di magazzino, fatturazione differita, fatturazione differita interattiva. Se infatti è attivo il modulo Fatturazione elettronica base e in personalizzazione fattura elettronica è impostata l'integrazione con DocEasy è possibile gestire l'estrazione dati e l'invio a DocEasy (Come documentato nel paragrafo 8.1 sulla Personalizzazione fattura elettronica). In particolare

In apertura di un documento estratto il cui status è inviato il programma avvisa di prestare cautela nella modifica del dato:

Dal programma Fatturazione differita invece è possibile visualizzare lo Status delle fatture differite emesse

7.3 Personalizzazione estrazione dati per fattura elettronica

Menù visibile solo con il modulo Fattura elettronica Plus

In questa tabella è possibile impostare una mappatura tra le tabelle di Business Net/Cube e le tabelle della fatturazione elettronica

Questa impostazione è utile se l'utente vuole estrarre ulteriori informazioni rispetto a quelle già presenti nelle tabelle standard della fattura elettronica

Per potere personalizzare l'estrazione dei dati è possibile farlo solo se nella chiave è presente il modulo fatturazione elettronica plus e sono possibili due alternative:

1. Configurare le impostazioni in personalizzazione estrazione dati;

2. Personalizzare tramite la creazione di file script

3. Personalizzare tramite l'ereditarietà con vb.net

Nel primo caso è possibile configurare solo le seguenti tabelle di Business Net/Cube:

· per le tabelle della fattura elettronica Codici articolo (femovmagart), corpo fattura elettronica (femovmag), altri dati gestionali articoli (femovmagex): movmag, artico, codarfo, analotti, commess;

· per la tabella Testata fatt. elettronica(fetestmag): testmag, anagra

Se sono tag riferiti a femovmagex o femovmagart saranno sempre nuovi tag, mentre nelle altre tabelle fe (fetestmag e femovmag) saranno update su campi esistenti)

Sono state rese disponibili le seguenti funzionalità

1. per le tabelle FETESTMAG, FEMOVMAG:

· è possibile sia inserire nuovi valori da campi del database sostituendo interamente il contenuto del campo di fetestmag/femovmag, oppure accodare il valore esistente. Per accodare basta anteporre al nome della tabella business il carattere '+'.

· è possibile inserire dei testi fissi, basta che come tabella bus si indichi 'TESTOFISSO'. Se si scrive '+TESTOFISSO' il campo non viene alimentato con il testo indicato nel nome campo di business, ma il testo fisso indicato nel nome campo business viene accodato al testo esistente. In questi casi, sarà cura dello sviluppatore controllare che il testo personalizzato non sia troppo lungo per il campo che lo dovrà contenere. Ovviamente per i campi DATETIME il testo personalizzato non può essere accodato al contenuto della cella. Utilizzando la colonna 'ordine di esecuzione' è inoltre possibile seguire la seguente modalità operativa:

- con una prima riga alimentare il campo

- poi con una riga a seguire posso aggiungere del testo al campo precedentemente compilato.

2. Per le tabelle FETESTMAG, FEMOVMAG, FEMOVMAGART, FEMOVMAGEX è possibile usare come nome tabella di business 'QUERY'; così facendo il contenuto del campo che andremo a scrivere in fetestmag sarà il risultato della subquery che dovrà essere scritta nel campo 'query' della griglia (fecustom). La subquery deve avere le seguenti caratteristiche:

· Deve restituire sempre e solo un record;

· deve avere nella WHERE la join con la tabella FETESTMAG/FEMOVMAG. Sotto sono esposti degli esempi di subquery funzionanti. (può essere utile rinominare le tabelle della subquery con degli alias, per evitare errore di nome tabella ambiguo con la query principale)

o SELECT an_stato FROM anagra as A1 inner join testmag as T1 on A1.codditt = T1.codditt AND A1.an_conto = T1.tm_conto WHERE T1.codditt = fetestmag.codditt AND T1.tm_tipork = fetestmag.tm_tipork AND T1.tm_anno = fetestmag.tm_anno AND T1.tm_serie = fetestmag.tm_serie AND T1.tm_numdoc = fetestmag.tm_numdoc

o Subquery per femovmag: SELECT ar_unmis FROM artico as A1 inner join movmag as M1 on A1.codditt = M1.codditt AND A1.ar_codart = M1.mm_codart WHERE M1.codditt = femovmag.codditt AND M1.mm_tipork = femovmag.mm_tipork AND M1.mm_anno = femovmag.mm_anno AND M1.mm_serie = femovmag.mm_serie AND M1.mm_numdoc = femovmag.mm_numdoc AND M1.mm_riga = femovmag.mm_riga

o Subquery per femovmagart: SELECT ar_unmis FROM artico as A1 inner join movmag as M1 on A1.codditt = M1.codditt AND A1.ar_codart = M1.mm_codart WHERE M1.codditt = femovmag.codditt AND M1.mm_tipork = femovmag.mm_tipork AND M1.mm_anno = femovmag.mm_anno AND M1.mm_serie = femovmag.mm_serie AND M1.mm_numdoc = femovmag.mm_numdoc AND M1.mm_riga = femovmag.mm_riga and A1.ar_codart = 'PF1'

o Subquery per femovmagex: SELECT ar_forn FROM artico as A1 inner join movmag as M1 on A1.codditt = M1.codditt AND A1.ar_codart = M1.mm_codart WHERE M1.codditt = femovmag.codditt AND M1.mm_tipork = femovmag.mm_tipork AND M1.mm_anno = femovmag.mm_anno AND M1.mm_serie = femovmag.mm_serie AND M1.mm_numdoc = femovmag.mm_numdoc AND M1.mm_riga = femovmag.mm_riga and A1.ar_codart = 'PF1'

Tra i campi abbiamo

· Codice ditta: è il codice ditta su cui vogliamo impostare la configurazione;

· Codice conto: il codice conto sul quale vogliamo impostare l'estrazione;

· Descrizione conto: è la descrizione del conto per il quale vogliamo impostare l'estrazione;

· Tipo documento: indichiamo il tipo documento tra quelli presenti in griglia per il quale vogliamo impostare la personalizzazione dell'estrazione;

· Tipo bolla/fatt: è il codice tipo bolla/fatt per il quale si vuole impostare la personalizzazione dell'estrazione;

· Tabella business: è la tabella di business per la quale si vuole impostare la personalizzazione dell'estrazione;

· Campo business: è il campo di business che vogliamo estrarre nella consolle;

· Tabella fattura elettronica: è la tabella del blocco della fatturazione elettronica sulla quale vogliamo impostare l'estrazione dati;

· Nome tag: è il nome del tag sul quale vogliamo salvare il dato nel file XML

· Ordine esecuzione: può essere utilizzata per accodare i risultati di una query e/o dei testi fissi impostando più righe con ordini di esecuzione diversa;

· QUERY: è possibile impostare il testo di una subquery come da impostazione precedente

Nel sottoblocco AltriDatiGestionali è possibile creare un nuovo tag nell'elemento <TipoDato>. In base al tipo di dato il campo da impostare sarà

· Se campo alfanumerico femovmagex.mme_str

· Se campo numerico femovmagex.mme_num

· Se campo data femovmagex.mme_data

Supponiamo che volessimo estrarre il codice ubicazione sul documento di magazzino (mm_ubicaz) allora possiamo configurare la tabella in questo modo:

in cui il codice ubicazione viene estratto nel campo femovmagex.mme_str e posizionata nel nuovo tag BUS_UBICAZ

Al momento non sono previste funzioni standard facili per alimentare le altre tabelle come allegati, datiiva, datiord, datddt (che sono già compilati correttamente dalle attuali routine di estrazione dati)

Sempre con il modulo fatturazione elettronica plus è possibile abilitare anche la personalizzazione tramite script creando un file BEFECONS.NTS da copiare nella cartella SCRIPT del server o con l'ereditarietà creando delle dll BF\BH.

Per le modalità di personalizzazione per i partner è reso disponibile materiale video nell'area training.

La routine principale Elabora è stata spezzata in sottoroutine come ad esempio la InsertFeTestmag, UpdateFeTestmag .

Il codice personalizzato potrà essere inserito nelle routine ElaboraPost.....come ad esempio la ElaboraPostFeTestmag che da parte di Nts Informatica non saranno mai compilate.

Il pulsante "Duplica" permette di duplicare la configurazione personalizzata su cui si è posizionati, ad esempio per farla agire su altro cliente, tipo bolla/fattura, ...

Nella finestra dove si definiscono le personalizzazioni in estrazione dati sono presenti, nel menu strumenti, le funzionalità "Importa personalizzazioni" ed "Esporta personalizzazioni" allo scopo

di esportare una personalizzazione fatta, ad esempio, in ufficio per poi importarla presso l'utilizzatore

finale. L'esportazione crea un file denominato Pers_FE_[data corrente]_[ora corrente].xml nella

cartella ASC\Personalizzazioni_FE. Nel file sono riportate tutte le personalizzazioni presenti nella

griglia al momento dell'esportazione.

L'importazione invece consente di scegliere un file .XML e importare le configurazioni personalizzate

in esso contenute, se al momento dell'importazione sono già presenti altre personalizzazioni in griglia,

si chiederà conferma per eliminare tali configurazioni e sostituirle con quelle indicate nel file. Prima di

importare le personalizzazioni indicate nel file, si verifica che il file abbia il tracciato adeguato e che i dati siano corretti, ossia:

- se le personalizzazioni sono specifiche per ditta, la ditta indicata nella personalizzazione deve

coincidere con la ditta corrente con cui si sta lavorando;

- se è indicato il conto, la personalizzazione deve essere specifica per ditta e il conto deve essere

codificato sulla ditta corrente;

- se è indicato il tipo bolla/fattura, la personalizzazione deve essere specifica per ditta e il tipo BF deve

essere codificato sulla ditta corrente;

- il tipo documento deve essere uno di quelli gestiti dalla personalizzazione fattura elettronica;

- le tabelle di Business e della fattura elettronica e i relativi campi devono essere codificati in modo

corretto, ossia seguendo le stesse logiche che vengono applicate nei controlli prima di salvare una

configurazione.

7.4 Gestire la generazione di fatture elettroniche da Business NET 2014

Per gli utenti che si trovano ancora nella versione NET 2014 e per i quali non sia possibile effettuare l'aggiornamento a versioni superiori entro la data del 31/12/2018 è stata data la possibilità di utilizzare il modulo Fattura elettronica di Business NET 2015. La funzionalità è disponibile solo con il modulo Fatturazione elettronica Plus

7.4.1 Impostazione

Si può procedere in questo modo

· il cliente dovrà effettuare un'installazione Server\Monoutenza di Business NET 2015 su un Pc

· quindi dovrà creare un nuovo DB con una ditta avente lo stesso nome della ditta dell'installazione esistente di versione 2014;

· l'utente continuerà ad operare sull'installazione NET 2014 mentre per l'estrazione delle fatture elettroniche dai documenti emessi e il relativo invio userà l'installazione NET 2015;

· per i documenti ricevuti, caricherà i file .XML nell'installazione 2015, quindi li stamperà e li inserirà manualmente nella 2014;

· le fatture elettroniche generate dai documenti emessi devono essere estratte sul profilo NET 2015. E' necessario impostare l'opzione di registro BSFECONS/OPZIONI/PrefixDb_nomeditta = e nel valore dell'opzione va messo il nome del database del profilo 2014. Per cui supponendo che la ditta sia PROVA e il database si chiami PROVA2014 l'opzione andrà impostata in questo modo:


Non servirà che il DB 2015 sia identico a quello 2014, l'importante è che siano identici i dati delle due anagrafica ditta.

7.4.2 Sincronizzazione dei database

Dopo che è stata impostata l'opzione di registro come da paragrafo 5.4.1 sarà visibile dal Menu Strumenti la voce 'Sincronizza Db'

La sincronizzazione provvederà in un primo step ad allineare le tabelle minime indispensabili dal profilo 2014 al profilo 2015. Le tabelle coinvolte nella sincronizzazione sono: tabtpbf (tipi bolla/fattura), tabciva (codici iva), tabcove (contropartite), tabbanc(banche), tabbotr (tabella bolli), tabvett (vettori), anagra (anagrafica clienti/fornitori/sottoconti), destdiv (destinazioni diverse), tabpaga (forme di pagamento), tabvalu (valute), tabcaum (causali di magazzino), tabstat (stati esteri), tabnuma (numerazioni ditta).
Per ciascuna delle tabelle sopra elencate, sul database 2015 verranno inseriti i nuovi record, aggiornati quelli già presenti ed eliminati quelli non presenti sul database 2014. In tale modo i due database contengono gli stessi dati.

In un secondo momento l'utente provvederà ad estrarre i dati per la fattura elettronica. Saranno quindi alimentate le tabelle del modulo Fattura elettronica leggendo i dati dalle tabelle del profilo NET 2014 del magazzino (testmag, movmag, artico, codarfo, analotti).

L'utente dovrà provvedere a integrare sul profilo NET 2015 le tabelle delle forme di pagamento, codici IVA, anagrafiche clienti\fornitori, tipi bolle/fatture ogni volta che effettua delle modifiche sul profilo NET 2014. Alla prima sincronizzazione e ogni volta viene aggiunto/modificato un record di queste tabelle dovrà integrarle manualmente con i dati mancanti e quindi rifare l'aggiornamento/estrazione dati

È possibile fare in modo che la sincronizzazione avvenga in automatico ogni volta che si lancia l'estrazione dati attivando l'opzione di registro BSFECONS\OPZIONI\AutoSincDb_[ditta] con valore -1. Se tale opzione è attiva, la voce di menu 'Sincronizza db' non sarà visibile e non verrà visualizzato il messaggio in estrazione dati che ricorda di eseguire la sincronizzazione prima di generare le fatture elettroniche nel caso in cui siano stati modificati dei dati nelle tabelle coinvolte. Per cui, sempre nel caso la ditta sia PROVA l'opzione avrà il seguente valore:

I dati dell'anagrafica clienti/fornitore/sottoconti vengono aggiornati solamente per quelli inseriti/modificati dopo l'ultima sincronizzazione (ossia in cui la data/ora ultimo aggiornamento nella net 2015 è inferiore alla data/ora ultimo aggiornamento nella 2014). Dal momento che alcuni campi di testord/testmag non erano presenti nella net 2014 (td_cig, td_cup, td_riferimpa, tm_cup, tm_cig, tm_riferimpa), in fase di estrazione dati si procede come se tali non fossero valorizzati.

Limiti di questa modalità operativa:

1. non è possibile allegare alla fattura elettronica il PDF della fattura.

2. Nella consolle delle fatture, il flag contabilizzato non sarà valorizzato correttamente, con i riferimenti alla registrazione di prima nota sul profilo NET 2014

3. Non è possibile aprire il documento e neppure la registrazione di contabilità

Una volta che l'utente venga aggiornato da NET 2014 a una versione successiva (consigliata sicuramente la versione CUBE 2 riferendosi al 31/10/2018, data in cui è scritta la seguente revisione della CT) sarà necessario riportare le modifiche fatte sul db 2014 al nuovo database di produzione. Quindi bisognerà passare al database di produzione convertito a CUBE 2 le fatture elettroniche estratte, le modifiche fatte alle anagrafiche clienti\fornitori, alle tabelle vettori, codici IVA e forme di pagamento. Per fare questo passaggio si potrà quindi utilizzare la funzionalità 'Riporta modifiche sul database di origine'.

I dati che vengono aggiornati sono:

In particolare i dati aggiuntivi aggiornati sono:
- anagrafica ditta: "Codice EORI", "Paese trasmittente", "Id IVA trasmittente", "Ufficio REA", "Numero REA", "Capitale sociale REA", "Socio unico REA", "Stato liquidazione REA", "Telefono trasmittente"
- attività: "Regime fiscale"
- anagrafica clienti/fornitori: "Escluso dalla fatturazione elettronica", "Codice Eori", "Email PEC", "Codice destinatario/ufficio PA", "Formato numero doc. esteso", "Formato numero ddt"
- anagrafica generali: "Email pec" (anche nello storico)
- destinazioni diverse: "Codice iso stato estero", "Id IVA stato estero" (anche in anagrafica generale e nello storico delle destinazioni)
- forme di pagamento: "Modalità pagamento" (sia generica che le 6 modalità di pagamento in condizioni speciali)
- codici IVA: "Sottotipo IVA"
- testata documento: "Numero documento esteso" (sia documenti che note di prelievo)
- prima nota: "Numero documento esteso"
- tipi bolla/fattura: "Non riportare riferimenti al ddt"

Per tutti questi dati, i record vengono aggiornati solamente in modifica, per cui si aggiornano solamente per i record che sono presenti anche nel database di origine. Si sottintende che il database di origine sia stato convertito all'ultima minor release disponibile e, quindi, tutti questi campi siano già presenti sul database (per cui non viene eseguito alcun controllo sulla presenza o meno di essi).
Invece per quanto riguarda i dati della fattura elettronica, invece, vengono solamente inseriti. È necessario, quindi, che non siano già presenti dati della fattura elettronica nel database in cui dovranno essere riportati i dati: se si verifica tale condizione, l'elaborazione viene bloccata

7.5 Live Update

Ora sono attivi gli aggiornamenti on line ed è visibile il pulsante per scaricarli.Se presente un aggiornamento on line sui server di NTS, verrà indicata la presenza degli aggiornamenti e saranno abilitate le funzionalità Scarica aggiornamenti e Vedi note.

E' stata predisposta opzione di registro per gestire la frequenza con cui all'avvio del programma viene verificata la presenza di aggiornamenti via live update.

Opzione di registro Bsfecons\Opzioni\LiveUpdateGgFrequenza: Indicare il numero di giorni dopo i quali effettuare il controllo sulla disponibilità di aggiornamenti all'avvio del programma. Indicare un valore compreso tra 0 (controllo ad ogni avvio) a 9999. Default = 1

E' stata altresì creata opzione di registro Bsfecons\Opzioni\LiveUpdateLastCheck in cui viene memorizzata la data (in formato gg/mm/aaaa) in cui è avvenuta l'ultima verifica sulla presenza di aggiornamenti; tale opzione è gestita automaticamente dal programma.

Se l'opzione ha valore superiore a 1, all'avvio del programma, il controllo sulla presenza di aggiornamenti avviene solo se quello precedente è avvenuto più di "n" (valore opzione) giorni fa.

Anche se il controllo non avviene è sempre disponibile il pulsante "Verifica disponibilità aggiornamenti" che, se cliccato, permette di forzare la verifica della disponibilità degli aggiornamenti.

Nel messaggio saranno indicati anche la data e la versione degli aggiornamenti disponibili da scaricare

Cliccando su Scarica aggiornamenti sarà possibile fare il download

Al termine ci sarà il seguente messaggio

Clicca per accedere al sito di NTS Informatica