Formularze 37 5. Formularze Podstawowym celem zastosowania formularzy jest prezentacja danych zawartych w bazie danych. Najczęściej więc kaŝdy obiekt tego rodzaju będzie odwoływał się do tabeli lub kwerendy i przedstawiał dane z pojedynczych wierszy nie w postaci arkusza danych, ale klasycznego formularza. Formularze przypominają okna dialogowe, zawierają elementy sterujące: pola tekstowe, pola listy, pola kombi, przyciski poleceń i inne. Formularze pozwalają przeglądać, wprowadzać i modyfikować dane, mogą być takŝe wydrukowane lub zamienione w raport. Aby zbudować nowy formularz dla danej tabeli lub kwerendy, naleŝy w oknie bazy danych kliknąć zakładkę Formularze, a następnie przycisk Nowy. Access wyświetla wtedy okno dialogowe, w którym naleŝy określić tabelę lub kwerendę na podstawie której tworzony jest formularz oraz sposób projektowania formularza. Rys. 5.1 Okno Nowy formularz Program udostępnia następujące metody projektowania nowych formularzy: Widok projektu, Kreator formularzy, Autoformularze: Kolumnowy, Tabelaryczny, Arkusz danych, Kreator wykresów i Kreator tabel przestawnych. Widok projektu daje moŝliwość samodzielnego tworzenia formularza od początku. Kreator formularzy jest interaktywnym asystentem wspomagającym proces projektowania formularza. Asystent ten wyświetla szereg okien dialogowych, w których uŝytkownik określa wygląd formularza. Autoformularze uruchamiają całkowicie automatyczną procedurę tworzenia formularza dla wybranej tabeli źródłowej. W rozdziale tym zostanie omówione tworzenie formularza przy pomocy asystenta, jego ręczna edycja, oraz dodawanie elementów sterujących przy pomocy kreatora.
38 Wprowadzenie do projektowania baz danych 5.1 Asystent W celu utworzenia formularza wyświetlającego zawartość danej tabeli lub kwerendy wybrano współpracę z interaktywnym asystentem poprzez wskazanie opcji Kreator formularzy z okna Nowy formularz. Ze względu na to, Ŝe nie zawsze poŝądane jest wyświetlanie wszystkich pól tabeli źródłowej, asystent w następnym kroku Ŝąda wybrania pól, które mają być umieszczone w formularzu. Niezbędne jest ustalenie kolejności wyświetlanych pól. NaleŜy po kolei wybierać pola z listy Dostępne pola i przy pomocy przycisku oznaczonego > przesuwać je do listy Wybrane pola. JeŜeli kolejność ta ma być taka jak kolejność pól w wierszu tabeli i wszystkie pola mają być widoczne moŝna uŝyć przycisku >>. Dwa przyciski umieszczone poniŝej pozwalają usunąć pojedyncze (<) lub wszystkie (<<) pola z listy Wybrane pola. Asystent umoŝliwia równieŝ dołączanie pól z innych tabel, tabele te powinny być powiązane z tabelą główną za pomocą polecenia Narzędzia Relacje. (patrz punkt 3.4) Rys. 5.2 Kreator formularzy - wybór pól Następny etap tworzenia formularza wymaga podjęcia decyzji co do rodzaju formularza: Kolumnowy, Tabelaryczny, Arkusz danych, Wyjustowany. Wygląd kaŝdego z dostępnych układów widoczny jest w oknie asystenta. Kolejna czynność to wybór stylu formularza, podobnie jak poprzednio wskazanie stylu powoduje aktualizację podglądu w oknie kreatora. Na koniec naleŝy nadać formularzowi nazwę. Standardowo jest to nazwa tabeli źródłowej (wygenerowanemu w tym punkcie formularzowi nadana została nazwa Wszyscy wypoŝyczający ). Ponadto poprzez wybór jednej z dwóch opcji moŝna
Formularze 39 zdecydować o Otwarciu formularza, aby przejrzeć lub wprowadzić informacje czy Modyfikowaniu projektu formularza. Rys. 5.3 Kreator formularzy - wybór układu i stylu 5.2 Edycja formularza Po wybraniu przycisku Modyfikuj projekt formularza z ostatniego okna asystenta lub przycisku Projektuj z okna bazy danych dla wybranego formularza moŝna samodzielnie decydować o jego wyglądzie. Równocześnie z pojawieniem się okna projektu formularza Access włącza pasek narzędzi Projekt formularza oraz Formatowanie.
40 Wprowadzenie do projektowania baz danych Zapisz Podgląd Kopiuj Malarz Pasek Przybornik Kod Buduj Nowy obiekt: wydruku formatów narzędzi programu tabela narzędzi Sieć WWW Widok Drukuj Wytnij Wklej Wstaw Lista pól Właściwości Asystent hiperłącze Autoformatowanie Okno bazy pakietu danych Office Rys 5.4 Pasek narzędzi Projekt formularza Formularz znajduje się w tzw. Widoku Projekt. Widok ten moŝna zmienić posługując się pierwszym przyciskiem paska narzędzi. MoŜna przełączyć formularz w tryb: Widok Formularz lub Widok arkusza danych. Pierwszy z nich jest domyślnie wybrany na pasku narzędzi. Rozmiar Kursywa Wyrównaj Wyrównaj Kolor czcionki Efekt Obiekt Czcionka czcionki do lewej do prawej pierwszoplanowy specjalny Podkreślenie Kolor wypełnienia/tła Szerokość linii Pogrubienie Wyśrodkuj Kolor linii/obramowania Rys 5.5 Pasek narzędzi Formatowanie Stworzony przez asystenta formularz to prostokątny blankiet podzielony na trzy sekcje. W nagłówku, w przypadku układu tabelarycznego, znajdują się nazwy wyświetlanych pól, w sekcji szczegółowej znajdują się pola tekstowe przypisane polom tabeli źródłowej, stopka formularza jest pusta. UŜytkownik moŝe zmieniać rozmiary całego formularza jak i jego sekcji. Wystarczy w tym celu złapać myszą dowolną krawędź blankietu lub sekcji i przeciągnąć ją w nowe połoŝenie. Kursor myszy przyjmuje wtedy postać:,. Blankiet formularza pokryty jest siatką kropek, oraz linii. Siatka umoŝliwia wyrównywanie wzajemnego połoŝenia detali na formularzu w poziomie i w pionie, dzięki swym przyciągającym właściwościom. Wyświetlanie siatki i przyciąganie do niej zaleŝy od stanu opcji Widok Siatka. Elementy formularza takie jak pola tekstowe, etykiety są nazywane formantami. Tryb projektowania pozwala zaznaczać, przesuwać zmieniać rozmiar i dokonywać innych działań na tych elementach.
Formularze 41 Rys. 5.6 Okno projektu formularza Zaznaczenie sygnalizowane jest pojawieniem się czarnych kwadratów w naroŝnikach i niekiedy na środku boków prostokątnej ramki elementu, zwanych uchwytami. W celu zmiany rozmiaru elementu, wystarczy najechać myszą na odpowiedni uchwyt i przeciągnąć go w nowe połoŝenie. Podobnie naleŝy postąpić w przypadku przesuwania detalu, naleŝy wykorzystać w tym przypadku jeden z uchwytów przesuwania. śeby usunąć element formularza, wystarczy wybrać go, a następnie nacisnąć klawisz DEL. przesuwanie dwóch elementów jednocześnie (zaznaczanie z klawiszem Shift) przesuwanie jednego detalu, jeŝeli wybranych jest kilka zmiana rozmiaru Rys. 5.7 Uchwyty elementów i postacie kursora myszy W trybie projektowania wyświetlane jest okienko narzędzi (Przybornik) pozwalające na dodawanie nowych elementów do formularza. Przyciski Przybornika: Zaznacz obiekty Etykieta Grupa opcji Przycisk opcji Pole kombi Przycisk polecenia Niezwiązana ramka obiektu Podział strony Podformularz/ Podraport Prostokąt Rys.5.8 Przybornik Kreatorzy formantów Pole tekstowe Przycisk przełącznika Przycisk wyboru Pole listy Obraz Związana ramka obiektu Formant Karta Linia Więcej formantów Standardowo wciśnięty przycisk Kreatorzy formantów, powoduje automatyczne uruchomienie stosownego asystenta przy tworzeniu detali w rodzaju grupy opcji, listy lub pola kombi oraz przycisku polecenia. Dodatkowe informacje na temat uŝywania powyŝszego kreatora pojawią się w punkcie następnym, Zaznacz obiekty pozwala wybierać elementy formularza, Etykieta pozwala dopisać tekst na formularzu, Access dodaje etykietę związaną z kaŝdym nowym polem
42 Wprowadzenie do projektowania baz danych Pole tekstowe pozwala umieścić dane pochodzące z tabeli lub kwerendy, moŝe zawierać równieŝ wyniki obliczeń przeprowadzonych na innych danych z rekordu, Przycisk opcji, Przycisk przełącznika i Przycisk wyboru pozwalają wyprowadzać dane typu Tak/Nie, jeśli są zgrupowane, słuŝą do wybierania jednej wartości z grupy, Przycisk Grupa opcji pozwala umieścić grupę przycisków słuŝących do wybierania jednej z kilku moŝliwości, Pole kombi pozwala wpisywać dane, a takŝe wybierać je z rozwijalnej listy, Pole listy, podobnie jak element powyŝej, pozwala na wybieranie jednej z wielu wartości, nie umoŝliwia wprowadzania nowych danych, Przycisk polecenia - tworzy przycisk, z którym moŝna związać makropolecenie lub polecenie napisane w Access Basic. Obraz -słuŝy do wyświetlenia statycznego obrazu w formularzu lub raporcie, Niezwiązana ramka obiektu - pozwala osadzić dowolny obiekt dostępny w Windows. Obiekt ten jest przechowywany w bazie danych, ale nie jest związany z Ŝadna tabelą, Związana ramka obiektu - pozwala wyświetlać zawartość pola Obiekt OLE, Podział strony - wstawia znak końca strony dzieląc formularz, Formant Karta - słuŝy do wstawienia zakładek, na których moŝna później umieszczać inne elementy sterujące, Podformularz/Podraport- pozwala umieścić wewnątrz formularza tzw. formularz podrzędny (podformularz) wyświetlający dane powiązane zaleŝnością z jednym z pól formularza głównego, Linia, Prostokąt - pozwalają rysować proste elementy graficzne na formularzu. Wciśnięcie przycisku w przyborniku i kliknięcie na blankiecie formularza powoduje dodanie wybranego elementu we wskazanym miejscu na formularzu. Tak dodany element nie jest związany z Ŝadnym polem tabeli. W celu powiązania elementu z polem tabeli, naleŝy poustawiać odpowiednie wartości w arkuszu właściwości wybranego elementu. Arkusz właściwości elementu moŝe być włączany i wyłączany poprzez wybieranie przycisku Właściwości paska narzędzi Projekt formularza (rys. 5.4). Postać tego arkusza zmienia się w zaleŝności od rodzaju wybranego elementu. KaŜdy element formularza posiada swój zbiór cech. Własne cechy posiadają równieŝ poszczególne sekcje jak i sam formularz. Rys. 5.9a Właściwości etykiety Rys 5.9b Właściwości pola tekstowego
Formularze 43 Cechy te zostały podzielone na cztery kategorie: Format, Dane, Zdarzenie, Inne. KaŜda z kategorii posiada odpowiednią zakładkę w oknie Właściwości, dodatkowo wszystkie cechy moŝna zobaczyć na zakładce Wszystkie. Atrybuty wyglądu elementu umieszczone są na zakładce Format. Na przykład etykieta wyświetlająca napis Nazwisko posiada cechę Tytuł na tej zakładce, atrybut ten odpowiada za tekst wyświetlany przez etykietę. Zmiana tego tekstu moŝe nastąpić przez modyfikację atrybutu Tytuł lub wprost na formularzu przez wskazanie myszą etykiety i wpisanie nowego tekstu. Zakładka Dane w przypadku etykiety jest pusta. Zakładka ta określa sposób przedstawiania danych przez formanty typu: pole tekstowe, grupa opcji, pole kombi itd. Na przykład pole tekstowe wyświetlające nazwiska wypoŝyczających posiada cechę Źródło formantu ustawioną na Nazwisko. Atrybut ten moŝe mieć wartość dowolnego pola tabeli lub kwerendy na podstawie której został utworzony formularz. PoniŜej przedstawiono metodę dodania nowego elementu do formularza. Elementem tym jest pole tekstowe, którego zadaniem jest wyświetlanie adresu wypoŝyczającego. Po pierwsze naleŝy wybrać przycisk Pole tekstowe w Przyborniku, a następnie wskazać, w którym miejscu na formularzu powinno znajdować się to pole. Następnie wcisnąć przycisk arkusza właściwości w pasku narzędzi Projekt formularza (rys. 5.4), Zmienić wartość w wierszu: Źródło formantu na Adres (rys. 5.9b). Na koniec etykiecie związanej z dodanym polem tekstowym naleŝy zmienić wartość w wierszu Tytuł na Adres (rys. 5.9a) Po wprowadzeniu zmian element nadaje się juŝ do wyświetlania wartości pola Adres tabeli WypoŜyczający Przedstawiona powyŝej metoda nie naleŝy do najwygodniejszych. Dodawanie takiego elementu najwygodniej jest przeprowadzić za pomocą listy pól (pasek narzędzi Projekt formularza (rys. 5.4)). NaleŜy wyświetlić okienko listy pól i z niego przeciągnąć nazwę pola w odpowiednie miejsce formularza. Access automatycznie stworzy etykietę będącą nazwą wybranego pola, związaną z tworzonym elementem. Do tworzenia detali w rodzaju grupy opcji, listy, pola kombi, podformularza czy przycisku polecenia udostępniono łatwiejszą metodę, jest nią interaktywna współpraca z kreatorem formantów. Wskazanie jednego z wymienionych detali w przyborniku, przy wciśniętym przycisku Kreatorzy formantów, uruchamia odpowiedniego asystenta (tworzenie pola kombi, przycisku polecenia oraz podformularza przy pomocy asystenta będzie omówione w punkcie następnym). Zaprojektowany formularz w widoku Widok Formularz został przedstawiony na poniŝszym rysunku.
44 Wprowadzenie do projektowania baz danych Rys. 5.10 Formularz Wszyscy wypoŝyczający Na czytelność formularza wpływają ułoŝenie i odpowiedni dobór elementów sterujących, wygląd tekstu, kolorystyka. Microsoft Access posiada moŝliwości zmiany wyglądu tekstu porównywalne do dowolnego edytora. Program pozwala równieŝ na wybór koloru tekstu, ramek, koloru tła, efektów trójwymiarowych itp. PowyŜsze narzędzia umieszczone są na pasku Formatowanie (rys. 5.5). 5.3 Asystent do tworzenia detali formularza Utworzony w poprzednim punkcie formularz przedstawia listę wszystkich wypoŝyczających. Formularz ten zostanie rozbudowany o przycisk polecenia: Szczegółowo otwierający okno z informacjami szczegółowymi o wybranym wypoŝyczającym. Dla potrzeb tego ćwiczenia naleŝy utworzyć formularz WypoŜyczający dla odpowiedniej tabeli w układzie kolumnowym. UŜywając asystenta do tworzenia detali formularza naleŝy przed wyborem odpowiedniego formantu upewnić się czy jest wciśnięty przycisk Kreatorzy formantów na Przyborniku (rys. 5.8). Dodanie przycisku Szczegółowo otwierającego formularz WypoŜyczający Kolejność czynności jakie trzeba wykonać, by stworzyć przycisk jest następująca: wybór kategorii, a następnie rodzaju akcji, która ma się wykonać po naciśnięciu przycisku. Przycisk Szczegółowo powinien otwierać formularz WypoŜyczający i wyświetlać dane tylko wybranego wypoŝyczającego, naleŝy więc wybrać opcję Otwórz formularz i znajdź określone dane do wyświetlenia, zamiast standardowo wybranej Otwórz formularz i pokaŝ wszystkie rekordy. W następnym kroku asystent zapyta o odpowiadające sobie pola w obu formularzach. W przypadku otwierania formularza w drugim trybie krok ten zostanie pominięty. wybór tekstu lub rysunku opisującego przycisk, przypisanie nazwy tworzonemu elementowi.
Formularze 45 Rys. 5.11 Kreator przycisków poleceń
46 Wprowadzenie do projektowania baz danych Access automatycznie uzupełnia właściwości tworzonego przycisku. Działanie przycisku jest moŝliwe dzięki wpisaniu w wierszu Przy kliknięciu zakładki Zdarzenia w oknie Właściwości procedury obsługi zdarzenia (Widok Projekt). Procedurę tą moŝna oglądnąć po wciśnięciu przycisku z trzema kropkami. Formularz WypoŜyczający przedstawia dane pojedynczego wypoŝyczającego. Dla kategorii wypoŝyczającego w punkcie 3.3 utworzono odnośnik, więc lista wartości tego pola jest przedstawiana na formularzu jako pole kombi. Gdyby jednak odnośnik nie został utworzony, na etapie projektowania formularza moŝna równieŝ zaŝądać wyświetlania wartości tego pola w postaci pola kombi. Dodanie pola kombi przedstawiajągo kategorię wypoŝyczającego Kolejność czynności jakie trzeba wykonać, by stworzyć pole kombi jest następująca: wprowadzenie źródła danych dla pola kombi Rys. 5.12 Kreator pól kombi
Formularze 47 wybór pól tabeli, które powinny być widoczne w projektowanym detalu, w tym przypadku jest to identyfikator kategorii IDK oraz jej nazwa Nazwa. Rys. 5.13 Kreator pól kombi cd.
48 Wprowadzenie do projektowania baz danych Identyfikator IDK powinien zostać wybrany jedynie w przypadku gdyby nie określono związków pomiędzy tabelami (punkt 3.4), ze względu na konieczność powiązania kategorii bieŝącego czytelnika formularza WypoŜyczający z odpowiadającą mu nazwą pobieraną z tabeli Kategoria. Identyfikator ten jako klucz tabeli jest domyślnie ukrywany, określenie pola formularza WypoŜyczający, które jest przedstawiane w projektowanym detalu (jest nim IDK wypoŝyczającego), wpisanie tekstu etykiety dołączonej do pola. Zaprojektowane formularze zostały przedstawione na poniŝszym rysunku. Rys.5.14 Formularze: Wszyscy wypoŝyczający oraz WypoŜyczający Formularz WypoŜyczający powinien zawierać listę aktualnie wypoŝyczonych ksiąŝek wybranego wypoŝyczającego. Formularz ten zostanie rozbudowany o podformularz zawierający wykaz wypoŝyczonych ksiąŝek. Przed utworzeniem takiego podformularza niezbędne jest utworzenie odpowiedniej kwerendy wyświetlającej wyłącznie ksiąŝki aktualnie wypoŝyczone. Projekt takiej kwerendy został przedstawiony na poniŝszym rysunku.
Formularze 49 Rys.5.15 Projekt kwerendy Lista ksiąŝek aktualnie wypoŝyczonych Dodanie podformularza z listą wypoŝyczonych ksiąŝek Kolejność czynności jakie trzeba wykonać, by zaprojektować podformularz jest następująca: wybór istniejącego formularza, lub zaprojektowanie nowego, który stanie się formularzem podrzędnym. W przypadku istniejącego formularza następny krok zostanie pominięty, wybór pól tabeli, które powinny być widoczne w projektowanym detalu, w tym przypadku wybrano IDKs, TytułKsiąŜki, DataWypoŜyczenia oraz identyfikator wypoŝyczającego IDWyp. Pola te zostały wybrane z kwerendy Lista ksiąŝek aktualnie wypoŝyczonych, zawierającej dane aktualnie wypoŝyczonych ksiąŝek. Identyfikator IDWyp powinien zostać wybrany ze względu konieczność powiązania danych bieŝącego czytelnika formularza WypoŜyczający z odpowiadającymi mu danymi wypoŝyczonych ksiąŝek (chyba, Ŝe określono powiązanie pomiędzy tymi tabelami patrz punkt 3.4), określenie powiązania pomiędzy formularzem głównym a podrzędnym (jest nim pole IDWyp występujące w obydwu formularzach).
50 Wprowadzenie do projektowania baz danych Rys.5.16 Kreator podformularzy
Formularze 51 Formularz WypoŜyczający po dodaniu podformularza zawierającego listę wypoŝyczonych ksiąŝek przedstawia następny rysunek. Rys. 5.17 Formularz WypoŜyczający To co zostało napisane w tym rozdziale o formularzach odnosi się w duŝej części takŝe do raportów. Raport słuŝy jedynie wydrukowi róŝnego rodzaju zestawień czy sprawozdań. Nie moŝna za jego pomocą przeglądać ani zmieniać stanu bazy danych. Formularz natomiast pozwala przeglądać, wprowadzać i modyfikować dane w bazie danych, moŝe być takŝe wydrukowany lub zamieniony w raport. Istnienie raportów jest spowodowane ich specjalnymi właściwościami zestawiania i sumowania danych, właściwości tych nie posiadają formularze. Informacje dotyczące tworzenia i edycji raportów i formularzy moŝna znaleźć w literaturze uzupełniającej [1], [5]. 5.4 Ćwiczenia do samodzielnego wykonania Ćwiczenie 5.1 Ćwiczenie 5.2 Ćwiczenie 5.3 Ćwiczenie 5.4 Ćwiczenie 5.5 Zaprojektuj formularz Wszystkie ksiąŝki w układzie tabelarycznym. Zaprojektuj formularz KsiąŜki w układzie kolumnowym. Dodaj przycisk polecenia Szczegółowo w formularzu Wszystkie ksiąŝki otwierający formularz KsiąŜki z danymi aktualnie wybranej ksiąŝki. Dodaj pole listy w formularzu KsiąŜki przedstawiające hasła związane z daną publikacją. Zaprojektuj formularz niezwiązany z Ŝadną tabelą i kwerendą, umoŝliwiający otwarcie formularzy: Wszystkie ksiąŝki oraz Wszyscy wypoŝyczający. Uwaga: Formularz ten będzie wyglądał ładniej jeŝeli powyłączane zostaną właściwości takie jak: Selektory rekordów, Paski przewijania, Przyciski nawigacyjne na zakładce Format okienka Właściwości tego formularza.