Konga versione 1.0.7

konga_107

Da questo pomeriggio è disponibile la versione 1.0.7 di Konga. Questa versione verrà proposta agli utenti delle versioni precedenti come un aggiornamento automatico**, oppure può essere scaricata utilizzando i link che trovate nella pagina di download.

Nota per gli utenti di Konga Server per MacOS X: quando si aggiorna il server si deve avere cura di disinstallare la vecchia versione tramite il Konga Server Uninstaller prima di installare la nuova versione (l’Uninstaller lo potete trovare nella cartella “/Applications/Konga Server“). Se si dimentica questo passaggio e si installa il nuovo Konga Server “sopra” il vecchio, i Konga Client potrebbero avere difficoltà a connettersi al server; se questo è il caso, occorre arrestare il server (dal Konga Server Monitor), cancellare la cartella “/Library/Application Support/Konga Server/Server” e successivamente riavviare il server (sempre dal Konga Server Monitor). Questa è una procedura una tantum e non sarà più necessaria in futuro.

La versione 1.0.7 viene pubblicata dopo più di tre mesi dal rilascio della versione 1.0.6.3 e le novità sono veramente molte (l’elenco completo delle modifiche più significative si trova al fondo di questo articolo).

 

“Rich text editor” e personalizzazione dei messaggi email

In questa versione è stata aggiunta in diverse parti del programma la possibilità di inserire e memorizzare del testo formattato, ad esempio durante l’inserimento delle note:

Rich text editor

oppure al momento della personalizzazione dei messaggi email che il programma invia automaticamente:

personalizzazione email

 

La nuova gestione degli omaggi

I preventivi, gli ordini e i documenti fiscali ora prevedono la possibilità di definire se il prodotto presente sulla singola riga è da considerarsi un omaggio (con rivalsa dell’IVA) e calcolano di conseguenza il totale del documento indicando in un apposito campo (denominato “di cui omaggio”) la quota di imponibile che è soggetta alla rivalsa dell’IVA. Questa nuova gestione degli omaggi si aggiunge a quella già presente, dove quando si utilizza una causale di magazzino di tipo “omaggio” la merce dell’intero documento viene considerata ceduta in omaggio e di conseguenza il totale del documento corrisponde al solo importo IVA.

 

I nuovi campi di preventivi, ordini da clienti e documenti fiscali

Negli ordini da clienti e nei documenti fiscali è stata aggiunta nel riquadro condizioni la sezione “Ord. Acquisto”, in questa sezione sono stati riportati tutti i campi che riguardano l’ordine di acquisto emesso dal cliente.

Nella versione 1.0.7 sono stati aggiunti e gestiti questi nuovi campi:

Percentuale ritenuta e Importo ritenuta: inserendo la percentuale dell’eventuale ritenuta il programma calcola in automatico l’importo, oppure l’utente può inserire direttamente l’importo della ritenuta nell’apposito campo (sezione contabilità).

Netto a pagare: viene utilizzato per distinguere l’importo che dovrà pagare il cliente dal totale documento. È utile soprattutto nei casi di scissione del pagamento dell’IVA e nei casi in cui sia presente una ritenuta.

Codice CIG e Codice CUP: per permettere di distinguere in modo chiaro i due codici sono stati creati due campi dedicati, prendono il posto del riferimento tracciabilità. Quando valorizzati, i valori di questi nuovi campi, verranno utilizzati al posto del riferimento tracciabilità.

Riferimento Amministrativo, Causale del documento, Codice convenzione: questi tre campi sono specifici per la fattura elettronica, il riferimento amministrativo può essere proposto dalla scheda cliente (nella scheda cliente si trova nella sezione “Attributi” del pannello “Extra”).

 

La console di amministrazione remota

configura server locale

Ora è possibile abilitare, tramite la configurazione del server, l’accesso remoto alla console di Konga server: accedendo da un web browser all’indirizzo http://IP_KONGASERVER:8080/console sarà possibile interagire con la console del server utilizzando un sottoinsieme dei comandi disponibili (per vedere la lista dei comandi disponibili occorre digitare il comando “.help”, come nella figura).

console remota

Nuova “versione” dell’interfaccia grafica

Questa non è una vera e propria modifica funzionale, ma è più un aggiornamento tecnologico dell’intero programma: Konga ora utilizza per Mac OS X e per Windows la versione 5 della libreria Qt, questo significa che gli utenti del programma, soprattutto quelli di Mac OS X, vedranno delle piccole differenze nel modo di visualizzare le finestre. In generale si noterà un maggiore rispetto delle linee guida dei sistemi operativi più recenti. Ad esempio, nel caso di Mac OS X la “toolbar” delle finestre prima veniva visualizzata così:

toolbar 106

versione 1.0.6 (cliccare per ingrandire)

mentre invece nella versione 1.0.7 verrà visualizzata così:

toolbar 107

versione 1.0.7 (cliccare per ingrandire)

Le differenze sono minime (font di sistema diverso e “look & feel” nativo) ma significative, il risultato è che la nuova versione del programma è ottimizzata per i diversi sistemi operativi e vi offrirà una migliore esperienza d’uso.

 

Nuova versione x86_64 per Mac OS X

