Bazy Danych Wykład VI Formularze Copyright by Arkadiusz Rzucidło 1
Interfejs użytkownika bazy danych Formularz jest zestawem zawierającym tablicę formantów umożliwiających przeglądanie, dodawanie lub edycję danych zawartych w bazie Do czego potrzebne są formularze? Sprawiają, że proces dodawania, edycji i przeglądania staje się prostszy Oferują dożo więcej możliwości i udogodnień niż arkusz danych Tworzą estetyczne środowisko pracy użytkownika Tworzą specyficzny scenariusz aplikacyjny zabezpieczający dane bazy Formanty są obiektami formularzy lub raportów, które umożliwiają dostęp do danych oraz zarządzanie formularzem lub raportem (pola tekstowe, pola kombi, pola wyboru oraz przyciski poleceń) Copyright by Arkadiusz Rzucidło 2
Tworzenie formularzy Tworzenie interfejsu użytkownika jest procesem żmudnym i trudnym Interfejs użytkownika Interfejs użytkownika dane Baza danych Baza danych Access upraszcza i automatyzuje proces tworzenia aplikacji opartej na bazie danych Autoformularze Kreator formularzy Samodzielny projekt formularza Copyright by Arkadiusz Rzucidło 3
Tworzenie formularzy Przeglądanie danych formularza Do początku Poprzedni Licznik Następny Do końca Nowy rekord Liczba rekordów w zestawie Copyright by Arkadiusz Rzucidło 4
Manipulowanie danymi w formularzach Poruszanie się po kolejnych polach w formularzu: TAB, ENTER przeskok do kolejnego pola SHIFT + TAB - przeskok do poprzedniego pola Dodawanie rekordów Wybranie przycisku nowego rekordu w grupie przycisków nawigacyjnych Przejście po wszystkich polach formularza i rozpoczęcie nowego wpisu Cofanie zmian ESC cofnięcie wpisu do pola 2 * ESC cofnięcie edycji rekordu Usuwanie rekordu Selektor pola Zaznaczanie grupy rekordów do usunięcia Copyright by Arkadiusz Rzucidło 5
Typy formantów formularzy Formanty związane Pobierają wartości ze związanego z nim elementu bazy danych (kwerendy lub tabele) Formanty niezwiązane Nie są związane z jakimkolwiek polem Zazwyczaj wyświetlają informacje dodatkowe, wyliczenia lub dekoracje formularzy (np. numer strony) Formanty obliczeniowe Posiada formułę lub obliczenie będące źródłem jego wartości Nie aktualizuje automatycznie żadnej tabeli Można decydować o tym co ma stać się z wartością pola (np. pole wyliczeniowe określające wiek) Copyright by Arkadiusz Rzucidło 6
Rodzaje formantów Etykiety Wykorzystywane są do opisywania innych formantów oraz do celów informacyjnych Użytkownicy nie mogą zmieniać wartości Etykiet Własności te można zmieniać np. za pomocą kodu w Visual Basicu w trybie projektowania Możliwość wykonywania skrótów klawiaturowych za pomocą etykiet Szybkie poruszanie się po formularzu Znak & (ampersand) zmienia literę przed którą stoi na aktywną (podkreśloną) ALT + Litera szybkie przemieszczanie się po pola formularza Lista kolejności dostępu Wyznacza kolejność dostępu do poszczególnych elementów formularz (formantów) Copyright by Arkadiusz Rzucidło 7
Rodzaje formantów Pole tekstowe Standardowe pole do wprowadzania danych Najczęściej wykorzystywany formant Może być formantem związanym, niezwiązanym i obliczeniowym Może wyświetlać dane w jednej lub wielu liniach; może posiadać pasek przewijania Wykorzystywane dla danych różnego typu w tym także Noty; Wyjątkiem są obiekty OLE Pole listy i kombi Wyświetlają swoje dane w postaci listy Pole listy Wyświetla kilka elementów Okno pola zawsze jest otwarte Wybieranie: pojedyncze, proste wybieranie wielokrotne (SHIFT), złożone wybieranie wielokrotne Copyright by Arkadiusz Rzucidło 8
Rodzaje formantów Pole kombi Wyświetla zawsze tylko jeden element Strzałka pola wyświetla listę opcji Pole wyboru, przycisk opcji, przyciski przełącznika doskonale nadają się do przedstawiania danych w formacie Tak/Nie Pole wyboru jest kombinacją małego pola i etykiety: Zaznaczone Tak, Nie zaznaczone Nie Przycisk przełącznika Włączone Tak, wyłączone Nie Przycisk opcji (przycisk radiowy) Zazwyczaj używany do wybierania więcej niż dwóch opcji Substytut pola listy i kombi Zarezerwowany dla ograniczonej liczby dostępnych opcji Copyright by Arkadiusz Rzucidło 9
Rodzaje formantów Przyciski polecenia Inicjują procesy składników bazy danych Odnoszą się do makropoleceń lub procedur w języku Visual Basic Domyślnym zdarzeniem dla formanta jest na kliknięcie Grupa opcji Jest używana do grupowania innych formantów Posiada własną nazwę Jeśli grupuje przyciski opcji to tylko jeden z nich może zostać zaznaczony Copyright by Arkadiusz Rzucidło 10
Konstrukcja formularzy Nagłówek formularza Nagłówek strony Sekcja robocza formularza Stopka strony Stopka formularza Formularze pojedyncze Formularze złożone Podformularze Rodzaje widoków formularza Formularze pojedyncze Formularze ciągłe Arkusze danych Tabela przestawna Wykres przestawny Copyright by Arkadiusz Rzucidło 11
Właściwości formantów Wskaźnik obiektów Etykieta Grupa opcji Przycisk opcji Pole kombi Przycisk polecenia Niezwiązana ramka obiektu Podział strony Podformularz Prostokąt Kreator formantów Pole tekstowe Przycisk przełącznika Pole wyboru Pole listy Obraz Związana ramka obiektu Formant ramka Linia Więcej formantów Copyright by Arkadiusz Rzucidło 12
Ustawianie właściwości dla formantów Każdy element formularza posiada zbiór właściwości Właściwości podzielone według funkcjonalności Format - parametry: Prezentacji danych Pozycjonowania Wizualizacji elementu Dane parametry związane z obsługa danych Zdarzenia reakcja na działania użytkownika Inne parametry dodatkowe Wszystkie zbiór wszystkich parametrów Dialog z oknem właściwości za pomocą: Pola tekstowego (liczby lub łańcuchy tekstowe) Pola kombi (dostępne opcje z listy) Konstruktorów wyrażeń, kodu, makropoleceń Copyright by Arkadiusz Rzucidło 13
Dodawanie i usuwanie formantów Dodawanie formantów Autoformularze Wybieranie z palety dostępnych formantów Za pomocą listy pól źródła danych Określenie typu formanta z palety Techniką Drag&Drop przeniesienie pola w obszar formularza Usuwanie formantów Menu kontekstowe Wskazanie elementu + klawisz DELETE Procedury przypisane do elementu są automatycznie usuwane Copyright by Arkadiusz Rzucidło 14
Rozmieszczanie formantów Zamian rozmiaru Automatyczne dopasowanie Odręczna modyfikacja rozmiarów pól węzły pola Globalne zmiany rozmiarów zaznaczonych pól Rozmieszczanie pól w formularzu Pozycjonowanie elementów za pomocą siatki Pozycjonowanie precyzyjne klawisz CTRL Pola powiązane z etykietami Przesuwanie rozdzielnie uchwyt lewy górny róg elementu Rozmieszczanie wyrównanie rozmiar Odstępy w poziomie Odstępy w pionie Copyright by Arkadiusz Rzucidło 15
Zmiana wyglądu formantów Efekty specjalne: spłaszczenie, podniesienie, wypuszczenie Szerokość linii/ obramowanie Dobór grubości obramowania Dobór kolorystyki formularzy Wybór z palety dostępnych kolorów Autoformatowanie Copyright by Arkadiusz Rzucidło 16
Przykład Copyright by Arkadiusz Rzucidło 17
Formularze zespolone Są efektem tworzenia interfejsu użytkownika na podstawie wielu tabel (kwerend złożonych) Tworzenie formularzy zespolonych: Kreator formularzy Odręczny projekt Copyright by Arkadiusz Rzucidło 18
Kreator formularzy Copyright by Arkadiusz Rzucidło 19
Kreator formularzy Copyright by Arkadiusz Rzucidło 20
Projekt odręczny Utworzenie formularzy podstawowego i szczegółowego jako osobnych formularzy Ustanowienie źródła danych dla formularza szczegółowego na podstawie relacji Copyright by Arkadiusz Rzucidło 21
Projekt odręczny Dodanie do formularza podstawowego formantu podformularza Określenie źródła danych dla obiektu podformularza Zespolenie formularza podstawowego z podformularzem na podstawie kluczy relacji Copyright by Arkadiusz Rzucidło 22
Projekt odręczny Copyright by Arkadiusz Rzucidło 23
Tworzenie interfejsu WWW Access 2002 udostępnia możliwość tworzenia interfejsu WWW dla bazy danych Copyright by Arkadiusz Rzucidło 24
Tworzenie interfejsu WWW Copyright by Arkadiusz Rzucidło 25
Raporty Raporty służą do prezentacji danych wyjściowych (najczęściej w celach ich wydruku) Rodzaje raportów: Związany pobiera dane z tabel albo kwerend, z którymi jest powiązany Niezwiązany nie istnieją tabele ani kwerendy, zasilające raport danymi Generowanie raportu: Widok projekt Keator raportów Autoraporty Kolumnowy Tabelaryczny Kreator wykresów Kreator etykiet Copyright by Arkadiusz Rzucidło 26
Układ raportu Nagłówek raportu jeden Nagłówek strony każda strona Nagłówek sekcji podczas grupowania Treść raportu Stopka sekcji Stopka strony Stopka raportu Copyright by Arkadiusz Rzucidło 27
Źródła formatu Pola źródła danych [nazwisko] Formuły =Trim([Imie]& &[Nazwisko]) ="Strona " & [Page] & " z " & [Pages] Funkcje, operatory i zmienne Suma ( [ Wartość ] ) iif ( warunek ; jeśli spełniony ; jeśli nie spełniony ) now(), date() [page], [pages] Copyright by Arkadiusz Rzucidło 28
Generowanie raportu Na podstawie tabel lub kwerend w formie źródłowej Na podstawie kwerend definiowanych Copyright by Arkadiusz Rzucidło 29
Generowanie raportu Copyright by Arkadiusz Rzucidło 30
Generowanie raportu Copyright by Arkadiusz Rzucidło 31
Generowanie raportu Copyright by Arkadiusz Rzucidło 32
Generowanie raportu Copyright by Arkadiusz Rzucidło 33
Copyright by Arkadiusz Rzucidło 34
Generowanie raportu złożonego Copyright by Arkadiusz Rzucidło 35
Raporty zaawansowane Indywidualne podejście do raportu Wykorzystanie narzędzi: Modyfikacji widoku raportu (definiowanie układu raportu) Grupowania i sortowania Pól wyliczeniowych Na poziomie kwerendy Na poziomie raportu Copyright by Arkadiusz Rzucidło 36
Raporty zaawansowane Funkcja Opis IsNull() IIf() DateDiff() Left() Count() Avg() Now() DateAdd() Sprawdza, czy dane pole jest puste. Null nie jest tym samym co 0. Wartość jest Null jeśli przynajmniej jedna z danych ma watość Null Sprawdza warunek i wybiera jeden z dwóch możliwych argumentów Określa różnicę pomiedzy dwoma datami lub godzinami Zwraca część tekstu zaczynającą się od lewej strony, np. Left([Pole],2), Right(), Mid() Zwraca liczbę elementów znajdujących się w zbiorze. Zwraca średnią wartość z liczb znajdujących się w zbiorze Zwraca datę i godzinę systemową Zwraca przyszłą date NZ() Zmienia wszystkie znalezione wartości Null na 0 Copyright by Arkadiusz Rzucidło 37
Formanty dynamiczne w raportach Copyright by Arkadiusz Rzucidło 38
Raporty zaawansowane Wyrażenia arytmetyczne Kolejność działań Potęgowanie Mnożenie Dzielenie Dodawanie Odejmowanie Operacje w nawiasach (6+3)*4=36 6+3*4=18 (Sum([wartość]))/(Sum([ilość])) upewnienie się, że Access wyliczy najpierw sumy a później podzieli je przez siebie Copyright by Arkadiusz Rzucidło 39
KONIEC Wykład XII Access cz.iv Copyright by Arkadiusz Rzucidło 40