Strony

piątek, 21 kwietnia 2023

Katalogujemy zbiór - OpenNumismat

Temat powraca z dużą regularnością, na forach, w rozmowach, na FB, w e-mailach, które dostaję od czytelników bloga - jakich narzędzi użyć do skatalogowania zbioru. W listopadzie 2010 pisałem o programie, którego od lat używam Najlepszy program na świecie. W lipcu 2021  w cyklu "Kolekcjoner, czyli kto?" napisałem coś o tym, ale tak bardziej ogólnie, bez wskazywania bardzo konkretnych rozwiązań Kolekcjoner-magazynier, ciąg dalszy. Sugerowałem tylko posłużenie się jakimś arkuszem kalkulacyjnym lub bazą danych z pakietów MS Office albo LibreOffice. Niedawno, bo w styczniu 2023 temat zasłużył na cały nowy wpis Gdzie i jak najlepiej opisywać nabyte monety. Wpis zakończyłem tym zdaniem: "Ja, pomimo deklaracji o przesiadce na arkusz kalkulacyjny nadal korzystam z "najlepszego programu na świecie" i tak pozostanie, dopóki bez problemu będę go mógł uruchamiać na sprzęcie pracującym pod kontrolą Debiana.

Niewiele czasu upłynęło i...
Nie pamiętam już, czego na forum TPZN szukałem, tak gdzieś pod koniec marca (i czy znalazłem to, czego szukałem), ale trafiłem wtedy - nie po raz pierwszy - na wątek Program do katalogowania monet. Wątek, w którym też zabierałem głos polecając wieloplatformowy program GCstar, który kiedyś przetestowałem. Tym razem zwróciłem uwagę na proponowany przez dwóch forumowiczów program OpenNumismat - dalej ON - strona projektu: http://opennumismat.github.io/pl/

Pobrałem, zainstalowałem, zacząłem się bawić - dodawanie monet, konfigurowanie wyglądu, filtrowanie, sortowanie. Uznałem, że program zasługuje na więcej uwagi i postanowiłem sprawdzić jak będzie się spisywać po nakarmieniu dużą ilością danych. Mój zbiór to ponad 3400 monet. Najlepszy program na świecie, czyli Commence ma możliwość eksportu danych do pliku dbf, który można otworzyć w arkuszu kalkulacyjnym (w moim przypadku LibreOffice Calc) i zapisać w formacie xls, a pliki w tym formacie są akceptowane przez ON, jako źródła do importu danych. Poszło w miarę szybko. Utworzyłem w ON nowy plik ze standardowym zestawem pól i uruchomiłem import. Powtarzałem to kilkakrotnie, bo nie od razu trafiłem na optymalne mapowanie pól bazy - przypisanie kolumn arkusza xls  do konkretnych pól w ON. W końcu uznałem, że lepiej nie będzie i zacząłem badać możliwości programu. Wszystko działało bardzo szybko, nie pojawiały się błędy, kopie bezpieczeństwa tworzyły się regularnie i bez problemów mogły być wczytywane na miejsce "przypadkowo" uszkodzonego pliku bazy ON. Sprawdziłem jeszcze jedną, bardzo dla mnie ważną rzecz - ON operuje na plikach zgodnych z SQL Lite i można jego bazy otwierać, przeglądać i eksportować do innych formatów przy pomocy zewnętrznych narzędzi (np. DB Browser for SQLite). Commence operuje na plikach o zamkniętym formacie.