Per mantenere la compatibilità con la versione 10.6.8 di Mac OS X e con le CPU a 32 bit, abbiamo creato due tipologie diverse di programmi di installazione per Mac OS X: “universal” e “x86_64″. La versione “universal” è compatibile con Mac OS X 10.6.8, con le CPU a 32 bit e utilizza ancora la versione 4 delle librerie Qt (la nuova versione richiede almeno il Mac OS X 10.7). La versione “x86_64″ utilizza la versione 5 delle librerie Qt, è compatibile con Mac OS X 10.7 o superiori e richiede un Macintosh che supporti le applicazioni a 64 bit. Analizzando la nostra base di programmi installati, abbiamo riscontrato che il 99% degli utenti di Konga potrà utilizzare i programmi di installazione a 64bit; invitiamo chi utilizza ancora la versione 10.6.8 di Mac OS X a passare al più presto a una versione più nuova del sistema operativo (la versione 10.6.8 è stata rilasciata nel lontano 2009, cioè 6 anni fa).

 

Queste sono le novità più importanti della versione 1.0.7 di Konga:

  • Aggiunti i campi “Codice CUP” e “Codice CIG” per: ordini da clienti, documenti fiscali, prima nota, partite aperte e portafoglio effetti
  • Aggiunti i campi “riferimento amministrativo”, “causale del documento” e “codice convenzione”, ai fini della fatturazione elettronica per la PA, per: ordini da clienti e documenti fiscali
  • Aggiunti nella scheda dei clienti i campi “riferimento amministrativo” (sezione attributi) e “protocollo dichiarazione di intento” (sezione dich. intento)
  • Aggiunta la possibilità di assegnare l’attributo “omaggio” alle singole righe dei documenti fiscali
  • Aggiunta l’elaborazione denominata “Verifica dei saldi”, per verificare e eventualmente reimpostare i progressivi dare e avere di schede contabili e clienti-fornitori
  • Aggiunta la possibilità di personalizzare il corpo dei messaggi email che vengono inviati insieme all’invio del documento PDF (preventivi, ordini da clienti, ordini a fornitori, documenti fiscali)
  • Aggiunta la possibilità di formattare le note, i messaggi email e le query dell’editor di stampe utilizzando un “rich text editor” che permette di impostare i tipi di carattere, le variazioni stilistiche e l’allineamento dei paragrafi
  • Aggiunta la possibilità di stampare la liquidazione periodica IVA con l’orientamento orizzontale della pagina di stampa
  • Aggiunta nella generazione delle provvigioni la possibilità di ricalcolare le percentuali di provvigioni, ignorando i dati presenti nelle righe dei documenti fiscali
  • Aggiunta ai permessi abbinati agli utenti la possibilità di limitare l’accesso di un utente ad una sola o ad un sottoinsieme delle aziende presenti nel database
  • Aggiunta nella stampa del registro dei beni ammortizzabili la possibilità di definire l’ordinamento per numero progressivo, oppure per categoria/numero progressivo
  • Aggiunta la console di amministrazione remota tra i servizi web disponibili
  • Aggiunto lo spostamento automatico degli allegati e/o delle immagini da dentro a fuori da un database quando si cambia l’impostazione relativa dalle preferenze del database
  • Migliorata la stampa di etichette barcode: ora prevede la possibilità di stampare anche i dati di lotti e matricole nell’etichetta e la possibilità di definire delle dimensioni personalizzate dell’etichetta, senza dover creare un layout di stampa personalizzato
  • È possibile impostare nelle preferenze l’opzione “Apri una sola finestra per comando”, per evitare di aprire inavvertitamente un numero elevato di finestre dello stesso tipo
  • Corretta la generazione dei file PDF quando il sistema operativo è Mac OS X utilizzando il formato “nativo”; come conseguenza la dimensione del file sarà minore poichè gli elementi testuali non verranno più trasformati in elementi grafici
  • Corretta la stampa delle statistiche di vendita: nelle versioni precedenti venivano incluse nelle statistiche anche le fatture inserite ma non ancora stampate in definitivo
  • Corretta la stampa dello scadenzario con la selezione ‘sino alla data’, non aggiornava correttamente l’importo da saldare
  • Correzioni varie

 

** L’aggiornamento automatico all’ultima versione non è previsto per le versioni server (daemon o servizio), questo significa che gli utenti del modulo “S” dovranno scaricare il programma di installazione e installare manualmente la versione aggiornata sulla postazione server.

 

24 luglio 2015 at 13:34 4 commenti

Versioni x.7.11e per l’esportazione per Konga

Sono disponibili le nuove versioni x.7.11e di Tibet, Irbis, Pardo e Wilma XL e EuroByz. Queste nuove versioni contengono delle modifiche nella procedura di esportazione dei dati per Konga: è stato corretto un errore nell’esportazione dei dati delle Schede Contabili ed è stato aggiornato il formato di esportazione per garantire la compatibilità con la nuova versione 1.0.7 di Konga.

Le versioni x.7.11e sono disponibili come aggiornamento delle versioni x.7.11 precedenti, non occorre eseguire una nuova installazione completa. I link per eseguire il download dei file si trovano di seguito.

Per gli utenti Mac OS X sarà necessario espandere e sostituire il file dell’applicazione (ad esempio “Tibet.app”), di seguito i link per il download del singolo file:

Pardo e Wilma XL
http://download.easybyte.it/tmp/pwxl2711e.app.zip
Irbis
http://download.easybyte.it/tmp/irbis4711e.app.zip
Irbis client
http://download.easybyte.it/tmp/irbisclient4711e.app.zip
Tibet
http://download.easybyte.it/tmp/tibet1711e.app.zip
Tibet client
http://download.easybyte.it/tmp/tibetclient1711e.app.zip

