Baza_widok to raport RDL z rodziny raportów diagnostycznych StudioSystem, eksportujący pełną listę widoków (zestawień) zdefiniowanych w module Konfiguracja - wraz z ich aktywnością, symbolem PRX, przypisaną rolą i identyfikatorem UID wykorzystywanym przez uniwersalną transakcję j_grid.aspx.
Czym jest raport Baza_widok
Tak jak pozostałe raporty z tej rodziny, Baza_widok to plik XML z rozszerzeniem RDL, edytowalny w Microsoft Report Builder 3.x. Jego zadaniem nie jest prezentacja danych biznesowych, tylko dokumentacji samej konfiguracji platformy - a konkretnie tabeli przechowującej definicje widoków, czyli zestawień danych wyświetlanych w interfejsie.
W StudioSystem dane prezentowane są w obiektach określanych jako tabele lub zestawienia, w zależności od rodzaju danych nazywane rejestrami (dokumentami), kartotekami lub zestawieniami kartotek. Każdy taki widok trzeba było w pewnym momencie skonfigurować - zdefiniować zapytanie do bazy, warunki filtrowania i format prezentacji. Raport Baza_widok zbiera wszystkie tak zdefiniowane widoki w jedno zestawienie, bez potrzeby przechodzenia przez moduł Konfiguracja pozycja po pozycji.
Raport wpisuje się w tę samą rodzinę co Baza_sql, opisujący warstwę zapytań wywoływanych identyfikatorem UID. Różnica jest taka, że Baza_sql dotyczy zapytań wywoływanych z poziomu formularzy zapisu danych, natomiast Baza_widok - zapytań stojących za zestawieniami danych wyświetlanymi w tabelach i rejestrach. Oba raporty razem dają dość pełny obraz warstwy zapytań SQL wykorzystywanej przez interfejs platformy, bez konieczności logowania się bezpośrednio do serwera bazy danych.
Moduł Konfiguracja - Tabele
Widoki konfiguruje się w module Konfiguracja, w grupie pozycji menu WIDOKI, pod pozycją TABELE. Po jej wybraniu wyświetlane jest zestawienie wszystkich widoków zdefiniowanych w programie - tabela o nazwie ZESTAWIENIA. To właśnie zawartość tej tabeli, w uproszczonej formie, trafia do raportu Baza_widok.
Mechanizm ten opisano szerzej w materiale o konfiguracji widoków i tabeli zestawień, który pokazuje krok po kroku proces dopisywania nowego widoku - od zakładki Dane podstawowe, przez Filtrowanie, aż po ustawienia Insert/Update decydujące o tym, czy zestawienie pozwala także na edycję danych, a nie wyłącznie ich podgląd.
Struktura wpisu widoku
Każdy wiersz tabeli ZESTAWIENIA, a więc i każdy wiersz eksportowany przez raport Baza_widok, opisuje jeden widok następującymi polami:
| Pole | Znaczenie |
|---|---|
| Aktywne | Informacja, czy widok jest aktywny i dostępny w interfejsie |
| Refno | Niepowtarzalny numer referencyjny zestawienia |
| Nazwa | Opis widoku wyświetlany jako nagłówek tabeli |
| Systemowe | Informacja, czy widok jest wykorzystywany przez programy standardowe |
| PRX | Trzyznakowy symbol identyfikujący zestawienie |
| Rola SYS | Symbol roli systemowej, do której przypisany jest widok |
| UID | Indywidualny numer identyfikacyjny, parametr transakcji j_grid.aspx |
Kolumna „Systemowe” ma tu praktyczne znaczenie ostrzegawcze - widok oznaczony jako systemowy jest wykorzystywany przez standardowy moduł platformy, więc jego modyfikacja albo usunięcie może wpłynąć na działanie funkcji, z której korzysta wielu użytkowników jednocześnie, a nie tylko autor zmiany. Pole „Rola SYS” pełni z kolei rolę filtra dostępu - użytkownik przypisany do innej roli niż wskazana przy widoku zwykle w ogóle nie zobaczy go na liście dostępnych zestawień, co porządkuje interfejs i ogranicza ryzyko pomyłki.
Polecenia zarządzania widokami
W widoku Zestawienia dostępny jest zestaw poleceń pozwalających zarządzać całym cyklem życia widoku, bez potrzeby ingerencji w bazę danych z poziomu narzędzia administracyjnego SQL Server:
- Dodaj - otwiera formularz dopisania nowego widoku.
- Edycja - wyświetla formularz edycji wybranego widoku.
- Kolumny - wyświetla kolumny widoku w osobnym oknie.
- Utwórz/aktualizuj kolumny - dopisuje kolumny zestawienia na podstawie listy pól zwracanych przez zapytanie do bazy.
- Usuń widok i kolumny - usuwa zaznaczony widok wraz ze wszystkimi jego kolumnami.
- Kopiuj zestawienie - tworzy kopię wybranego widoku jako punkt wyjścia do nowej konfiguracji.
- Eksportowanie do Excela - zapisuje bieżące zestawienie widoków do pliku arkusza kalkulacyjnego.
Polecenie „Utwórz/aktualizuj kolumny” zasługuje na osobną uwagę, bo automatyzuje krok, który ręcznie bywa najbardziej czasochłonny - zamiast ręcznie definiować każdą kolumnę wynikową, system sam odczytuje strukturę pól zwracanych przez zapytanie i buduje na jej podstawie definicję kolumn tabeli. Ten sam mechanizm, opisany dokładniej od strony technicznej, stoi za transakcją adm_widok_kolumny.aspx, dokumentowaną osobno.

