Successfully reported this slideshow.
Your SlideShare is downloading. ×

La Avventure di Akira JSON to XML

Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Upcoming SlideShare
Xml annessi e connessi
Xml annessi e connessi
Loading in …3
×

Check these out next

1 of 10 Ad

More Related Content

Similar to La Avventure di Akira JSON to XML (20)

Recently uploaded (20)

Advertisement

La Avventure di Akira JSON to XML

  1. 1. Simone Matteoni
  2. 2. Oggi devo implementare la produzione e invio della fattura elettronica Simone Matteoni
  3. 3. “In informatica, l'XML (sigla di eXtensible Markup Language) è un metalinguaggio per la definizione di linguaggi di markup, ovvero un linguaggio marcatore basato su un meccanismo sintattico che consente di definire e controllare il significato degli elementi contenuti in un documento o in un testo. Il nome indica che si tratta di un linguaggio marcatore (markup language) estensibile (eXtensible), in quanto permette di creare tag personalizzati.” Da Wikipedia Ogni linguaggio di programmazione ha un proprio programma di lettura/scrittura in formato XML(parser) e dove non presente, sono state create apposite librerie esterne, in alternativa una persona può sempre farsi tutto a da solo. Date queste possibilità l'agenzia delle entrate ha quindi prodotto un suo tracciato con regole e obbligatorietà, se non rispettate, il risultato sarà lo scarto del file. Il mio file di output sarà dunque questo. Il cliente mi invierà i dati prodotti dal loro gestionale. Dovrò quindi, dopo averli prelevati, produrre un file adatto per essere accettato dall’agenzia delle entrate come fattura elettronica. Il formato finale da loro scelto è l’XML. Simone Matteoni
  4. 4. Il cliente mi fornirà i dati in formato JSON, o meglio, sarò io tramite richiesta al loro web service a prelevare questi dati, i dati risulteranno paginati, questo vuol dire che sarà necessario effettuare più richieste per ottenerli. Questo sarà il mio file di INPUT. Simone Matteoni “In informatica, nell'ambito della programmazione web, JSON, acronimo di JavaScript Object Notation, è un formato adatto all'interscambio di dati fra applicazioni client/server. Viene usato in AJAX come alternativa a XML/XSLT.” Da Wikipedia Esatto come alternativa all'XML, ma perché? Semplicemente perché ha meno informazioni, è ridotto all'osso e questo velocizza la trasmissione del dato, tuttavia come per XML può rappresentare strutture complesse. A differenza dell'XML che può risultare più o meno leggibile dall'uomo il formato JSON è a prima vista insensato. Ci sono vari programmi che lo interpretano e ne presentano la struttura in maniera leggibile, dal punto di vista della programmazione questi programmi non hanno alcun senso, permettono però a me, umano, di avere una situazione chiara di come è strutturato il tutto. Ogni linguaggio di programmazione ha un proprio programma di lettura/scrittura in formato JSON, in genere prendono il nome di parser. E dove non presenti, sono state costruite delle librerie esterne. Oppure una persona può sempre farsi tutto da solo.
  5. 5. I dati prelevati saranno elaborati mediante processo, normalizzati e scritti in un database SQL SERVER. Questo permetterà all’utente di apportare ulteriori modifiche in punti stabiliti, per me validi, prima di produrre l’XML. Ovviamente cercherò di rendere quanto più possibile facile il lavoro al cliente, ma ad esempio se dovessi fornire il codice CIG e nel loro gestionale non fosse presente, dovrò dargli la possibilità di inserirlo, pena lo scarto della fattura. Simone Matteoni La paginazione si usa per evitare di estrarre tutti e magari troppi record in una sola volta. Può essere gestita come nel WEB con il concetto di pagina1-pagina2-pagina3 dove per ogni pagina estraggo un tot di record oppure usare un sistema di caricamento continuo, dove arrivati a fine pagina estraggo un nuovo set di record da accodare. In entrambi i casi è necessario mantenere la posizione dell’ultimo record estratto tramite cursori oppure calcolarsi a mano dove ci si trova magari sulla base del numero di pagina.
  6. 6. Le funzioni di estrazione e modifica saranno create tramite PLEX. Il tool mi permette su di una base dati esistente di usare il tanto decantato CRUD (create read update delete) per la creazione delle griglie di estrazione dati e delle funzioni di inserimento/modifica e cancellazione, poi apporterò le modifiche alle funzioni per raggiungere il risultato desiderato. Le funzioni altamente stabili potranno poi essere compilate in JAVA o VISUALC++. Simone Matteoni
  7. 7. Quando il cliente vorrà, potrà quindi con un semplice click, prelevare il dato da web service, importarlo, modificarne il contenuto e al termine generare il file XML. Simone Matteoni
  8. 8. I file prodotti per ogni documento correttamente formattato verranno inviati tramite web service al portale scelto dal cliente per la gestione delle fatture elettroniche, al termine verrà presentato un log con le operazioni svolte e cosa non è andato a buon fine. I file non inviati come quelli non prodotti rimarranno visibili in griglia con apposita marcatura, il tutto sarà pilotato dai dei filtri. Simone Matteoni
  9. 9. Al termine, per quanto generato e andato a buon fine, segnalerò al cliente la corretta conclusione, richiamando il suo web service. Questo mi permetterà inoltre di ottenere ad una successiva estrazione un minor quantitativo di dati ricevuti. Simone Matteoni
  10. 10. Eh pota non si capisce niente, ma il tuo padrone, è sempre a lavorare? comunque si Akira ti preparo le scatolette di cibo. Simone Matteoni

×