Per gli utenti Windows sarà necessario espandere e sostituire i file dell’applicazione (ad esempio “Tibet Client.exe” e “TibetDic.tdic”), di seguito i link per il download dei file:

EuroByz
http://download.easybyte.it/tmp/eurobyz1711e.zip
Pardo e Wilma XL
http://download.easybyte.it/tmp/pwxl2711e.zip
Irbis
http://download.easybyte.it/tmp/irbis4711e.zip
Irbis client
http://download.easybyte.it/tmp/irbisclient4711e.zip
Tibet
http://download.easybyte.it/tmp/tibet1711e.zip
Tibet client
http://download.easybyte.it/tmp/tibetclient1711e.zip

24 luglio 2015 at 13:33 Lascia un commento

Konga versione 1.0.6.3

Oggi è stata rilasciata la versione 1.0.6.3 di Konga. Oltre alle solite correzioni di piccoli errori, questa versione contiene alcune correzioni che si sono rese necessarie per il buon funzionamento della Comunicazione delle Operazioni IVA Rilevanti e una piccola aggiunta nella generazione del file XML della fattura elettronica per la pubblica amministrazione.

N.B. Venerdì scorso ha fatto una breve apparizione la versione 1.0.6.2 che è subito stata resa obsoleta dal rilascio della 1.0.6.3. La nuova versione è stata rilasciata per correggere un problema nella fase di generazione del file delle operazioni IVA rilevanti.

Questo è il dettaglio delle principali novità delle versioni 1.0.6.2 e 1.0.6.3:

  • Aggiunta la gestione degli elementi “RiferimentoAmministrazione” e “Causale” nella generazione del file XML della fattura elettronica PA
  • Corretta la stampa comunicazione operazioni IVA rilevanti in presenza di operazioni relative al quadro SE
  • Corretta la gestione dei caratteri accentati nella generazione del file delle operazioni IVA rilevanti
  • Corretto il calcolo della liquidazione IVA in presenza di aliquote IVA indetraibili utilizzate nei registri IVA di tipo diverso da acquisti
  • Corretta una regressione che impediva il normale avvio del programma su sistema operativo Linux
  • Corretta la generazione del file per comunicazione operazioni IVA rilevanti nel caso in cui non venga specificato un soggetto differente da quello tenuto alla comunicazione
  • Correzioni varie

 

Riguardo alla fattura elettronica per la PA

In base alle richieste dei diversi enti pubblici è emerso che gli elementi “RiferimentoAmministrazione” e “Causale” sono spesso degli elementi obbligatori per poter far accettare l’invio della fattura elettronica. Attualmente i documenti fiscali non prevedono dei campi dedicati a questo tipo di informazione e per questa versione abbiamo scelto di evitare modifiche significative alla struttura del database, per garantire la compatibilità di client e server con sottoversioni diverse, ad esempio un client 1.0.6.3 può ancora collegarsi ad un Konga server versione 1.0.6. Questi nuovi campi saranno previsti nella prossima versione (1.0.7), nel frattempo è possibile utilizzare i campi “Rif. Aggiuntivo 1″ e “Rif. Aggiuntivo 2″ per valorizzare gli elementi “RiferimentoAmministrazione” e “Causale” per la fattura elettronica:

  • Impostando nel campo Rif. Aggiuntivo 1 un valore che inizia con il prefisso “*RA*”, la parte seguente del valore verrà utilizzata per l’elemento “RiferimentoAmministrazione”
  • Impostando nel campo Rif. Aggiuntivo 2 un valore che inizia con il prefisso “*CA*”, la parte seguente del valore verrà utilizzata per l’elemento “Causale”

Siete tutti invitati a contribuire con segnalazioni e commenti: potete utilizzare i commenti di questo blog, oppure scrivere all’indirizzo email <supportosw@converge.it>.

7 aprile 2015 at 15:00 7 commenti

Konga versione 1.0.6.1

Oggi è stata rilasciata la versione 1.0.6.1 di Konga. In questa versione la stampa/elaborazione Comunicazione Operazioni IVA Rilevanti è stata aggiornata in modo da poter essere utilizzata per la generazione del file delle operazioni relative all’anno 2014. Si tratta anche di una versione di manutenzione che corregge alcuni errori della versione 1.0.6. Uno degli errori che è stato corretto riguarda una regressione nella gestione delle quantità ordinate nella scheda degli articoli di magazzino. Vista la natura di questa regressione, suggeriamo agli utenti che gestiscono gli ordini da clienti e gli ordini a fornitori di eseguire una Verifica degli Ordini di tipo definitivo, in modo da avere la certezza che le quantità ordinate presenti nella scheda degli articoli siano corrette.

Come sempre, la nuova versione viene proposta come aggiornamento automatico per gli utenti delle versioni precedenti,oppure può essere scaricata utilizzando i link che trovate nella pagina di download.

