Sunteți pe pagina 1din 5

Pentru rularea programului este necesar sa aveti instalat jre 1.6 sau 1.

7 (java
runtime environment 1.6 sau 1.7).
Programul functioneaza atat pe platforme Windows cat si Linux/Unix. Pe platforme
Linux/Unix am testat numai validarea si crearea fisierelor PDF; nu am putut testa
semnarea din lipsa de drivere.

Pe sistemele Windows pe 64 biti se poate semna folosind o platforma java pe 32 biti


(driverele smartCard pot fi pe 32 sau 64 biti): se decomenteaza atributul
'algorithm=mscapi' din fisierul .cfg corespunzator (se sterge '#').

Programul opereaza in 2 moduri distincte (in comenzile de lansare parantezele


drepte ("[", "]") indica parametri optionali):

A. modul cu interfata grafica. Se lanseaza folosind comanda:


java -version:1.6 -jar "<cale>\dist\DUKIntegrator.jar" [-c caleConfig] [-d]
[fisierXML]

- caleConfig trebuie indicata numai in situatia (putin probabila) in care


programul nu poate detecta singur calea folderului "config", care contine fisierele
de configurare pt. semnarea documentelor folosind smartCarduri. Acest folder,
livrat odata cu kitul, se gaseste in folderul "dist".

- parametrul -d trebuie indicat daca NU se doreste lansarea facilitatii


"Download", care permite actualizarea automata a ultimelor versiuni de pe site-ul
ANAF (acelasi efect se obtine comentand parametrul "urlVersiuni" din fisierul
config/config.properties)

- parametrul fisierXML indica un fisier XML care apare selectat in interfata


grafica la pornirea programului.

Atentie! Parametrul -c se poate folosi numai impreuna cu pararametrul -d.

B. modul linie de comanda. Acest mod permite aceleasi operatii ca modul A. Se pot
folosi comenzile:

- pt. validare declaratie:


java -version:1.6 -jar "<cale>\dist\DUKIntegrator.jar" [-c caleConfig] -v
tipDeclaratie fisierXML [fisierRezultat] [optiuneValidare]

- pt. validare declaratie + creare fisier PDF:


java -version:1.6 -jar "<cale>\dist\DUKIntegrator.jar" [-c caleConfig] -p
tipDeclaratie fisierXML [fisierRezultat] [optiuneValidare] [fisierZIP] [fisierPDF]

- pt. validare declaratie + creare fisier PDF semnat electronic:


java -version:1.6 -jar "<cale>\dist\DUKIntegrator.jar" [-c caleConfig] -s
tipDeclaratie fisierXML [fisierRezultat] [optiuneValidare] [fisierZIP] [fisierPDF]
pinSmartCard smartCard [selectorCertificat]

unde:
- caleConfig trebuie indicata numai in situatia (putin probabila) in care
programul nu poate detecta singur calea folderului "config" si se doreste semnarea
fisierului PDF rezultat (optiunea -s) folosind smartCarduri
- tipDeclaratie indica numele declaratiei cuprinse in fisierul XML de validat
(ex: "D112")
- fisierXML este chiar declaratia de prelucrat
- fisierRezultat va contine erorile si atentionarile obtinute in urma
validarii (optiunea -v) sau "ok" daca nu exista erori/atentionari de validare
(optiunea -v) sau nu exista erori de validare si crearea PDF/semnarea a decurs
corect (optiunile -p/-s); daca nu exista erori la validare dar exista erori la
creare/semnare PDF, fisierul de erori va contine aceste ultime erori. Prin lipsa
"<fisierXML>.err.txt".
- optiuneValidare indica validatoarelor unor declaratii (de exemplu D112) o
optiune de validare. Prin lipsa 0. In cazul D112 optiunile pot fi:
- 0 - angajatori uzuali, care depun D112 la ANAF
- 1 - angajatori unitati speciale care depun D112 la ANAF
- 2 - angajatori unitati speciale care nu depun D112 la ANAF
- fiserZIP - numele fiserului ZIP de atasat prin optiunile -p/-s. Prin lipsa
"<fisierXML fara extensia .xml>.zip".
IMPORTANT: la declaratiile fara ZIP atasat acest parametru trebuie sa fie 0.
- fiserPDF - numele fiserului PDF creat prin optiunile -p/-s. Prin lipsa
"<fisierXML fara extensia .xml>.pdf".
- pinSmartCard - pinul folosit la semnarea cu smartCard
- smartCard - tipul smartCard-ului folosit la semnarea digitala a fisierului
PDF (ex: "aladdin"). Trebuie sa existe un fisier <caleConfig>/<smartCard>.cfg care
contine informatii de configurare a smartCardului
- selectorCertificat - este numarul de ordine pe smartCard (incepand cu 0) al
certificatului cu care se doreste semnarea, in cazul unui smartCard care contine
mai multe certificate digitale. Prin lipsa 0 (primul certificat de pe smartCard).