Jeden formularz, cała konfiguracja widoku
Zapytanie, filtrowanie i uprawnienia do edycji danych ustawia się w jednym formularzu, bez pisania kodu strony wyświetlającej wynik.
Rola UID i transakcji j_grid.aspx
Numer UID przypisany do widoku nie jest wyłącznie identyfikatorem porządkowym w tabeli ZESTAWIENIA. To realny parametr przekazywany do uniwersalnej transakcji j_grid.aspx, która na jego podstawie wie, które zapytanie wykonać i jak sformatować wynik. Innymi słowy - każdy przycisk menu prowadzący do zestawienia danych w StudioSystem w tle wywołuje tę samą transakcję z innym parametrem UID.
Praktyczna konsekwencja jest taka, że dodanie nowego widoku w module Konfiguracja i przypisanie go do pozycji menu w konfiguratorze nie wymaga napisania ani jednej linijki kodu strony - cała logika wyświetlania danych jest już gotowa w transakcji j_grid.aspx, a nowy widok jedynie dostarcza jej nowy zestaw danych do pokazania.
Ten sam mechanizm tłumaczy, dlaczego dwa pozornie różne zestawienia w interfejsie - lista kontrahentów i lista dokumentów magazynowych - działają technicznie identycznie. Różni je wyłącznie zapytanie SQL zapisane pod danym UID w tabeli ZESTAWIENIA oraz zestaw kolumn wygenerowany na jego podstawie. Dla osoby analizującej działanie platformy oznacza to, że zrozumienie transakcji j_grid.aspx raz wystarcza do zrozumienia sposobu wyświetlania praktycznie każdego rejestru czy kartoteki w systemie, niezależnie od tego, jakiej bazy danych dotyczy konkretne wdrożenie.
Jak uruchomić raport
Baza_widok uruchamia się identycznie jak pozostałe raporty RDL platformy - transakcją raporty.aspx z parametrem raport wskazującym ścieżkę pliku, na przykład raport=/Firma_SoftwareStudio/Baza_widok. Domyślnie wynikiem jest podgląd na stronie, a opcjonalny parametr save pozwala zapisać wynik w formacie pdf albo xls. Pełny mechanizm parametrów i zmiennych sesyjnych przekazywanych do każdego raportu opisano w materiale o Reporting Services w StudioSystem.
Praktyczne zastosowania
Raport Baza_widok przydaje się wszędzie tam, gdzie trzeba szybko odpowiedzieć na pytanie „ile mamy w ogóle skonfigurowanych zestawień i które z nich są systemowe”, bez przeklikiwania się przez moduł Konfiguracja:
- Porządkowanie po latach eksploatacji - z czasem przybywa widoków tworzonych na potrzeby jednorazowych analiz, których nikt już nie używa. Pełny eksport ułatwia identyfikację kandydatów do usunięcia.
- Migracja konfiguracji między środowiskami - porównanie listy widoków środowiska testowego i produkcyjnego pozwala wychwycić różnice przed wdrożeniem zmian.
- Ochrona widoków systemowych - zestawienie z jasno oznaczoną kolumną „Systemowe” pomaga uniknąć przypadkowej edycji widoku, od którego zależy działanie modułu standardowego.
- Przekazanie wiedzy nowemu administratorowi - jeden dokument zamiast konieczności ręcznego przeglądania każdej pozycji w interfejsie.
Warto zwrócić uwagę, że raport pokazuje wyłącznie metadane widoku - jego nazwę, symbol i przynależność do roli - a nie treść samego zapytania SQL, jaka kryje się pod danym UID. Do pełnego audytu zapytania nadal potrzebny jest dostęp do konfiguracji widoku w module Konfiguracja albo bezpośrednio do bazy danych. Baza_widok skraca jednak pierwszy krok tego procesu - pozwala szybko ustalić, ile widoków w ogóle istnieje i które z nich w pierwszej kolejności zasługują na bliższe sprawdzenie, zamiast przeglądać każdą pozycję z osobna od początku listy.
Podsumowanie
Raport Baza_widok eksportuje zawartość tabeli ZESTAWIENIA z modułu Konfiguracja - kompletną listę widoków wraz z ich aktywnością, symbolem PRX, przypisaną rolą i identyfikatorem UID, którym posługuje się uniwersalna transakcja j_grid.aspx przy wyświetlaniu danych.
Pełny proces konfigurowania nowego widoku, wraz z zakładkami formularza i warunkami filtrowania, opisano w materiale o widokach SQL w module Konfiguracja, a mechanizm automatycznego dopasowania kolumn do zapytania - w dokumentacji transakcji adm_widok_kolumny.aspx. Razem te trzy materiały pokrywają cały cykl życia widoku danych w StudioSystem - od zapytania SQL, przez definicję kolumn, aż po pozycję w menu wyświetlającą gotowe zestawienie użytkownikowi.