Queste sono le correzioni/novità di questa versione:

  • Aggiunta la stampa di controllo e la stampa della ricevuta per la comunicazione delle operazioni IVA rilevanti
  • Aggiunto il supporto per la crittografia TLS/SSL nell’utilizzo dei web service di Konga (HTTPS)
  • Aggiunto lo stato delle attività di indicizzazione del server nel pannello Sessione del Konga Manager
  • Ottimizzate le operazioni di indicizzazione dei dati che vengono eseguite in “background” (lato server)
  • Migliorate le prestazioni del Konga Manager in presenza di un numero elevato di database in lista
  • Corretto un errore che impediva di inserire le registrazioni di tipo corrispettivi ventilati
  • Corretta la gestione degli elementi CIG e CUP nella generazione del file XML della fattura elettronica per la pubblica amministrazione
  • Corretto un errore nella elaborazione di conferma della stampa Generazione Ammortamenti: in alcuni casi particolari il programma non aggiornava correttamente il valore residuo da ammortizzare
  • Corretto un errore nell’aggiornamento delle quantità ordinate da clienti e ordinate da fornitori quando si eliminava un carico-scarico collegato ad un ordine
  • La stampa della liquidazione periodica IVA ora stampa nel prospetto anche gli importi di dettaglio negativi
  • Nella versione precedente non era possibile eliminare delle righe manuali di pagamento dalla scheda partite aperte
  • Correzioni varie

La scadenza per la trasmissione del file contenente i dati delle operazioni rilevanti ai fini IVA è prossima. Per controllare la validità dei dati presenti nel file occorre utilizzare il software Entratel che viene fornito gratuitamente dall’Agenzia delle Entrate. Per eseguire il download di Entratel è necessario possedere delle credenziali per accedere all’area dei servizi telematici del sito dell’Agenzia delle Entrate. Molti dei nostri utenti, pur non occupandosi direttamente dell’invio del file, desiderano comunque installare Entratel e controllare la correttezza del file generato senza doversi registrare sul sito delle entrate. Qui sotto sono riportati i link per il download della versione 5.3.9 di Entratel e della versione 1.2.1 della procedura di controllo:

Entratel – Windows

Entratel – Mac OS X

Procedura di controllo Comunicazioni Polivalenti (Operazioni IVA rilevanti) – Windows

Procedura di controllo Comunicazioni Polivalenti (Operazioni IVA rilevanti) – Mac OS X

Le segnalazioni ed i commenti sono benvenuti: potete utilizzare i commenti di questo blog, oppure scrivere all’indirizzo email <supportosw@converge.it>.

26 marzo 2015 at 16:34 Lascia un commento

Le ricette di Konga: i web service

By The National Archives UK (Making the Empire Christmas Pudding) [see page for license], via Wikimedia Commons

Spesso chi si occupa di informatica e di sviluppo software, quando finisce di combattere con hardware e software, si dedica alla cucina. Qualcuno potrebbe insinuare che si tratta di un inconscio “piano B” del programmatore: se il progetto software non ha successo, potrà sempre tentare miglior fortuna con una carriera come aiuto cuoco. In realtà le similitudini tra l’attività di programmazione e l’arte di cucinare sono molte: in entrambi i casi occorre creare un prodotto finale (il programma che deve essere pubblicato) partendo da una serie di materie prime (il linguaggio di programmazione con le sue librerie), spesso seguendo delle ricette (gli algoritmi o i “patterns” già utilizzati in passato).
Ci sono molte teorie sui motivi per cui spesso sviluppo software e cucina si accompagnano: sono ambedue attività creative, entrambe richiedono un certo livello di studio dell’argomento e sono attività che si prestano ad essere ottimizzate ed eseguite in parallelo (sono molti i piatti che richiedono di svolgere diverse attività contemporaneamente). Nel mio caso credo che cucinare sia una specie di “attività rifugio”, un surrogato dello sviluppo software. Nei momenti più difficili di un progetto, quando non riesco a vedere la fine e nulla funziona come dovrebbe, seguire una ricetta di cucina ed ottenere sempre (o quasi sempre) il risultato desiderato è una grande soddisfazione, e in modo indiretto mi dà speranza che anche il progetto software possa infine riuscire come il piatto che sto preparando.

Come avrete intuito dal titolo, in questo articolo voglio condividere con voi alcune ricette in cui l’ingrediente principale è Konga, in particolare la possibilità di Konga di interagire con  programmi esterni tramite i suoi “web service”.

In questo articolo utilizzeremo il termine “web service” per indicare genericamente la possibilità di interagire con Konga tramite il protocollo HTTP (in particolare utilizzando lo standard JSON-RPC), per una definizione più formale di che cosa si intende per web service rimandiamo alla definizione presente in wikipedia.

Utilizzando i web service di Konga è possibile collegarsi ai database, leggere, inserire, modificare e cancellare i dati avendo la certezza che Konga applicherà tutti i controlli di congruenza e gli eventuali aggiornamenti automatici dei dati definiti dalla “logica della gestione aziendale”. L’accesso via web service quindi è la soluzione più semplice quando si desidera sviluppare delle applicazioni esterne che devono condividere le informazioni della gestione aziendale.

È possibile abilitare i web service solo in Konga Pro, sia nella versione “stand-alone”, sia nella versione “server”. L’opzione per abilitare i web service è presente nella configurazione del server, alla voce “Servizio web”:

Configurazione del server - servizio web

Spuntando l’opzione “Avvia il server integrato” e lasciando selezionato il servizio di gestione delle richieste “JSON-RPC” si predispone Konga per rispondere alle richieste all’indirizzo:

http://INDIRIZZO_IP_DEL SERVER:8080/jsonrpc

(ovviamente l’INDIRIZZO_IP_DEL SERVER può essere sostituito dal NOME_DEL_SERVER quando quest’ultimo è stato registrato in un sistema per la risoluzione dei nomi – DNS).

Come si può vedere in figura, la porta di default è la 8080, ma nel caso in cui la porta 8080 sia già utilizzata da altri programmi è possibile impostarne una diversa.