Parametri optionali (cu exceptia lui -c) care nu se doresc a fi introdusi expres,
dar dupa care urmeaza alti parametri vor trebui indicati prin "$", pt. a li se
atribui valoarea prin lipsa corespunzatoare.

Exemple:

java -version:1.6 -jar "C:\dist\DUKIntegrator.jar" -v D112 C:/D112.xml


java -version:1.6 -jar "C:\dist\DUKIntegrator.jar" -v D112 C:/D112.xml $ 1
java -version:1.6 -jar "C:\dist\DUKIntegrator.jar" -c C:\dist\config -v D112
C:/D112.xml C:/erori.txt 1
java -version:1.6 -jar "C:\dist\DUKIntegrator.jar" -p D112 C:/D112.xml
java -version:1.6 -jar "C:\dist\DUKIntegrator.jar" -p D112 C:/D112.xml $ 0 0
C:\declaratie.pdf
java -version:1.6 -jar "C:\dist\DUKIntegrator.jar" -s D112 C:/D112.xml $ 0 0
$ 1234 aladdin
java -version:1.6 -jar "C:\dist\DUKIntegrator.jar" -c C:\dist\config -s D112
C:/D112.xml C:/erori.txt 0 0 C:\declaratie.pdf 1234 aladdin 1

Observatie: DUKIntegrator.jar contine acum o clasa Integrator care poate fi


folosita de dezvoltatori in aplicatii. Clasa contine comentarii de utilizare la
toate functiile, iar in clasa Main se poate gasi secventa care foloseste un obiect
Integrator pt. realizarea modului B descris mai sus.

Validare fisiere PDF

Incepand cu versiunea 1.2.10.2.3 a DUKIntegrator se pot valida fisiere PDF


inteligente (sau produse cu DUKIntegrator). Validarea se refera la:

- existenta metadatelor obligatorii in PDF;


- corectitudinea tipurilor de fisiere atasate;
- verificare sumara a semnaturii (verificarile care se pot face fara consultarea
unor BD exterioare);
- validarea fisierului XML atasat;
- compararea metadatelor obligatorii din PDF cu cele din XML.
Pt. a putea valida un fisier PDF se alege din dialogul de selectie a fisierelor
tipul PDF.

Verificarea versiunii si descarcarea de versiuni noi

La pornirea programului in modul A se incearca o conectare la site-ul ANAF prin


care se verifica:

- daca au aparut modificari la jar-urile principale


- daca au aparut versiuni noi la declaratiile deja instalate
- daca exista declaratii noi

Pentru fiecare declaratie exista 2 jar-uri:

- XnnnValidator.jar pentru validarea fisierului XML, cu o versiune de tip: JM.m.r


- XnnnPdf.jar pentru crearea fisierului PDF cu XML-ul atasat, cu o versiune de tip:
PM.m.r

unde Xnnn este numele declaratiei (ex: D112, S1001, etc.). Fiecare jar are cate o
versiune proprie.

Controlul conectarii se face prin cativa parametri inscrisi in fisierul de


configurare config/config.properties:

1. daca introduceti in fisierul de configurare linia:

urlVersiuni=http://static.anaf.ro/static/10/Anaf/declunica/versiuni.xml

programul incearca la pornirea in mod A conectarea pentru verificarea versiunii.

Daca veti comenta sau sterge aceasta linie nu se va face nicio verificare!

