Archiwum kategorii: Biblioteka

Bibliotekarz WebPlatform 1.0.23

Dla tych, którzy jeszcze nie osiwieli czekając na wydanie wersji WWW aplikacji Bibliotekarz mam dziś do pobrania najnowszą paczkę – wersję 1.0.23. Jest to paczka nie zawierająca Microsoft .NET Core 2.0 dlatego aby uruchomić program należy zainstalować: https://www.microsoft.com/net/download/thank-you/dotnet-runtime-2.0.6-windows-x64-asp.net-core-runtime-installer 

Uruchomienie – przypadek optymistyczny

Kroki jaki należy wykonać aby uruchomić program:

  1. Zainstalować silnik bazy danych (szczegóły w poprzednich wpisach na blogu)
  2. Zainstalować .NET Core 2.0 (link powyżej)
  3. Pobrać paczkę z programem blibliotekarz.net https://bibliotekarz.net/webplatform/BibliotekarzWebPlatform_1.0.23_NoFramework.7z
  4. Rozpakować paczkę z programem np do folderu: C:\BibliotekarzWebPlatform (jeśli archiwum nie chce się rozpakować, wymagana może być instalacja programu: https://7-zip.org.pl/sciagnij.html)
  5. Program możemy uruchomić na dwa sposoby:
    – poleceniem wiersza poleceń: wykonujemy polecenie: dotnet C:\BibliotekarzWebPlatform\WEB_Core_Bibliotekarz.dll
    – poprzez serwis IIS: wszczegóły w dalszej części wpisu
  6. W przypadku poprawnego uruchomienia, otwieramy przeglądarkę internetową i wpisujemy adres: https://localhost:5001 Powinna pojawić się strona aplikacji

Uruchomienie – Konfiguracja IIS

W przypadku chęci korzystania z serwera IIS (ma to choćby taką zaletę, że serwis działa bez potrzebny utrzymywania zalogowanej sesji użytkownika), potrzebujemy:

  1. Zainstalowany i uruchomiony serwis IIS. Osoby, które go nie posiadają muszą dokonać odpowiedniej instalacji (patrz: https://docs.microsoft.com/pl-pl/aspnet/core/host-and-deploy/iis/?tabs=aspnetcore2x)
  2. Zainstalowany moduł dla IIS (pakiet .NET Core w wersji ServerHosting Installer https://www.microsoft.com/net/download/dotnet-core/runtime-2.0.6)
  3. Utworzenie nowej witryny na serwerze IIS. Wskazujemy ścieżkę, gdzie rozpakowaliśmy nasze archiwum.
  4. Konfigurujemy pulę aplikacyjną, tak aby nie miała kodu zarządzalnego.
  5. W przypoadku hostowania aplikacji na IIS, domyślnie może być wykorzystywane konto sieciowe lub "wirtualne konto puli". Oba typy tych kont nie mają dostępu do bazy danych aplikacji, dlatego należy zmienić sposób uwierzytelniania do bazy danych w pliku appsettings.json.

    1. Uruchamiamy konsolę zarządzania serwerem baz danych – SQL Management Studio
    2. Dodajemy nowy login, z którego będzie korzystał nasz program. Ja nazwałem swojego użytkownika sqlUser
    3. Nadajemy użytkownikowi hasło, odznaczamy Enforce password policy (jeśli jest taka konieczność). W zakładce User Mapping przypisujemy mu rolę db_owner do naszej bazy danych.
    4. Odszukujemy plik appsettings.json w folderze, do którego wypakowaliśmy zawartość pobranego archiwum.
    5. Otwieramy plik w dowolnym edytorze tekstowym.
    6. Zmieniamy dane dostępowe do bazy danych
      z: "DefaultConnection": "Server=localhost\\sqlexpress;Database=BibliotekarzNET;Trusted_Connection=True;MultipleActiveResultSets=true"
      na: "DefaultConnection": "Server=localhost\\sqlexpress;Database=BibliotekarzNET;User Id=sqlUser;Password=HASLO_NADANE_UZYTKOWNIKOWI_PRZEZ_WAS;MultipleActiveResultSets=true"

Wymiana certyfikatu SSL

Wraz z programem dołączony jest certyfikat dla domeny localhost. Oczywiście w przypadku udostępnienia aplikacji użytkownikom w Internecie lub w sieci lokalnej, należy użyć odpowiedniego certyfikatu, który będzie zaufany. Nazwę pliku z certyfikatem oraz hasło do klucza prywatnego można zmienić w pliku appsettings.json. Zaleca się aby aplikacja zawsze korzystała z protokołu HTTPS.

Domyślni użytkownicy systemu

Program jest dostarczony z 3ma domyślnymi użytkownikami systemu: admin@admin / czytelnik@czytelnik / bibliotekarz@bibliotekarz
Wszyscy Ci użytkownicy posiadają hasło: password Dla własnego bezpieczeństwa, konta te powinny być usunięte / hasła zmienione zanim aplikacja zostanie udostępniona innym użytkownikom. W przeciwnym razie bez wątpienia prędzej czy później ktoś niepowołany przejmie kontrolę nad systemem.

 

 

Artykuł ten będzie uaktualniany w miarę pojawiania się pytań od użytkowników, dotyczących uruchomienia programu.

Konwersja bazy danych 1.6 do wersji Web Platform

Dzisiejszy artykuł przeznaczony jest dla użytkowników poprzedniej wersji programu, czyli programu Bibliotekarz.NET 1.6. W przypadku gdy chcemy przenieść księgozbiór do nowego programu, niezbędna będzie operacja konwersji bazy ze starego formatu, do nowego. Teoretycznie nowy Bibliotekarz mógłby korzystać ze starej bazy danych, ale ze względu na ograniczenia dotyczące wielodostępu do baz Microsoft Access, nie byłoby to rozsądnym rozwiązaniem.

Operacja konwersji bazy jest czynnością jednorazową i jednokierunkową. Oznacza to, że wykonuje się ją tylko raz i od tego momentu należy użytkować program w nowej wersji. Oczywiście nie wyklucza to możliwości wykonania konwersji kilka razy (nadpisując nową bazę danych), ale należy pamiętać, że konwersja w drugą stronę jest niemożliwa. Jeżeli dokonamy konwersji i zaczniemy pracę z nowym systemem, to nie ma już odwrotu – powrót do wersji 1.6 oznaczał będzie utratę danych, które wprowadziliśmy do systemu przez interfejs nowej platformy.

Niezbędne narzędzia

Do wykonania konwersji potrzebny będzie nam program konwertujący. Należy pobrać go z tego linka, zapisując go na dysku, a następnie rozpakować archiwum, np. do ścieżki: C:\BibliotekarzKonwerter Konwerter może (jak każde oprogramowanie) zawierać błędy, dlatego też na stronie Pobieranie będzie umieszczony link do najnowszej wersji konwertera. Teoretycznie każdy komputer posiadający system operacyjny Windows 7 lub nowszy powinien bez problemu uruchomić konwerter. Na tych systemach, w przypadku braku pewnych komponentów systemowych wymaganych do uruchomienia, pojawi się komunikat zachęcający do ich pobrania i instalacji. Gdyby jednak występowały problemy z instalacją, proszę o informacje w komentarzach pod artykułem z podaniem wersji posiadanego systemu operacyjnego.

Wymagania przed uruchomieniem konwertera

Głównym wymaganiem jest posiadanie zainstalowanego silnika baz danych. Jeżeli jeszcze nie zainstalowaliście Microsoft SQL Server Express, to zapraszam do zapoznania się z artykułem, który tłumaczy krok po kroku procedurę instalacji.

Przygotowanie bazy 1.6 do konwersji

Baza programu w wersji 1.6 to plik o nazwie mqs.mdb. Domyślnie znajduje się on w folderze Moje dokumenty użytkownika, który zainstalował program Bibliotekarz.NET 1.6. Oczywiście jeżeli zmieniliście lokalizację pliku (i/lub jego nazwę) to odszukacie plik zgodnie z Waszymi zmianami. Jeżeli już odszukaliście plik bazy danych, to należy go skopiować do folderu, do którego wypakowaliście archiwum zawierające konwerter, czyli np.: C:\BibliotekarzKonwerter . Przykładowy rezultat jaki powinniście osiągnąć na tym etapie.

Konfiguracja Konwertera

Jeżeli nasz plik bazy danych nazywa się mqs.mdb oraz podczas instalacji silnika bazy nie zmienialiśmy żadnych ustawień (silnik jest zainstalowany na tym samym komputerze, na którym uruchamiamy konwerter), to w tym kroku nie należy nic robić.

Osoby, których plik bazy ma inną nazwę oraz dokonały instalacji Microsoft SQL Server na innym komputerze i zmieniły nazwę instancji, powinny wprowadzić poprawki w pliku DBConverter.exe.config, zmieniając nazwę pliku, nazwę bazy wynikowej, serwer docelowy i/lub dane uwierzytelniające do serwera. Zmian dokonujemy w miejscach wskazanych na grafice poniżej:

Uruchomienie konwertera

Gdy wykonaliśmy już wszystkie powyższe kroki pozostaje nam uruchomić program DBConverter.exe. W wyniku jego działania:

  • utworzona zostanie nowa baza danych (żaden plik nie pojawi się w folderze konwertera – baza utworzy się w silniku baz SQL Server)
  • zmigrowane zostaną dane ze starej bazy do nowej
  • poprawność procesu zostanie zakomunikowana stosownym komunikatem na ekranie

W zależności od wielkości księgozbioru i mocy komputera proces konwersji może trwać od kilku do kilkudziesięciu minut. Proszę uzbroić się w cierpliwość.

Na zakończenie

Życzę wszystkim udanych konwersji. Artykuł postaram się aktualizować o wykryte problemy (o ile znajdzie się ich rozwiązanie ;).

Komponenty Bibliotekarz.NET Web Platform

Jakiś czas temu pisałem o procedurze instalacji silnika bazy danych nowego Bibliotekarza. Dziś natomiast przedstawię ogólny obraz składników systemu. W przeciwieństwie do Bibliotekarz.NET 1.6, który był monolitem – pojedyńczą aplikacją, nowa wersja to zbiór aplikacji, które współdziałając ze sobą tworzą coś co nazywam "platformą".

W skład systemu / platformy wchodzą:

  • serwer bazy danych
  • aplikacja konwertująca bazę 1.6 do wersji Web Platform
  • aplikacja web'owa Bibliotekarza
  • serwer aplikacyjny
  • serwer poczty
  • usługi harmonogramu

Na szczęscie (a może nieszczęście), nie wszystkie komponenty są obowiązkowe oraz nie wszystkie komponenty jeszcze istnieją.

Serwer bazy danych

Funkcją serwera bazy danych jest dostarczenie mechanizmów umożliwiających zapisanie księgozbioru na dysku komputera w taki sposób aby dane te były bezpieczne, a dostęp do nich był szybki i możliwy dla wielu użytkowników jednocześnie. W aktualnej wersji używany jest Microsoft SQL Server Express ale sama technologia nowego Bibliotekarza nie wyklucza możliwości stosowania innych silników baz danych. Silnik autorstwa Microsoft wymaga systemu operacyjnego Windows. Serwer baz danych powinien być instalowany na komputerze, który nie jest dostępny z Internetu (w celach zwiększenia bezpieczeństwa).

Aplikacja konwertująca bazę 1.6 do wersji Web Platform

Jest to prosta aplikacja konsolowa (czyli taka, której nie da się obsługiwać myszką :), służąca do konwersji bazy danych używanej przez program Bibliotekarz.NET 1.6 (baza Microsoft Access) do bazy danych Microsoft SQL Server. Osoby, które dopiero zaczynają pracę z Bibliotekarzem, nie muszą korzystać z konwertera. Osoby chcące przenieść swoje dane do nowego systemu, będą musiały wykonać jednorazowy proces konwersji. Konwerter wymaga systemu Windows oraz zainstalowanego .NET Framework 4.6. Na uwagę zasługuje także fakt, że konwersja wsteczna nie jest i nie będzie możliwa. W niedalekiej przyszłości pojawi się artykuł opisujący proces konwersji.

Aplikacja web'owa Bibliotekarza

Jest to główne źródło logiki aplikacji, nazywane potocznie aplikacją WWW. To właśnie ten moduł jest odpowiedzialny za serwowanie stron internetowych oraz komunikację z bazą danych. Aplikacja może ale nie musi wymagać systemu operacyjnego Windows. Aplikacja może działać jako program konsolowy (wymaga aby użytkownik systemu był stale zalogowany do komputera), jako usługa systemowa (może działać bez zalogowanego użytkownika) lub jako aplikacja uruchamiana przez serwer aplikacyjny. W przyszłości będą mogły powstawać wersje działające na systemach rodziny Linux. Aplikacja korzystając z tehnologi .NET Core może działać bez serwera IIS (serwera aplikacyjnego) lub z nim. W przyszłości pojawi się seria artykułów dotyczących konfiguracji oraz dostosowywania aplikacji.

Serwer aplikacyjny

W przypadku aplikacji w technologii .NET Core, serwer aplikacyjny przestaje być obligatoryjny. W prostych instalacjach Bibliotekarza (gdzie system będzie używany na jednym komputerze lub w sieci lokalnej) użycie serwera aplikacyjnego jest całkowicie zbędne. W przypadku instalacji widocznej ze świata, w celu zapewnienia bezpieczeństwa aplikacji oraz serwerowi należy skorzystać z serwera aplikacyjnego jakim jest dla przykładu IIS. Aplikacja Web jak i serwer instalacyjny muszą być na tym samym komputerze (w przeciwieństwie do serwera baz danych, którego zaleca się umiejscawiać na osobnej maszynie). IIS jest elementem systemu Windows (przeważnie należy do ręcznie zainstalować, zależy to od wersji posiadanego systemu Windows). O zastosowania IISa oraz jego konfiguracji powstanie osobny wpis na blogu.

Serwer poczty

Kolejnym elementem, z którego nowy Bibliotekarz.NET może korzystać to serwer poczy email. Jeżeli chcemy mieć możliwość wysyłania powiadomień do użytkowników, to taki serwer jest wymagany. Nie jest on częścią aplikacji ani systemu operacyjnego. Przeważnie dostęp do serwera poczty wymaga wykupienia niedrogiej usługi u odpowiedniego dostawcy.

Usługi harmonogramu

Jest to ostatni element platformy, który jeszcze nie powstał. Jego głównym celem jest umożliwie wykonywania pewnych operacji w sposób cykliczny – np wysyłanie powiadomień o zaległościach, tworzenie kopii bezpeiczeństw bazy danych, itp. Jest to również komponent opcjonalny.

Procedura instalacji silnika baz danych

Jednym z główych komponentów nowego Bibliotekarza.NET jest silnik baz danych. O komponentach z jakich składać się będzie system powstanie osobny wpis na blogu, a na razie ograniczę się do stwierdzenia "jednym z komponentów".

Silnik bazy danych jest oprogramowaniem dostarczonym przez firmę Microsoft. Jest to komponent bezpłatny. Aby pobrać i zainstalować Microsoft SQL Server Express 2014, należy utworzyć konto LIVE w usługach Microsoft. Instalacja i pobranie serwera to chyba najtrudniejszy element wdrożenia nowego Bibliotekarza.NET z punktu widzenia użytkownika. Wymagana jest minimalna wiedza techniczna, ze względu na występowanie języka angielskiego podczas procesu instalacji. Niemniej zachęcam wszystkich zainteresowanych nową wersją platformy do próby instalacji. Im wcześniej się uda, tym szybciej będzie można "przesiąść się" z wersji 1.6 na wersję Web Platform.

Osoby, które będą chciały hostować system u zewnętrznego dostawcy, nie będą musiały instalować serwera baz danych – ich odstawca już taki serwer będzie miał zainstalowany.

Aby "umilić" sam proces instalacji serwera baz danych, przygotowałem krótki dokument z opisem wymaganych czynności – krok po kroku.

Pobierz dokument opisu procesu instalacji

Zapowiedź nowej platformy Bibliotekarz.NET

logoBibPlatformZ ogromną przyjemnością mam zaszczyt poinformować, że rozpocząłem prace nad całkiem nowym interfejsem dla programu Bibliotekarz.NET. Nowy program, a właściwie system, będzie aplikacją internetową, która umożliwi pracę wielu pracownikom jednocześnie oraz udostępni katalog biblioteki czytelnikom. Nowy system będzie również korzystał z nowego silnika baz danych, a odpowiedni konwerter dla baz 1.6 zostanie udostępniony wraz z systemem.

Główne cechy nowego systemu:

  • praca wielozadaniowa
  • dostęp do systemu z wielu komputerów w sieci LAN lub poprzez Internet
  • dostęp do systemu dla czytelników
  • wsteczne wsparcie dla baz danych z programu Bibliotekarz.NET 1.6
  • wsparcie dla systemów operacyjnych Windows 7,8,10 (w przyszłości kilka platform Linuxowych)
  • zwiększona wydajność i skalowalność

Nie ma róży bez ognia…

Ze względu na skomplikowanie platformy, proces instalacji będzie wymagał większego zaangażowania ze strony użytkownika. Planowane jest przygotowanie dokumentacji opisującej krok po kroku proces. System w pierwszej wersji będzie składał się z trzech komponentów:

  • konwertera bazy danych (moduł przydatny obecnym użytkownikom, którzy będą zainteresowani przesiadką na Bibliotekarz.NET Web Platform). Konwerter wymaga instalacji na komputerze .NET Framework 4.6.2
  • silnika bazy danych – Microsoft SQL Server Express 2014
  • aplikacji WWW – aplikacja nie wymaga instalacji żadnych komponentów .NET Framework

Kiedy aplikacja będzie dostępna?

O ile prace są zaawansowane, o tyle etap implementacji nie został zakończony. Szacuję, że system posiada około 60% funkcjonalności. Poziom zaawansowania testów jest poniżej 5%, dlatego też spodziewać się można, że najważniejsze prace będą trwały do końca wakacji.

Testy Beta

Jeżeli jesteś użytkownikiem programu Bibliotekarz.NET i równocześnie jesteś zainteresowany przesiadką na nową platformę, zachęcam do zgłoszenia się do roli testera. Wymagana jest minimalna wiedza informatyczna oraz chęć wzięcia udziału w procesie wytwórczym. Osoby zainteresowane proszę o kontakt email.

Deser

Kilka zrzutów ekranów z aplikacji.

biblio1 biblio2 biblio3 biblio4