Le richieste a Konga dovranno soddisfare la versione 2.0 dello standard denominato JSON-RPC, si tratta di un protocollo per eseguire delle chiamate a procedure remote (RPC) e queste richieste devono essere eseguite utilizzando il protocollo HTTP.

Per poter utilizzare con profitto i web service di Konga occorre sapere quali sono le richieste che possono essere fatte e conoscere i nomi delle tabelle e dei campi del database di Konga. Questa è la documentazione di riferimento delle chiamate JSON-RPC:
http://public.easybyte.it/docs/webservice/json_rpc.html.
In questa documentazione troverete la lista delle chiamate possibili, la descrizione della loro funzione ed i parametri di ingresso e di uscita. Come vedrete, le chiamate previste non sono molte – attualmente sono nove – comunque esse permettono di interagire con i dati di Konga in modo completo. Nel corso di questo articolo non analizzeremo tutte le chiamate, faremo invece qualche esempio pratico di utilizzo che, insieme alla documentazione di riferimento, dovrebbe essere sufficiente per permettere di utilizzare autonomamente tutte le chiamate previste.

Oltre a conoscere le chiamate possibili abbiamo detto che è anche necessario conoscere i nomi delle tabelle e i nomi dei campi del database che utilizza Konga, anche queste informazioni sono presenti nella documentazione tecnica che pubblichiamo on-line: http://public.easybyte.it/docs/datadict/tables.html.

Per loro natura i web service non sono legati ad uno specifico ambiente di sviluppo: possono ovviamente essere utilizzati da un’applicazione web, ma nulla osta al loro utilizzo dall’interno di un’applicazione sviluppata per l’ambiente “desktop” o, ad esempio, da una soluzione sviluppata con FileMaker. Per gli esempi di utilizzo che seguiranno utilizzeremo un ambiente di sviluppo che tutti utilizzate quotidianamente: il web browser, tenete bene a mente però che le stesse cose che faremo utilizzando il web browser possono essere fatte anche nella maggior parte dei linguaggi di programmazione e/o framework di sviluppo.

Il nostro “ambiente di sviluppo”
Per fare le richieste web service a Konga utilizzeremo Firefox insieme ad una estensione denominata “RESTClient”, grazie a questa estensione di Firefox saremo in grado di preparare le richieste HTTP, inviarle al Konga server, ricevere la risposta e analizzarne il suo contenuto.

RESTClient1

Come potete vedere nella figura qui sopra (cliccare per vedere l’immagine nella dimensione reale), per inviare una richiesta HTTP con il RESTClient è necessario:

1. il metodo HTTP che vogliamo utilizzare, per le richieste a Konga dovremo indicare il metodo POST

2. l’indirizzo a cui inviare la richiesta (URL), nel nostro caso invieremo la richiesta al Konga server che è stato attivato sullo stesso PC nel quale stiamo eseguendo Firefox, quindi l’indirizzo sarà

http://127.0.0.1:8080/jsonrpc/

3. il contenuto della richiesta (Body), per questa prima richiesta utilizzeremo il metodo list_databases per ottenere la lista dei database che possono essere aperti dal Konga server. La richiesta deve essere preparata secondo le regole del formato JSON:

{ "jsonrpc": "2.0", "method": "list_databases", "params": [ ] }

l’elemento “jsonrpc”: “2.0” specifica che la richiesta segue le regole della versione 2.0 di JSON-RPC, il parametro “method” contiene il nome della funzione che desideriamo eseguire (list_databases) e l’argomento “params” in questo caso è una lista vuota perché il metodo “list_databases” non prevede parametri.

Premendo SEND la richiesta viene inviata al server e se tutto è stato configurato correttamente il server risponderà immediatamente. Per visualizzare il contenuto della risposta clicchiamo nella sezione “Response Body”:

RESTClient2

Come potete vedere anche la risposta è in formato JSON, l’elemento che più ci interessa nella risposta è “error” che in questo caso è stato valorizzato a null, cioè nessun errore, nel caso in cui Konga ci risponda con un errore, l’elemento “error” conterrà uno o più codici di errore (“code”) e la corrispondente descrizione dell’errore, ad esempio se avessimo specificato un metodo inesistente avremmo ottenuto questa risposta:

RESTClient2.1

Quando non ci sono errori il server restituisce la lista dei database disponibili, in questo caso sul server sono presenti due database: Konga4Ever e Kongademo; per ogni database vengono restituiti alcuni attributi significativi che dovrebbero essere auto-esplicativi, tra questi il più interessante per noi è l’elemento “driver” che ci sarà indispensabile per eseguire la prossima chiamata: “open_database”, che esegue l’apertura del database.

Il metodo open_database

open_database(driver, dbname, username, password)

RESTClient3

Ora che conosciamo i nomi dei database ospitati dal Konga server, possiamo decidere di aprirne uno, ad esempio Kongademo. Per poter aprire un database dobbiamo conoscere oltre al suo nome anche il nome del driver del DB (SQLite o MySQL) e le credenziali per l’accesso, cioè il nome utente e la password. Come potete vedere nella figura il metodo open_database prevede proprio questi quattro parametri: driver (SQLite), nome del database (Kongademo), nome dell’utente (admin) e password (stringa vuota – ovvero nessuna password).

RESTClient4

