DecUnicaToXML

Program pentru generarea de fişiere pentru declaraţii în format XML.

 

 

 

 

 

 

 

Versiunea curentă -  11 Februarie 2014 

 Versiune actualizată !

- s-a corectat felul în care sunt sortate tabelele în fișierul XML
- s-a eliminat funcția de pornire a validatorului pentru că el acum pornește imediat la dublu-click pe el.
- s-a eliminat introducerea descrierilor pentru Declarația unică D112 (sunt anumite inadvertențe în descrierile câmpurilor la ANAF)
- în calea de instalare a aplicației se copiază un fișier Decunica.xsd modificat față de cel de la ANAF pentru că în structura celui de la ANAF validatorul dă eroare, din câte mi s-a semnalat. Puteți desigur folosi  fișierul XSD de la ANAF, programul se poate folosi cu orice fișiere XSD, dar dacă sunt incoerențe între descrierile datelor, datorate celor de la ANAF, atunci este posibil ca XML-ul să nu fie validat de validator.
( Acest fișier modificat mi-a fost trimis de către un utilizator care mi-a spus, legat de diferențele dintre xsd-uri:
 "sunt mici diferente, pentru ca difera ordinea anumitor campuri fata de structura pe care tot ei(anaf) au publicat-o, astfel ca am fost nevoit sa modific xsd-ul, deoarece la  validare tine cont de structura publicata si nu de cea din xsd.")

Scopul programului:

Programul "DecUnicaToXML" a fost creat pentru a ajuta utilizatorii finali şi programatorii să genereze fişiere pentru declaraţii în format XML, pe baza fişierelor cu structura - XSD şi a unor fişiere text cu delimitator tab, cu conţinutul.

Astfel de fişiere sunt cerute din 2011 de către ANAF dar în multe medii de programare generarea lor este foarte foarte grea. De aceea programul de faţă vine în întâmpinarea unei nevoi stringente a programatorilor, în special a celor care progreamează în Fox.

Programul funcţionează pentru orice tip de structuri de fişiere XML (XSD) care au o singură tabelă rădăcină.

Programul este gratuit !

Alte funcţii:

Programul porneşte applet-ul java (fişierul cu extensia .jar) oferit de administraţii (ANAF) pentru validarea datelor. (a fost integrat în acest program deoarece pornirea lui este destul de dificilă pentru mulţi utilizatori).

Utilizare:


Programul permite să se genereze un fişier XML. Se furnizează ca intrare un folder unde este necesar să se afle:

1.- fişierele cu structura XML-ului, adică fişierele în format .XSD. (În interfaţa programului va fi introdus numele doar pentru XSD principal, alte eventuale XSD-uri trebuie să se afle în acelaşi folder). Aceste fişiere sunt luate de la administraţie (ANAF).

2.- datele (conţinutul de completat în structura dată). Aceste fişiere sunt fişiere text, cu delimitator tab, având numele exact acelaşi cu al tabelelor din descrierea de structură (din .XSD). Ele se vor completa printr-un alt program (de contabilitate) de către utilizator. Această operaţie nu constituie obiectul programului de faţă.

Pentru fişierele text:

Nu contează cum sunt create fişierele text (ce program le generează), dar ele trebuie să respecte câteva reguli:


1.- Fiecare fişier text să aibă numele exact ca cel al tabelei (programul făcut vă permite să afişaţi - la rubrica 'Unelte' - descrierea tabelelor, coloanelor şi a relaţiilor dintre tabele "ascunse" în fişierele XSD).

2.- Valorile să fie în aceleaşi ordine (a coloanelor) cu cele din descriere.

3.- Să fie fişier tab delimited (un rând dintr-o tabelă corespunde unui rând din fişier, două coloane să fie despărţite de caracterul tab şi nici una din valori să nu conţină caracterul tab).

4.- Să conţină valori şi pentru coloanele cu ID-uri, valori corespunzătoare, care să permită crearea de relaţii între tabele, conform descrierii.