2. daca conexiunea dumneavoastra Internet se face prin intermediul unui proxy


server va trebui sa adaugati linia:

proxy=auto

pentru a incerca o detectare automata a acestuia sau liniile:

proxyIP=xxx.yyy.zzz.www (adresa DNS)


proxyPort=n

pentru indicarea explicita a IP-ului sau adresei DNS/portului (prin lipsa 80)
folosit de proxy server

Exemplu:

proxyIP=111.111.111.111
proxyPort=80

Pentru a ignora declaratiile noi puteti adauga in fisierul de configurare


config/config.properties parametrul:
ignoraDeclaratiiNoi=D

ATENTIE: Nu modificati denumirea folderelor din dist si nu stergeti


fisiere/foldere. In caz contrar este posibil ca programul sa nu mai functioneze
corect.
Va rugam sa ne transmiteti eventualele observatii pe adresa:
admin.portal@mfinante.ro cu subiectul soft_J (va rugam sa puneti acest
subiect NUMAI pt. problemele legate de utilizarea programului DUKIntegrator)
Adresa d112@mfinante.ro nu mai este valabila.

Actualizare manuala a declaratiilor in DUKIntegrator pt. versiuni ulterioare celei


publicate pe 19-Oct-2011.

1. se descarca de pe site-ul ANAF zip-ul corespunzator declaratiei, care contine


urmatoarele fisiere:
- DxxxValidator.jar
- DxxxPdf.jar
- DxxxIstorieVersiuni.txt
- modInstalare.txt

unde Dxxx este codul declaratiei (ex: D112, S1001)

2. se copiaza cele 2 jar-uri in folderul lib (din locatia unde a fost instalat
DUKIntegrator).

3. se sterge fisierul config/versiuniCurente.txt

4. (optional) se copiaza fisierul DxxxIstorieVersiuni.txt in folderul doc.

Incepand cu 2016-11-08, in mod linie de comanda, fisierul de atentionari produs de


validator poate fi pastrat dupa creare PDF si semnare (pana atunci, crearea de PDF
si semnarea suprascriau acest fisier cu marca 'ok' sau cu erorile ultimelor
operatii).
Fisierul de erori sau placeholderul lui poate fi precedat de unul din prefixele de
mai jos. Daca la validare apar numai atentionari si fazele de crearePDF /
semnarePDF sunt OK prefixele au urmatorul efect:
- '+' - marca 'ok' se va adauga la sfarsitul fisierului de erori (care poate
contine atentionarile fazei de validare, dupa acestea, pe o linie noua);
- '!' - fisierul de erori va fi redenumit si se va pastra sub acest nou nume
iar marca 'ok' va aparea singura in fisierul de erori specificat implicit sau
explicit. Redenumirea se face dupa regula:
- daca numele fisierului contine subsirul '.err.' (ca in cazul
implicit) acest subsir se va schimba in '.wrn.'
- altfel se va adauga la finalul numelui fisierului '.wrn.txt'
- in lipsa acestor prefixe atentionarile se vor pierde si marca 'ok' va
aparea singura in fisierul de erori specificat implicit sau explicit (cum functiona
pana la data acestei modificari).
Exemple:
java -version:1.6 -jar "C:\dist\DUKIntegrator.jar" -s D112 C:/D112.xml +$ 0 0
$ 1234 aladdin
fisierul 'C:/D112.xml.err.txt' va contine atentionarile fazei de validare plus
marca 'ok' (dupa acestea, pe o linie noua)
java -version:1.6 -jar "C:\dist\DUKIntegrator.jar" -s D112 C:/D112.xml !$ 0 0
$ 1234 aladdin
atentionarile vor fi pastrate in fisierul 'C:/D112.xml.wrn.txt', iar marca 'ok' va
aparea singura in fisierul 'C:/D112.xml.err.txt'
java -version:1.6 -jar "C:\dist\DUKIntegrator.jar" -s D112 C:/D112.xml $ 0 0
$ 1234 aladdin
fisierul 'C:/D112.xml.err.txt' va contine marca 'ok' (atentionarile fazei de
validare se pierd, ca pana la data modificarii)

S-ar putea să vă placă și