La risposta alla chiamata open_database restituisce la cosiddetta “id di sessione”, cioè un identificatore che dovrò utilizzare come primo parametro per le chiamate successive, esso mi permette di non specificare ogni volta le credenziali per la connessione e abbinerà le mie future richieste ad una specifica sessione che rimane aperta sul server per almeno 15 minuti. In questo caso la nostra id di sessione è “e763191990b557f6beaecb6b61ec8957″.

La scadenza della sessione può essere configurata sul server (il valore di default è 15 minuti) e la scadenza verrà rinnovata ogni volta che eseguirò una chiamata al server, quindi la sessione scadrà dopo che non avrò eseguito nessuna chiamata al server per 15 minuti.

Un esempio di lettura: select_data

select_data(sid, tablename[, fieldnamelist, where_expr, order_by, order_desc, offset, limit])

RESTClient5

Uno dei metodi disponibili per la lettura dei dati di Konga è “select_data”, questo metodo è molto simile ad una query di tipo SELECT di un database SQL: oltre alla id di sessione questo metodo prevede di specificare un nome tabella e opzionalmente la lista dei nomi dei campi da restituire, una condizione di ricerca (where_expr), le modalità di ordinamento (order_by e order_desc) e di restituire solo un sottoinsieme dei risultati (offset e limit).

Nell’esempio in figura vogliamo leggere ragione sociale e indirizzo di un cliente di cui conosciamo il codice (C00100), quindi eseguiamo una select_data indicando “EB_ClientiFornitori” come nome tabella; “Codice”, “RagioneSociale” e “Indirizzo” come lista dei nomi dei campi e “Codice = ‘C00100′” come condizione di ricerca. Come si può intuire, la sintassi delle condizioni di ricerca è la stessa delle condizioni di ricerca di SQL.

Eseguendo la richiesta, questo è il risultato che viene restituito:

RESTClient6

Il risultato consiste di una lista di righe, dove la prima riga contiene i nomi dei campi richiesti, seguita da zero o più righe con i dati dei clienti-fornitori che soddisfano la condizione di ricerca. Nel caso in cui avessi cercato un codice inesistente, la chiamata sarebbe comunque andata a buon fine: sarebbe stata restituita la sola riga con i nomi dei campi e nessun dato a seguire.

Un esempio di scrittura: insert_record

insert_record(sid, tablename, code_azienda, num_esercizio, data)

In maniera molto simile alla lettura è anche possibile utilizzare i web service per inserire dei nuovi dati nel database di Konga. A scopo dimostrativo potete vedere qui sotto un esempio di inserimento di un ordine da cliente. Per evitare di complicare troppo l’esempio, ho indicato solo i campi strettamente obbligatori, ottenendo così un ordine cliente sicuramente incompleto per un uso “reale”, ad esempio ho omesso i prezzi nelle righe e quindi otterrò un ordine cliente con valore totale uguale a zero, ma in compenso posso mostrarvi un esempio decisamente più leggibile.

RESTClient7

Come già visto nella select_data i primi due parametri sono l’id della sessione e il nome della tabella, seguiti dal codice dell’azienda (“00000001″), dal codice dell’esercizio (“00000001″) e dai dati che compongono l’ordine cliente che vogliamo inserire. Il codice dell’azienda è necessario perché Konga può gestire più aziende nello stesso database e quindi dobbiamo specificare in quale azienda vogliamo inserire l’ordine. Il codice dell’esercizio è necessario quando la tabella oggetto della chiamata contiene dei dati che sono separati in base agli esercizi contabili, nel caso degli ordini da cliente non sarebbe obbligatorio e potremmo passare “null”, ma nulla osta a specificare un codice esercizio anche quando non è necessario e, così facendo, si evita di dimenticarsene nei casi in cui serve.

I dati dell’ordine da inserire sono composti da una serie di elementi con i nomi dei campi della testata abbinati ai rispettivi valori, quindi un elemento convenzionale denominato “@rows” che contiene la lista delle righe dell’ordine.

Nei dati specificati per la testata dell’ordine è bene notare una particolarità, si tratta del nome dei campi che iniziano con “code_”. Questi sono campi che non troverete documentati nella lista campi di Konga, troverete invece documentati i campi corrispondenti che iniziano con “ref_” al posto di “code_”. Se un nome campo inizia con “ref_” significa che si tratta di una id di una tabella collegata (foreign key in termini SQL), sostituendo la premessa “ref_” con “code_” si richiede al Konga server di decodificare – al posto nostro – i codici delle tabelle e trasformarli nelle corrispondenti id, in tal modo chi esegue la chiamata potrebbe essere facilitato. L’utilizzo dei campi “code_” è spesso un vantaggio perché un codice rimane costante tra un database e un altro (ad esempio dopo un ripristino di un back-up), mentre la corrispondente id potrebbe variare con il database. La scelta di specificare il codice o la id di una tabella collegata dipende spesso dal contesto dell’operazione che si sta eseguendo, in ogni caso Konga semplifica le cose accettando entrambi i valori.

Vorrei anche farvi notare questi due campi obbligatori: “EB_OrdiniClienti.code_Valuta” e “EB_OrdiniClienti.code_Azienda”. Il codice della valuta è sempre obbligatorio, nel dubbio specificate il valore “EUR” che normalmente corrisponde alla valuta di conto. Il campo “code_Azienda” non lo avevamo già indicato tra i paramentri della chiamata? Sì, ma Konga desidera che venga ribadito anche nei dati che vengono passati… ogni tanto è necessario accontentare i programmi senza porsi troppe domande.