Cu alte cuvinte, trebuie puse într-un acelaşi folder fişierele XSD cu structura (primite de la administraţie) şi fişierele text cu datele efective, fişiere text "tab-delimited", generate pe structura cerută de către un alt program (programul de contabilitate propriu al utilizatorului).

Pornire (pe scurt):


Utilizatorul va porni programul, se va asigura că numele XSD-ului principal (din zona setări) este cel din folder, va selecta folderul cu structura şi datele. Programul va afişa o grilă ierarhică cu datele. Apoi utilizatorul va apăsa comanda de export în XML a datelor ("Exportă în XML"). După ce fişierul XML s-a generat astfel, se poate porni programul de verificare oferit de administraţii (cu extensia .jar) folosind comanda "Pornire validator".

Atenţie ! Structura cerută este una ierarhică, cu relaţii între tabele. Este necesar prin urmare ca programul de contabilitate care generează fişierele text să respecte structura cerută şi să completeze corespunzător şi coloanele cu ID-uri ce permit funcţionarea corectă a acestor relaţii. (Mai multe detalii sunt în fișierul de Help al programului.)

 Extindere:


Programul permite folosirea şi a altor eventuale structuri de date (.XSD)! Desigur, fişierele text trebuie puse în acelaşi folder cu cele .xsd şi trebuie să fie încărcate cu conţinut conform structurii date.

Atenţie ! Este necesar să scoateţi bifa de la opţiunea 'Ordonează tabelele' în cazul în care veţi folosi alte fişiere XSD. Această opţiune este necesară doar pentru Decunica.XSD !  



În plus:

Programul conţine o secţiune "Utilitare" unde se poate genera într-un fişier text descrierea structurii "citită" din fişierul XSD, şi anume: tabelele, coloanele şi relaţiile între tabele. Pentru acesta este suficient să puneţi într-un folder fișierul Decunica.xsd şi să deschideţi acel folder cu programul.
Această descriere poate fi necesară programatorilor, pentru generarea fişierelor text.

PENTRU PROGRAMATORII FOX: Instrucţiunea de generare a fişierelor text din .dbf FĂRĂ GHILIMELE este:

USE angajatord COPY TO angajatord.txt DELIMITED WITH "" WITH character tab.

Programul nu recunoaşte tipul de date "xs:token" din structurile .XSD. Din acest motiv, dacă în conţinutul fişierelor XSD este găsit şirul "xs:token", pentru acele fişiere programul va face automat o copie a originalului ("NumeFisier.xsd.org") şi va înlocui apoi în acele fişiere şirul "xs:token" cu "xs:normalizedString".

Pentru ajutor suplimentar vă rog să citiţi documentaţia sau puteţi să mă contactaţi.
Adresa de mail: valentinvbadea@yahoo.com.

Posibile cauze de erori:

1. Deoarece structura XML-ului trebuie să fie una cu un singur nod rădăcină orice situaţie care ar cauza mai multe noduri va duce la eroare.
Una din situaţiile în care se creează mai multe noduri rădăcină este aceea în care un nod copil este orfan (nu există nodul părinte corespondent). Copii orfani se pun automat ca noduri rădăcină suplimentare, ceea ce conduce la eroare.
2. O altă cauză de eroare este aceea în care în textul unui câmp se introduce un tab, de exemplu între două prenume ("Ana - tab - Lăcrămioara" ). Deoarece tab-ul este rezervat ca delimitator de câmpuri din cauza acestei greşeli toate câmpurile următoare vor fi decalate, ceea ce duce la identificări greşite şi la erori diverse.
Pentru verificare se poate deschide fişierul text respectiv în Excel şi se va vedea imediat.



Platfome .NET necesare a fi preinstalate:


 .NET Framework 3.5 Service Pack 1
(Este preinstalată la Windows 7 sau Windows 8. La Windows 7 sistemul este necesar să aibă update-urile efectuate.)



Descărcare:

Dropbox

OneDrive

Documentaţia


Licenţă:

Programul este gratuit !

(O donație este însă oricând binevenită !)