wtorek, 13 grudnia 2016

QFaktury - reaktywacja

Swego czasu, kiedy jeszcze wiele firm nie stosowało "chmurowych" rozwiązań fakturujących, popularnością w Polsce, w świecie linuksa, cieszył się program qfaktury. Doczekał się ostatecznie swojej wersji 0.6.2, miał niegdyś nawet swoją stronę domową, a następnie słuch o nim niemalże zaginął. Rozwój programu próbował kontynuować Rafał Rusin, publikując do niego nieco poprawek i tworząc ostatecznie jego wersję 0.6.5. Zestaw łatek stworzył również opiekun tego pakietu w Gentoo.
Tak, czy inaczej - program od lat praktycznie się nie rozwijał, co skutkowało m.in. zmniejszającą się popularnością oraz praktycznym wyrugowaniem go ze wszelkich repozytoriów.
Na przywrócenie go do życia dała się namówić żona sir_lucjana. To dzięki jej pracy, możemy się cieszyć nową odsłoną programu, która została przeportowana do Qt5. Jednocześnie został nieco oczyszczony kod, dodanych kilka funkcjonalności. Kod źrodłowy programu dostępny jest na Githubie od wczoraj. Dla programu stworzyłem PKGBUILD, który umożliwia łatwą instalację programu w Arch Linux i pochodnych.
Zachęcam do testowania i dzielenia się uwagami. Proszę jednak być wyrozumiałym. Celem eksperymentu było przede wszystkim przeforkowanie qfaktur do Qt5, a nie usunięcie błędów, które się w programie znajdowały, czy dodanie mu oczekiwanych funkcjonalności. W zależności od popularności programu pewnie i na to przyjdzie czas.
Zanim jednak się zdecydujecie na pomoc w testach, jedna, ważna uwaga.
Jeśli ktoś z Was ma zainstalowany program np. z AUR (obecnie już nie istnieje), lub użył PKGBUILDów opublikowanych niegdyś przeze mnie i używa tego programu jako programu fakturującego w swojej firmie, zalecam przed instalacją nowej wersji (zresztą zawsze to w tym przypadku czynię) zrobienie sobie kopii zapasowych dokumentów i ustawień programu. Niestety musicie ich szukać. Najprawdopodobniej znajdziecie je w katalogach ~/.config/elinux oraz ~/.local/share/data/ (lub ~/.local/share) i tu w katalogu nazwą www.e-linux.pl lub e-linux.pl. Niestety w zależności od daty i wersji programu swoje dane umieszczał w różnych miejscach. Generalnie przeszukać należy podane lokalizacje, a także główny katalog użytkownika, za katalogami i plikami, których nazwy będą zawierać elinux, e-linux, qfaktury. Niekiedy mogą one być pisane z wielkiej litery. Te istotne dokumenty, czyli historia faktur, kontrahentów itp. winny być w katalogu ~/.local/share/data/elinux (lub podobnej). Plik konfigurujący znajdujący się w ~/.config ma mniejsze znaczenie i - w zasadzie - można spróbować go przed aktualizacją usunąć.
Stworzony obecnie program powinien bez problemu zobaczyć całą historię dotychczasowej wersji programu. Może się okazać jednak, że oczekuje ich w innych wersjach. Stąd też jeśli po instalacji program nie odnajdzie tej historii, musimy się upewnić co do zawartości katalogów, w których poszukuje tych informacji i przenieść dotychczasowe dokumenty ręcznie.
Obecnie program ma dwa pliki konfiguracyjne, który znajdują się w katalogu ~/.config/elinux. Jest to plik konfigurujący sam program o nazwie qfaktury.conf oraz plik z ustawieniami użytkownika o nazwie user.conf. Pierwszy - jeśli nie zostanie znaleziony - utworzony zostanie przy starcie systemu, o stworzenie drugiego poprosi sam program.
Pliki z danymi programu zawarte są w katalogu ~/.local/share/data/elinux/ i do tego katalogu musimy przekopiować nasze faktury i inne ustawienia, by zachować zgodność z dotychczasową wersją. Pliki te, to:

  • customers.xml - zawierający listę kontrahentów,
  • invoice.html - to ostatnia podglądnięta faktura (można sobie ten plik pominąć),
  • products.xml - lista towarów i usług,
  • katalog invoices zawierający wszystkie pliki wystawionych faktur.
W razie wątpliwości - proszę pytać tu lub na forum.