Następny etap zajął więcej czasu. Commence zapisuje zdjęcia monet w folderze, w którym jest reszta bazy - jeden plik na jedno zdjęcie i kolejne utrudnienie - nazwy tych plików nie mają nic wspólnego z żadnym z pól bazy - nie wiadomo więc który plik, której monecie odpowiada. Tu też jest jakiś nieznany mi wewnętrzny format plików (rozszerzenie 019) i tych zdjęć nie można otwierać w innych programach. Na dodatek są to pliki nieskompresowane, coś chyba zbliżonego do bmp. Największy w mojej bazie ma 53,6 MB! Dlatego dodatkowo zdjęcia wszystkich moich monet w plikach jpg mam w osobnym folderze. Eksport z Commence do arkusza nie objął grafiki (w excellu to nie takie oczywiste i proste), więc przyszła pora na ręczne dodanie wszystkich zdjęć do bazy ON. Zajęło to kilka dni. Robota mozolna, ale przy okazji naprawiłem kilka błędów - w folderze ze zdjęciami kilku brakowało, dwa pliki miały pomylone nazwy. I tu bardzo pozytywne zaskoczenie. Wiedziałem z opisu programu, że ON trzyma wszystko w jednym pliku o rozszerzeniu db. Przypuszczałem, że będzie to plik bardzo duży. Folder z bazą Commence ma objętość 27,6 GB. Tymczasem okazało się, że baza 3400 z górą monet ze zdjęciami i opisami, to tylko 678,3 MB. To podsunęło mi pomysł na poprawienie bezpieczeństwa danych. Przeniosłem plik bazy do folderu, który automatycznie synchronizuje się z moim Dropboxem. Działa, jak marzenie. Na stronie programu ON jest informacja o wersji na Androida. Jeszcze nie sprawdziłem, czy można na niej pracować z bazą przechowywaną na Dropboxie.

Nie rezygnuję z zapisywania dobrych zdjęć monet w osobnym folderze. Przekonałem się nie raz, że to konieczne, potrzebne, wygodne.

Zrzut ekranu z "kartą" monety w Commence - stan z 13.11.2010.

Ta sama moneta w OpenNumismat i pięć zrzutów całego ekranu z kolejnymi formatkami służącymi do edycji danych. Podczas przeglądania bazy dane te są widoczne w panelu w prawej części okna. Ten panel służy tylko do przeglądania danych, a nie do ich edytowania.





Co jeszcze do zrobienia zostało - "raporty", czyli tworzenie drukowalnych zestawień. We wszystkich poprzednich wpisach dotyczących katalogowania zbioru podkreślałem konieczność posiadania tradycyjnego, analogowego katalogu zbioru. W postaci księgi inwentarzowej, albo - co uważam za optymalne - w formie katalogu kartkowego. ON ma opcję tworzenia raportów ale żaden z zaproponowanych formatów nie spełnia moich oczekiwań. Jeden z przykładów:
Niestety w program nie wbudowano edytora raportów. Jeśli chce się utworzyć własny układ, trzeba zmodyfikować jeden z kilku standardowych szablonów, dostarczonych z programem. Nie jest to szczególnie trudne zadanie, bo szablony raportów, to pliki html. Jakoś sobie z tym poradzę.
Raporty można drukować albo eksportować do plików html lub pdf. 

Co jeszcze. 
Zalety:
  • Błyskawiczne wyszukiwanie - po numerze identyfikacyjnym, roczniku, ciągu liter występującym w polach widocznych w tabeli.
  • Sprawne filtrowanie na zasadzie identycznej jak automatyczne filtry w arkuszach kalkulacyjnych.
  • Filtrowanie na podstawie drzewa kategorii, które tworzy się automatycznie w miarę dodawania monet do bazy (np. jednym kliknięciem wybieramy szelągi ryskie Batorego). Warto dobrze się zastanowić nad wyborem zasady opisywania monet - chodzi o zawartość pól "kraj", "okres", "panowanie", "emitent". Konsekwentne stosowanie przyjętej zasady ułatwia późniejszą pracę z bazą. Nie należy się przy tym martwić, gdy przyjęta wstępnie zasada okaże się nieoptymalna. Łatwo można ją zmienić korzystając z edycji grupowej.
  • Możliwość edycji grupowej dla wybranych monet (indeks albo wskazanie wielu przez klikanie z wciśniętym Ctrl) - zaznaczamy pola, które chcemy zmienić/wypełnić; wprowadzamy zmiany i klikamy "Zachowaj". Tą metodą uporządkowałem opisy - okazało się na przykład, że w polu "panujący" dla monet Zygmunta III Wazy miałem 6 (słownie sześć) wersji (Zygmunt III, Zygmunt 3, Zygmunt III Waza, Z3W itp.).
