Ludzie pragną czasami się rozstawać, żeby móc tęsknić, czekać i cieszyć się z powrotem.
Obiekt typu Miara posiada poza podstawowymi parametrami „zaszytą” funkcję agregującą
(min, max, suma, średnia, zlicz, etc.). Właściwie posiada nawet dwie funkcje tego typu. Jedna określana jest na poziomie kodu SQL (patrz rys. 4) i po uruchomieniu zapytania wykona się po stronie serwera bazy danych. Druga (niewidoczna na rysunku ponieważ znajduje się na innej
216
Bartosz Dobrowolski
zakładce) określa w jaki sposób wartości liczbowe będą wyliczane podczas pracy bez połącze-
nia z bazą danych. Oznacza to, że kiedy użytkownik uruchomi raport i otrzyma z bazy danych
wstępnie zagregowany wynik zapytania, może potem dowolnie „przewracać” i „kroić” uzyska-
ne dane a wartości liczbowe będą automatycznie przeliczane lokalnie (na jego stacji) bez konieczności łączenia się ze źródłem danych. Dzięki temu, że wynik zapytania może być prze-
chowywany wewnątrz pliku raportu, pracę nad danymi można kontynuować w dowolnym miej-
scu i czasie a raz uruchomiony raport (może nawet automatycznie przy pomocy serwera Bro-
adcasAgent) jest gotowy do analizy dla wszystkich uprawnionych użytkowników bez koniecz-
ności czasochłonnego odświeżania. Miara domyślnie agreguje się do poziomu wymiarów, z któ-
rymi znajduje się w bloku danych (tabela, wykres, macierz). Użytkownik może oczywiście do-
wolnie wpływać na kontekst agregacji i układ danych.
4. Dzień siódmy
Aby możliwe było zbudowanie raportu projektant po stworzeniu Świata musi udostępnić go
użytkownikom. Sposobów jest kilka. Ponieważ Świat jest pojedynczym plikiem może być udo-
stępniany jako plik poprzez strukturę katalogów czy pocztę elektroniczną. Sposób prosty ale kłopotliwy w przypadku konieczności wprowadzenia zmian do Świata Obiektów (aktualizacji
struktury bazy danych, przemianowania czy dodania nowych obiektów) – w takim przypadku
należałoby ponownie przesłać świat, upewnić się, czy wszyscy użytkownicy korzystają z nowej wersji itd. Dużo wygodniej i bezpieczniej można udostępnić Świat Obiektów poprzez repozytorium systemu BusinessObjects.
Repozytorium BusinessObjects to pewnego rodzaju biblioteka. Biblioteka przechowująca za-
równo Światy Obiektów jak i dokumenty (z danymi i bez) ale dodatkowo pełniąca funkcje me-
dium pomiędzy użytkownikami systemu oraz będąca centralnym elementem wewnętrznego sys-
temu bezpieczeństwa BusinessObjects (można go opcjonalnie połączyć z domeną NT i we-
wnętrznym systemem haseł baz danych). Repozytorium to zwykła, relacyjna baza danych
(Oracle, DB2, MS SQL Server, etc) , która w celu określenia polityki bezpieczeństwa genero-
wana jest automatycznie w dowolnej przestrzeni wybranego przez administratora motoru bazy
danych. Tworzenie repozytorium odbywa się z poziomu aplikacji zarządczej Supervisor (patrz
architektura na rys. 5). W tej aplikacji administrator systemu tworzy też drzewiastą hierarchię użytkowników, nadaje im prawa dostępu do aplikacji, funkcji aplikacji, dokumentów, Światów
Obiektów (z wyszczególnieniem widocznych dla użytkownika obiektów) oraz do danych nawet
na poziomie pojedynczego rekordu. Od momentu stworzenia repozytorium użytkownicy sys-
temu aby skorzystać z jakiejkolwiek aplikacji muszą zweryfikować swój login i hasło. Trzy
błędne próby logowania i....pozostaje już tylko telefon do administratora.
„Świat obiektów – świat analiz”
217
Rys. 5. Architektura systemu BusinessObjects
Wróćmy jeszcze na moment do współdzielenia Światów Obiektów. Projektant umieszcza goto-
wy Świat w Repozytorium. Dla większego bezpieczeństwa wszystkie informacje dostępowe
(dane serwera, login i hasło) do bazy danych, na której zbudowany został Świat Obiektów prze-chowywane są w oddzielnym miejscu Repozytorium i nigdy nie są zapisywane na stacji użyt-
kownika. Przy każdym połączeniu do źródłowej bazy raportowej (czyli przy uruchomieniu ra-
portu – zapytania) aplikacja analityczna BusinessObjects sięga do Repozytorium, pobiera dane logowania uwierzytelniające użytkownika, „podstawia” je do klienta bazy a następnie po uzy-skaniu dostępu do danych usuwa z pamięci. Świat Obiektów umieszczony w Repozytorium jest
silnie zabezpieczony a ewentualne modyfikacje wystarczy zaimplementować w jednej jego ko-
pii. Zmiany zostaną automatycznie naniesione na wszystkich stacjach klienckich i raportach.
Repozytorium pełni także funkcję biblioteki dokumentów. Użytkownicy mogą wysyłać do niej
raporty, odbierać je, publikować, współdzielić a dzięki zdefiniowanemu za pomocą aplikacji
Supervisor systemowi bezpieczeństwa każdy użytkownik widzi tylko raporty do których został
uprawniony. System posiada zaawansowany mechanizm ograniczający dostęp do krytycznych
danych. Dzięki temu kilka osób mających dostęp do jednego raportu po jego otwarciu zobaczy
dane przeznaczone tylko dla siebie. Dyrektor Sprzedaży otwierając np. „Raport Miesięczny