Zmiana mechanizmu współpracy!
Informacje podane w drugim rozdziale tej strony są informacją archiwalną, która dotyczyła współpracy bez rozszerzonego SIP2 - tych rozwiązań już NIE STOSUJEMY W NOWYCH WDROŻENIACH!
Współpraca z książkomatem oparta jest obecnie w 100% na protokole SIP2, który został rozszerzony o mechanizmy pozwalające książkomatowi na przekazywanie dodatkowych informacji do systemu bibliotecznego.
Wbudowany w zintegrowanego klienta moduł książkomatu jest aktywny, gdy na stanowisku jest plik licencji zawierający moduł książkomatu, zaś użytkownik posiada odpowiednie uprawnienia.
Konfiguracja nowego modelu współpracy z książkomatem.
- W profilu użytkownika musi być format
ksiazkomat
- jest on w domyślnej konfiguracji zawsze dostępny, ale należy się upewnić, że w konkretnej instalacji jest włączony. - W zmiennej CFG_AGENDY wprowadzić agendy, które będą reprezentowały poszczególne książkomaty np:
CFG_AGENDY=....|80|Książkomat nr 1|
Ustawić zmienną CFG_KSIAZKOMATY, której wartością jest lista par <agenda>|<liczba skrytek>|, gdzie <agenda> jest numerem agendy książkomatu (z CFG_AGENDY), a <liczba skrytek> informuje program klienta ile skrytek ma prezentować, np:
CFG_KSIAZKOMATY=80|43|
- Ustawić zmienną CFG_KSIAZKOMAT_SIP2 na wartość S
Nadać użytkownikom mającym dostęp do książkomatu uprawnienie książkomat=<lista agend>, gdzie <lista agend> zawiera numery agend ksiązkomatów dostępnych dla użytkownika
- Dla każdego książkomatu należy wprowadzić odrębnego użytkownika o nazwie sys_locker_X, gdzie w miejscu X można podać kolejne numery książkomatów, z uprawnieniem:
wypożyczanie=<agenda>;inne=<pozostałe agendy>
gdzie <agenda> jest numerem agendy bieżącego książkomatu, a <pozostałe agendy> - listą wszystkich agend oprócz agend książkomatów.
Ten użytkownik powinien być podany dostawcy książkomatu do łączenia się z systemem przez protokół SIP2. - NIE konfigurujemy już nadzorcy książkomatu w pliku config.yml - teraz jest to zbędne.
- NIE instalujemy MySQL ODBC na stanowisku klienta - teraz jest to zbędne.
- NIE konfigurujemy dodatkowych DLL dla klienta - teraz jest to zbędne.
Ponadto do profilów, które mają mieć dostęp do statystyk książkomatu, należy dodać raporty:
ksi-wyp-mc, ksi-wiz-mc, ksi-zwr-mc
Konfiguracja starego modelu współpracy z książkomatem.
W celu włączenia obsługi książkomatów ARFIDO należy wykonać następujące kroki:
Na serwerze
Zainstalować format (uwaga: domyślne instalacje posiadają ten format automatycznie - ale nie jest on wprowadzony do profili!)
<item> <fld_idf>egz-ksiazkomat</fld_idf> <fld_name>egz-ksiazkomat</fld_name> <fld_desc>egzemplarz w książkomacie</fld_desc> <fld_khw> </fld_khw> <fld_values>U=wypozyczalnia/sql/ksiazkomat/egz-ksiazkomat.vpr</fld_values> </item>
i wprowadzić do profilu logged i adminZainstalować zestawienie (uwaga: domyślne instalacje posiadają to zestawienie automatycznie - ale nie jest ono wprowadzone do profili!)
<item> <fld_idf>ksi-kontrolowane</fld_idf> <fld_desc>Pozycje kontrolowane</fld_desc> <fld_language>INTERNAL</fld_language> <fld_icon> </fld_icon> <fld_options> </fld_options> <fld_passes>1</fld_passes> <fld_values> </fld_values> <fld_parameters>wypozyczalnia/sql/ksiazkomat/sql-wypozyczone-status.epr</fld_parameters> <fld_globals> </fld_globals> <fld_init>*=wypozyczalnia/sql/ksiazkomat/sql-wypozyczone-status.zpr</fld_init> <fld_finalize> </fld_finalize> <fld_api_cmd> </fld_api_cmd> <fld_mode> </fld_mode> <fld_type>STA</fld_type> <fld_actions> </fld_actions> <fld_father>Obsługa książkomatu</fld_father> <fld_app>WYP</fld_app> </item>
i wprowadzić do profilu logged i admin- W zmiennej CFG_AGENDY wprowadzić agendy, które będą reprezentowały poszczególne książkomaty np:
CFG_AGENDY=....|80|Książkomat nr 1|
Ustawić zmienną CFG_KSIAZKOMATY, której wartością jest lista par <agenda>|<adres książkomatu>|, gdzie <agenda> jest numerem agendy książkomatu (z CFG_AGENDY), a <adres książkomatu> ma postać <ip>:<port> dostępu do bazy książkomatu np:
CFG_KSIAZKOMATY=80|sandbox.sokrates:3306|
Nadać użytkownikom mającym dostęp do książkomatu uprawnienie książkomat=<lista agend>, gdzie <lista agend> zawiera numery agend ksiązkomatów dostępnych dla użytkownika
- Dla każdego książkomatu należy wprowadzić odrębnego użytkownika o nazwie sys_locker_X, gdzie w miejscu X można podać kolejne numery książkomatów, z uprawnieniem:
wypożyczanie=<agenda>;inne=<pozostałe agendy>
gdzie <agenda> jest numerem agendy bieżącego książkomatu, a <pozostałe agendy> - listą wszystkich agend oprócz agend książkomatów. W konfiguracji managera instancji (plik
config.yml
) należy dodać usługę automatycznego skanowania stanu książkomatu:Fragment pliku config.ymlservices: locker: enabled
Na stanowisku klienta:
- Uzupełnić licencję o moduł KSI i wymienić licencję na stanowisku klienta.
- Zainstalować sterownik ODBC do MySQL - https://dev.mysql.com/downloads/connector/odbc/5.3.html
- Skopiować bibliotekę LockerMgr.dll dostarczona przez ARFIDO np. do sowa\sowa-tcp\arfido
- W celu zainstalowania funkcjonalności obsługi książkomatu w programie wypożyczalni należy zmodyfikować plik WYPOZYCZALNIA.INI przez dodanie sekcji:
[KSIĄŻKOMAT]
dll=<ścieżka>LockerMgr.dll
cycle=120gdzie <ścieżka> jest pełną ścieżką dostępu do biblioteki. Zmienna cycle oznacza okres skanowania książkomatu w sekundach (domyślnie 120).
Jeżeli w bibliotece wykorzystywana jest technologia RFID, to powinna być zainstalowana odpowiednia biblioteka obsługi RFID (operacja przekazania do/z książkomatu zmienia status etykiety)
W celu zainstalowania funkcjonalności obsługi książkomatu w programie magazyn_tcp należy powtórzyć krok 4 i ew. 5 dla pliku MAGAZYN_TCP.INI
Uwaga:
Biblioteka ARFIDO w wersji sierpień 2018 działa wolno przy odświeżaniu stanu książkomatu. Aby usprawnić ten problem została opracowana biblioteka ksiazkomat.dll, która pobiera dane znacznie szybciej. W celu zainstalowania tej biblioteki powyższa sekcja powinna mieć postać:
[KSIĄŻKOMAT]
dll=<ścieżka>ksiazkomat.dll
arfido=<ścieżka>LockerMgr.dll
cycle=120