Wady:
  • Brakuje mi czegoś, co Commence realizuje znakomicie, czyli relacyjności. W Commence mam bazę monet, bazę transakcji (zakup, sprzedaż, wymiana), bazę osób i firm od których kupuję/sprzedaję, terminarz, podręczny notes i to wszystko wzajemnie powiązane, więc na karcie monety mam odnośnik do listy transakcji, na niej odnośnik do kontrahenta. W bazie osób/firm mogę sprawdzić co, kiedy, za ile kupiłem/sprzedałem. 
  • Brak wbudowanej opcji eksportu całej bazy do formatów arkuszy kalkulacyjnych (xls, ods). Można to obejść tworząc raport na podstawie szablonu "jedna moneta jeden wiersz" (szablon "full" z zestawu standardowego) i eksportując go do pliku html, który można otworzyć dowolnym arkuszem kalkulacyjnym i zapisać w jego formacie. Problemem jest konieczność modyfikacji szablonu "full", bo wbrew nazwie, nie ma w nim wszystkich pól bazy.
W sumie więcej zalet widzę, niż wad. Dlatego w tej chwili sytuacja wygląda tak - bazę monet (katalog zbioru) będę prowadził w OpenNumismat. Pozostałe potrzebne mi dane pozostają w Commence. Może kiedyś przeniosę je do...

Jeszcze nie wiem. Jakieś rady?


Aktualizacja 24.04.2023.

Skontaktowałem się z autorem programu. Eksport bazy do excellowego pliku xls jest bez żadnych dodatkowych działań możliwy, jeśli używamy systemu Windows. Na komputerach z Linuksem (u mnie Debian) konieczne jest doinstalowanie pakietu python3-xlwt - sprawdziłem, działa bez zarzutu.
Dowiedziałem się też, że następna wersja (1.9.x) będzie oparta na python3-openpyxl i umożliwi zapis bazy do plików XLSX z grafiką.


7 komentarzy:

  1. Ja też korzystam z ON. Mi brakuje w programie analizatora cen, cennika bo numizmatykę traktuję trochę jak inwestycję. Cennik można było samemu tworzyć lub ściągać z jakiś domów aukcyjnych typu onebid, niemczyk, marciniak, allegro itp.

    OdpowiedzUsuń
    Odpowiedzi
    1. There is an issue created https://github.com/OpenNumismat/open-numismat/issues/157. You can view the proposals and offer your ideas.

      Usuń
  2. Sam od dłuższego czasu szukam "najlepszego" rozwiązania do katalogowania swojego zbioru (bo wciąż w mojej ocenie do kolekcji trochę mi brakuje).
    Doszedłem ostatnio do wniosku, że takiego nie ma XD.
    Najpierw chciałem stworzyć plik w arkuszu kalkulacyjnym+ zdjęcia każdej z pozycji. Doszedłem jednak do wniosku, że taki arkusz będzie ciężko przeglądać gdy dodam do niego zdjęcia.
    Wyprobuje ON może on mnie zmotywuje do stworzenia katalogu :⁠-⁠)

    OdpowiedzUsuń
  3. Instalację programu blokuje mi antywirus. U Was było podobnie?

    OdpowiedzUsuń
    Odpowiedzi
    1. Nie. Instalacja przebiegła bez przeszkód.

      Usuń
    2. These are false positives. Depending on what anti-virus software you use, you can upload the .exe file for additional verification.

      https://opennumismat.github.io/open-numismat/faq.html#:~:text=My%20antivirus%20detect,Submission%20Portal).

      Usuń
    3. Dziękuję za informację i pomoc

      Usuń

Z powodu narastającej aktywności botów reklamowych i innych trolli wprowadzam moderowanie komentarzy.