Nelle due righe dell’ordine vengono specificati, a scopo esemplificativo, solo i campi obbligatori: Codice articolo, unità di misura e quantità.

Eseguendo la chiamata, otterremo una risposta simile a questa:

RESTClient8

L’elemento “id” sarà l’id dell’ordine nel database, mentre “code” sarà il numero interno che è stato assegnato dal Konga server all’ordine appena inserito: l’ordine da cliente numero 11.

Questo era l’ultimo esempio per questo articolo, gli argomenti tecnici come questo non sono semplici né da leggere, né da descrivere, ed è probabile che leggendo questo articolo nascano dei dubbi e delle domande su argomenti che non ho affrontato… come al solito siamo a disposizione per tutti i chiarimenti: scrivete nei commenti del blog oppure inviate un messaggio email a <supportosw@converge.it>.

10 marzo 2015 at 09:39 4 commenti

Konga versione 1.0.6

konga_106__01

È disponibile da questo pomeriggio una nuova versione di Konga: 1.0.6. Questa versione verrà proposta come aggiornamento automatico per gli utenti delle versioni precedenti, oppure può essere scaricata utilizzando i link che trovate nella pagina di download.

L’aggiornamento automatico all’ultima versione non è previsto per le versioni server (daemon o servizio), questo significa che gli utenti del modulo “S” dovranno scaricare il programma di installazione e installare manualmente la versione aggiornata sulla postazione server.

La scissione del pagamento dell’IVA

La funzionalità più importante che è stata aggiunta nella versione 1.0.6 è la gestione della “scissione del pagamento dell’IVA” per il modulo di contabilità e vendite. La scissione del pagamento dell’IVA è una nuova tipologia di gestione IVA che è stata introdotta dalla legge di stabilità per l’anno 2015 (legge 190/2014) e che si applica nelle operazioni effettuate nei confronti di enti pubblici. Per le fatture emesse verso lo stato si prevede che il pagamento dell’IVA venga effettuato dall’ente destinatario delle merci e/o dei servizi e non più da chi emette la fattura. Questa nuova gestione ha diverse conseguenze sia nel calcolo della liquidazione IVA, sia nell’importo che il cliente deve corrispondere al fornitore.

Nella versione 1.0.6 di Konga nella tabella causali contabili è stata aggiunta la nuova tipologia di gestione IVA denominata “Scissione dei pagamenti”; inoltre è stato aggiunto un nuovo campo nella tabella dei codici fissi: il sottoconto “IVA scissione dei pagamenti”, questo sottoconto verrà utilizzato al posto del sottoconto IVA vendite quando la causale ha la gestione IVA uguale a “Scissione dei pagamenti”.

Tutte le registrazioni IVA che vengono inserite utilizzando una causale contabile IVA di tipo “scissione dei pagamenti” verranno registrate sul giornale contabile in questo modo:

Sottoconto Dare Avere Descrizione
Cliente Importo imponibile totale
C/part. ricavo 1 Importo imponibile 1
C/part. ricavo 2 Importo imponibile 2
C/part. ricavo N Importo imponibile N
IVA scissione pag. Importo IVA totale
IVA scissione pag. Importo IVA totale Storno c/scissione dei pagamenti

 

Come si può vedere nella tabella soprastante, l’importo dell’IVA non viene addebitato al cliente e viene stornato direttamente sul sottoconto “IVA scissione dei pagamenti”, in tal modo anche lo scadenzario verrà aperto per il solo importo imponibile della registrazione, cioè l’importo che il cliente dovrà corrispondere al fornitore al momento del pagamento.

Nel prospetto del calcolo della liquidazione periodica IVA verrà calcolata una nuova voce: “Importo IVA soggetto alla scissione dei pagamenti”, questo importo verrà detratto dall’IVA vendite e corrispettivi per ottenere l’importo dell’IVA esigibile per il periodo. Anche la stampa dei registri IVA ora prevede nell’ultima pagina di riepilogo di evidenziare in una riga separata i totali IVA soggetti alla scissione dei pagamenti.

Gli utenti che devono emettere fatture con la scissione del pagamento dell’IVA dovranno quindi aggiungere delle nuove causali contabili (fattura cliente e nota di credito cliente) che abbiano la gestione IVA impostata a “Scissione dei pagamenti”. Sarà opportuno inoltre aggiungere un nuovo sottoconto da indicare nei codici fissi per la registrazione dell’IVA soggetta alla scissione dei pagamenti; in alternativa è anche possibile riutilizzare il sottoconto dell’IVA vendite (senza inserirne uno nuovo), ma sarà comunque obbligatorio compilare il nuovo campo della tabella dei codici fissi.

