Utilitar pentru convertirea fisierelor .xlsx in .xml pentru SagaC
Pentru a usura munca contabililor din Romania ce primesc pe mana mii de facturi de intrari, respectiv iesiri, ce vin in diferite formate(fizic, pdf, xlsx etc), pe luna Mercury le primeste centralizate sub forma de fisier .xlsx si le transforma intr-un fisier .xml 100% personalizabil gata de import intr-unul dintre cele mai folosite programe de contabilitate din Romania, SagaC, conform startingup.ro.
- Python - backend
- Django - UI, backend
- openpyxl - citirea fisierelor .xlsx
- bootstrap - frontend
- argon2 - criptare/hashing, backend
Proiectul este structurat pe extensii(folder: converter, main) adaugate la aplicatia principala(folder: Mercury)
Fisierele html puse in folderele templates ale fiecarei extensii sunt randate de DJANGO si fisierele css sunt incarcate prin URLuri:
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css">Aplicatia foloseste frameworkul DJANGO pentru partea de backend a serverului. Requesturile sunt preluate si trimise catre functiile de views aferente urlurilor accesate si apoi sunt procesate si sunt randate template-urile html. Extensia converter implementeaza functii proprii pentru a procesa fisierele xlsx incarcate de utilizator, folosindu-se de biblioteca openpyxl pentru a citi fisierele, din care extrag datele necesare pentru creerea rezultatelor xml.
Aplicatia foloseste o baza de date sqlite3 structurata de DJANGO in care sunt salvate datele utilizatorilor, grupurile de utilizatori si fisierele xlsx incarcate de utilizator. Aceasta are o interactiune directa cu interfata de admin a site-ului prin care se pot face interogari, modificari si stergeri in functie de permisiunile acordate fiecarui utilizator.
-
Pentru a instala librariile aditionale folosite rulati comanda:
Windows
pip install -r requirements.txt
Linux based
pip3 install -r requirements.txt
-
Porniti un server local folosind comanda:
Windows
python manage.py runserver
Linux based
python3 manage.py runserver
- Puteti specifica adresa IP la care sa se deschida serverul dupa comanda runserver.