Questo è l’elenco delle correzioni/novità più importanti di questa versione:

  • È stata aggiunta la gestione IVA di tipo “scissione dei pagamenti” nelle causali contabili
  • Le stampe: registri IVA, calcolo liquidazione periodica IVA e liquidazione periodica IVA sono state aggiornate per gestire la scissione del pagamento dell’IVA
  • La fattura elettronica per la pubblica amministrazione genera il file nel formato vers. 1.1
  • Durante la modifica delle registrazioni di carico-scarico ora vengono eseguiti tutti i controlli di congruenza dei dati (nelle versioni precedenti alcuni controlli che venivano correttamente eseguiti al momento dell’inserimento, non venivano invece eseguiti in fase di modifica della registrazione
  • Le stampe liste di magazzino “alla data dell’ultima registrazione” ora considerano tutti i tipi di titoli di deposito di merce propria
  • Corretta una regressione che, all’apertura di un documento, erroneamente faceva ricalcolare gli sconti sulla base dell’eventuale classe di sconto abbinata
  • Corretta la gestione degli indirizzi multipli sugli ordini cliente e sui documenti fiscali
  • Corretto un problema che poteva presentarsi durante la ristampa di documenti fiscali non ancora confermati in definitivo: in alcuni casi particolari il numero progressivo in stampa non era identico a quello assegnato dopo una eventuale conferma
  • Il back-up del database prima dell’aggiornamento del formato dei dati è diventato facoltativo: il programma ora visualizza una finestra di dialogo che permette di annullare il back-up (a rischio e pericolo dell’utente)
  • La stampa della situazione giacenze “alla data…” è stata corretta in modo da riportare nell’ultima pagina la lista corretta dei titoli di deposito
  • Modificate le maschere delle preferenze del programma, del database e dell’azienda in modo da avere un aspetto più gradevole
  • Bilancio di chiusura-apertura, è stata corretta la numerazione delle righe assegnata dalla generazione dei movimenti di chiusura-apertura
  • Corretto un errore nella gestione delle classi di sconto: in alcuni casi particolari potevano venire proposti dei prezzi di una classe di sconto anche per i clienti privi di classe di sconto
  • Correzioni varie

Le segnalazioni ed i commenti sono benvenuti: potete utilizzare i commenti di questo blog, oppure scrivere all’indirizzo email <supportosw@converge.it>.

 

4 marzo 2015 at 17:42 2 commenti

La vers. 1.1 della Fatturazione Elettronica per la PA

A partire dalla data odierna (2 febbraio 2015) la pubblica amministrazione richiede il nuovo formato XML per la fatturazione elettronica (versione 1.1):

http://www.fatturapa.gov.it/export/fatturazione/it/normativa/f-2.htm

La prossima versione di Konga (1.0.6) prevede la generazione del formato versione 1.1 come opzione di default. La versione 1.0.6 sarà rilasciata pubblicamente tra pochi giorni, nel frattempo se qualche utente avesse urgenza di generare fatture elettroniche nel nuovo formato, suggeriamo di eseguire l’aggiornamento alla versione “stable” (1.0.6-beta) che già supporta la versione 1.1.

Con la versione 1.0.6 è prevista anche la possibilità di generare i file XML nel vecchio formato 1.0: l’opzione si trova nelle preferenze del programma.

Preferenze Konga

Che Cosa cambia nella versione 1.1 della fattura PA

Nella nuova versione del formato XML per la fattura PA cambiano fondamentalmente cinque cose:

  • La versione del file XML
  • La lunghezza massima del campo “Descrizione” dell’elemento “DettaglioLinee”: passa da 100 a 1000 caratteri
  • È stata aggiunta una nuova “Natura IVA” per giustificare le fatture con gli importi IVA uguali a zero: “N6” per le fatture emesse con l’IVA in “reverse charge”. Per indicare al programma che l’aliquota IVA utilizzata deve riportare “N6” come natura IVA, sarà sufficiente impostare nella scheda dell’aliquota IVA il campo “Inversione contabile” al valore “SI”.
  • La tipologia di pagamento “MP08” che nella versione 1.0 corrispondeva a “Carta di credito”, ora nella versione 1.1 corrisponde a “Carta di pagamento”
  • Sono state aggiunte le seguenti tipologie di pagamento:
    • ‘MP18′ : Bollettino di c/c postale
    • ‘MP19′ : SEPA Direct Debit
    • ‘MP20′ : SEPA Direct Debit CORE
    • ‘MP21′ : SEPA Direct Debit B2B

La lista dei tipi di pagamento previsti in Konga è stata aggiornata di conseguenza, aggiungendo le quattro nuove tipologie previste dal nuovo formato.

Aggiornamento del 3 febbraio 2015

È comparso un annuncio sul sito della fattura PA che comunica una nuova modifica al formato, necessaria per poter indicare quando una fattura viene emessa con l’IVA versata dal committente in base all’art. 17-ter DPR 633/72 (la scissione dei pagamenti o il cosiddetto “split-payment”). Con queste modifiche sarà possibile indicare nel file XML anche questa tipologia di esigibilità IVA. Purtroppo questa modifica è avvenuta quando il nuovo formato versione 1.1 era già stato dichiarato definitivo e di conseguenza non è presente nei programmi che sono stati rilasciati nei giorni scorsi. Appena sarà disponibile una versione di Konga che prevede questa novità, lo annunceremo in questo stesso articolo.

N.B. Con questa modifica Sogei e l’Agenzia delle Entrate hanno reso completamente privo di senso il numero di versione del formato: a rigor di logica la versione del formato così modificato dovrebbe essere 1.1.1 o 1.2, ma con un “colpo di mano” le modifiche sono state aggiunte a posteriori alle specifiche del formato versione 1.1.

Aggiornamento del 10 febbraio 2015

La versione “stable” (1.0.6-beta) è stata aggiornata per gestire la nuova tipologia di esigibilità IVA (il caso della fattura con la “scissione dei pagamenti”) durante la generazione del file XML.

2 febbraio 2015 at 16:00 Lascia un commento

Articoli meno recenti


Archivi

Seguici su Facebook


Iscriviti

Ricevi al tuo indirizzo email tutti i nuovi post del sito.

Unisciti agli altri 43 follower