Aplikacja bazodanowa
Baza danych - przechowywanie dużej ilości danych z szybkim do nich dostępem (strona serwera).
Interfejs graficzny użytkownika do bazy danych (strona klienta).
Wprowadzanie danych.
Aktualizacja i usuwanie danych.
Wyszukiwanie danych.
Prezentacja znalezionych danych m.in. w postaci formularzy, raportów i wykresów.
Przetwarzanie danych.
MS Access jest programem do tworzenia prostych baz danych i aplikacji bazodanowych:
Programowanie oparte na języku VBA - Visual Basic for Applications oraz o model aplikacji sterowanej zdarzeniami.
Możliwość określenia interfejsu WWW (działa na przeglądarce Internet Explorer).
Połączenie z bazami danych opartymi na SQL.
Integracja z pakietem MS Office.
Rodzaje obiektów w aplikacji MS Access:
Tabela (również obiekt bazy danych)
Kwerenda (również obiekt bazy danych)
Formularz
Raport
Strona
Makro
Moduł (procedur)
Grupy – logiczny podział zbioru obiektów. Nową grupę tworzy się poleceniem "New Group" z menu podręcznego wywoływanego pod przyciskiem Groups.
Formularz - podstawowy element interfejsu użytkownika w aplikacji bazodanowej po stronie klienta. Aplikacja obejmuje zbiór połączonych ze sobą formularzy.
Formularz służy m.in. do:
wprowadzania danych do bazy danych,
prezentowania danych użytkownikowi,
aktualizacji danych w bazie danych,
usuwania danych z bazy danych,
drukowania dokumentów z danymi,
inicjowania akcji biznesowych w systemie informacyjnym.
Formularz reprezentuje punkt widzenia (perspektywę) użytkownika.
Formularz może obejmować podobiekty takie jak wykresy, podformularze.
Każda część całego formularza (jak formularz główny, podformularze) jest oparta na tabeli lub kwerendzie nazwanej lub zdefiniowanej bezpośrednio jako źródło rekordów dla formularza.
Definicja formularza jest tworzona i wyświetlana w widoku projekt.
Zawartość formularza jest wyświetlana w widoku formularz - w trzech możliwych postaciach (Default View):
Formularz pojedynczy (Single Form) - na ekranie zostaje wyświetlony jeden rekord z domyślnym ustawieniem pól w jednej kolumnie.
Arkusz danych (Datasheet) - postać prostej tabelki jak dla arkusza danych tabeli lub kwerendy.
Formularz ciągły (Continuous Forms) w tym kolumnowy - ciąg rekordów w ustawieniu pól w jednej kolumnie jak na pojedynczym formularzu.
Formularz tabelaryczny - jeden rekord w jednym wierszu.
Widok projekt formularza - rozmieszczamy wszystkie elementy dialogowe, które chcemy, aby pojawiały się na formularzu np. pola tekstowe (powiązane z polami w bazie danych) oraz etykiety tekstowe (stałe teksty).
Formularze mogą być zagnieżdżone tzn. elementem dialogowym formularza może być inny formularz w roli podformularza. Formularz z podformularzem reprezentuje na ogół dwie tabele połączone związkiem jeden do wiele.
Widok projekt formularza z podformularzem:
Podformularz jest sam w sobie formularzem.
Podział na strony
W przypadku, gdy ilość informacji związana z jednym rekordem nie mieści się na jednym ekranie, istnieje możliwość podziału zawartości formularza na części, nazywane stronami. Przejścia między stronami są wykonywane za pomocą klawiszy PageUp i PageDown.
Należy ustawić właściwości formularza: Cycle na Current Page oraz ScrollBars na Neither albo Horizontal Only.
Np. podział informacji o osobie na dane podstawowe i życiorys (pole memo).
Panel sterowania aplikacji
Specjalny rodzaj formularza - na którym użytkownik wybiera operację lub grupę operacji na danych. Wybór następuje poprzez naciśnięcie odpowiedniego przycisku. Tego typu formularz nie jest połączony z żadną tabelą ani kwerendą i składa się wyłącznie z przycisków, tekstów i elementów graficznych.
Kreator formularzy
Tworzenie formularza przez odpowiadanie na pytania. W przypadku tabel połączonych związkiem jeden do wiele - na przykładzie tabel Osoba i Departament:
Formularz główny – Departament
Podformularz - Osoba
Wygenerowany rezultat:
Jest możliwość wyświetlania departamentów i osób w nich pracujących jak również jest możliwość wstawiania nowych departamentów i wstawiania nowych pracowników. Można aktualizować i usuwać rekordy pod warunkiem zachowania ich spójności referencyjnej.
Pojedynczy formularz o osobie z dodanymi informacjami o departamencie, gdzie dana osoba pracuje (formularz oparty na kwerendzie - złączeniu tabel Osoba i Departament).
Wygenerowany rezultat:
Jest możliwość wyświetlania pracowników razem z informacją o ich departamencie jak również jest możliwość wstawiania nowych pracowników – z przypisaniem ich do istniejącego departamentu. Można aktualizować dane o pracownikach i departamentach i usuwać rekordy pracowników pod warunkiem zachowania spójności referencyjnej.
Podstawową właściwością formularza jest Record Source (Źródło rekordów) określające skąd pochodzą dane wyświetlane w formularzu. Może nim być tabela lub kwerenda.
Switchboard Manager
Do tworzenia formularzowych menu aplikacji służy specjalny program usługowy o nazwie Switchboard Manager dostępny z menu Tools -> Database Utilities -> Switchboard Manager.
Rezultat:
Sekcje formularza
Formularz składa się z następujących sekcji:
nagłówek formularza służy zwykle do umieszczenia informacji i przycisków dotyczących całego formularza,
sekcja szczegółów służy zwykle do wyświetlania danych szczegółowych,
stopka formularza służy zwykle do wyświetlania danych podsumowujących dane szczegółowe.
Jest też możliwość podziału całego formularza na strony i w związku z tym można określić nagłówek i stopkę strony. W szczególności podział na strony jest użyteczny przy drukowaniu zawartości formularza.
Dozwolone operacje na danych
Zestaw operacji na danych dostępnych poprzez formularz ustawia się za pomocą następujących właściwości przyjmujących wartości TAK, NIE:
Edycja dozwolona (Allow edits)
Usuwanie dozwolone (Allow deletions)
Dodawanie dozwolone (Allow additions)
Tylko wprowadzanie danych (Data entry)
Przy ich użyciu można w szczególności określić, że formularz będzie używany:
tylko do wprowadzania nowych rekordów (1-2 NIE, 3-4 TAK);
tylko do odczytu danych z bazy danych (1-4 NIE);
tylko do modyfikowania danych bez możliwości wprowadzania nowych rekordów (1-2 TAK, 3-4 NIE);
zarówno do wprowadzania nowych rekordów jak i do modyfikacji istniejących, w tym usuwania (jest to domyślne ustawienie: 1-3 TAK, 4 NIE).
Elementy dialogowe formularza
Na formularzu pojawiają się następujące rodzaje elementów dialogowych (formantów, kontrolek):
związane - źródłem danych jest pole tabeli lub pole kwerendy np. pole tekstowe. Związane pola tekstowe najłatwiej tworzyć na formularzu korzystając z listy pól, którą można wyświetlić wybierając „View ® Field List" („Widok ® Lista pól”) lub narzędzie Field List („Lista pól”). Odpowiednie pole wybiera się z listy i przeciąga na formularz.
niezwiązane - np. pole z wartością, etykieta, linia, logo firmy,
wyliczane - źródłem danych jest wyrażenie np. = [Cena grama]*0,75
W Accessie nazwy obiektów można ujmować w nawiasy kwadratowe. Jest to konieczne, gdy nazwa zawiera spacje.
Wyrażenia pozwalają przekształcać dane wydobywane z bazy danych do postaci wygodnej dla użytkownika.
Przy definiowaniu pola na formularzu są one poprzedzane znakiem równości.
W przypadku funkcji argumenty są rozdzielane:
przecinkami - w instrukcjach SQL i procedurach,
średnikami - w widoku projekt.
Do budowania wyrażeń np. dla właściwości Control Source lub Default Value, wygodnie jest zastosować konstruktor wyrażeń uruchamiany przez naciśnięcie symbolu trzy kropki bądź powiększone okienko do edytowania wyrażeń uruchamiane przez naciśnięcie sekwencji klawiszy SHIFT+F2.
Nazwy pól są obejmowane nawiasami kwadratowymi (w Accessie nazwy mogą zawierać w sobie spacje).
Przykłady (do rozdzielenia argumentów funkcji w widoku projekt - zamiast przecinka potrzebny średnik)
[Cena jednostkowa]*0,75
[Suma cz]+[Fracht]
[Miasto]&" " &[Kod pocztowy]
DateSerial(1997,3,2)
Date() - bieżąca data
Now() - bieżąca data i godzina
Sum([Suma cz]) - w stopce komponentu formularza lub raportu; Count([Nazwisko]), Max, Min, Avg
"Strona "& [Page]&"z " &[Pages] - w nagłówku lub stopce strony
IIf(IsNull([Zarobki]),0,[Zarobki]) - Null interpretuj jako 0
Left([Region],1),Right([Region],1) - pierwsza, ostatnia litera napisu Region
Middle([Nr telefonu],2,3) - trzy znaki poczynając od 2-go znaku
DatePart(format, data) - część daty np. format - "yyyy" - rok w zapisie czterocyfrowym: DatePart("yyyy",[DataZatrudnienia])
DateAdd("d", -10, [Obiecane]) - Obiecane-10 - data 10 dni wcześniejsza od Obiecane
DateDiff("d", [Zamówione],
[Wysłane]) Wysłane-Zamówione –
liczba dni między Zamówione
i Wysłane.
[Autor] Like "Lech*"
znaki uniwersalne: * - cokolwiek, ? - jeden znak
[Cena] Between 1000 And 2000
Odwołania do elementów dialogowych
W wyrażeniach mogą się znajdować odwołania do elementów dialogowych występujących na formularzach i raportach. Postać tych odwołań jest następująca:
[Forms]![nazwa_formularza]![nazwa_elementu_dialogowego]
lub
[Reports]![nazwa_raportu]![nazwa_elementu_dialogowego]
Odpowiedni formularz bądź raport musi być otwarty.
Przykład
Wartością wyrażenia
[Forms]![Dane o osobie]![Nazwisko]
jest tekst zapisany w polu „Nazwisko” na otwartym formularzu „Dane o osobie”. Wyrażenie to może też służyć, do określenia samego pola, umożliwiając wstawienie do niego nowej wartości.
Aby odwołać się do właściwości formularza (raportu) lub właściwości elementu dialogowego, używana jest kropka:
[Forms]![nazwa_formularza].[właściwość]
[Forms]![nazwa_formularza]![elem].[właściwość]
Przykład
[Forms]![Dane o osobie].[Record Source]
lub
[Forms]![Dane o osobie]![w].[Default Value]
Zestaw narzędzi (toolbox)
Elementy dialogowe są wstawiane na formularz za pomocą zestawu narzędzi - przybornika (można go umieścić na ekranie wybierając z menu „View ® Toolbox”).
|
|
Kreator |
Do tworzenia elementów dialogowych jest dostępny kreator włączany z przybornika.
Dwa rodzaje list:
pole
listy wyboru - możliwe do
wyboru wartości są wyświetlane na pionowej liście,
pole edycji z listą wyboru (pole kombi) - albo wpisuje się wartość do pola albo wybiera się z listy rozwijanej.
pole
wyboru, przycisk opcji, przycisk przełącznika
- wyświetlanie wartości „Tak/Nie” (z polem są wiązane dwie wartości:
Tak = -1, Nie = 0);
grupa opcji składa się z ramki grupy oraz zawartego w niej zestawu pól wyboru, przycisków opcji lub przycisków przełączników (wiązana z polem liczbowym - kolejne wartości 1,2,3 reprezentują poszczególne opcje zdefiniowane za pomocą etykiet);
ramka obiektów OLE - niezwiązana np. do wyświetlania stałego obrazka lub związana z polem tabeli przechowującym obiekty OLE - osadzone lub połączone z bazą danych; obiektem OLE może być np. rysunek, dokument Worda, arkusz Excela itp.; wstawienie nowego obiektu OLE - z menu Insert -> Object;
wykres (tworzony za pomocą kreatora);
podformularz (trzeba wcześniej osobno określić formularz źródłowy dla poformularza i ewentualnie zsynchronizować go za pomocą wspólnych pól z głównym formularzem);
przycisk polecenia - wiązany z makrem lub procedurą.
Pole listowe
Na formularzu specjalne znaczenie mają pola, z którymi są związane listy, z których użytkownik wybiera wartość.
Może to być:
stała lista wartości jak lista nazw dni tygodnia albo lista nazw miesięcy w roku
lista dopuszczalnych wartości klucza obcego - wartości tego klucza są pobierane z kolumny klucza głównego z odpowiedniej powiązanej tabeli.
Przykład - użycie pola listowego do wyświetlenia dopuszczalnych wartości dla kluczy obcych.
Lista o etykiecie Klient zawiera nazwiska i imiona klientów firmy.
Lista o etykiecie Odpowiedzialny zawiera nazwiska i imiona pracowników firmy.
Należy odróżnić dwie właściwości pola listowego:
Row Source – skąd wartość pojawiająca się na liście rozwijanej ma być pobierana;
Control
Source – gdzie wartość ma być zapisana. Gdy określone, wtedy pole jest
związane; gdy nieokreślone – pole jest niezwiązane.
Kreator pola listowego - filtrowanie formularza po wybranej wartości z listy
Wybieramy trzecią opcję kreatora:
Jako Row Source wybieramy nazwisko pracownika (LastName). W
rezultacie tworzy się niezwiązane pole kombo, z którym jest związana lista
rozwijana zawierająca nazwiska pracowników. Po wyborze nazwiska na liście
rozwijanej rekord pracownika o wybranym nazwisku zostaje wyświetlony w sekcji
szczegółów.
Wywoływany przy przenoszeniu kontrolki przycisku z przybornika w miejsce na formularzu. Następnie wybiera się akcję jaka ma być wykonana gdy użytkownik naciśnie na dany przycisk np. zamknięcie formularza.
Rezultat:
Wyszukiwanie danych
Za pomocą wbudowanych narzędzi i/lub opcji menu Edycja i Rekordy można ograniczać wyświetlany zbiór rekordów a także można wyszukiwać potrzebne dane spośród wszystkich danych wyświetlonych na ekranie (dla tabel, kwerend jak i formularzy). Na pasku narzędzi:
1 1 2 3 5 6
Poniżej są kolejno opisane ich funkcje.
Sortuj rosnąco, Sortuj malejąco (według bieżącego pola).
Filtruj według wyboru (według bieżącego pola).
Filtruj według formularza - zostaje wyświetlony pojedynczy pusty rekord do wpisania warunku wyszukiwania.
Zaawansowany filtr/Sortowanie - opcja dostępna tylko z menu Rekordy - wyświetla siatkę do określenia filtru taką samą jak siatka kwerendy.
Zastosuj filtr/Sortowanie - ponowienie (odświeżenie) działania ustawionego wcześniej filtru lub porządku sortowania.
Znajdź - wyszukiwanie rekordów zawierających określony napis (względem konkretnego pola, względem wszystkich pól; biorąc pod uwagę całe pola, części początkowe pól, dowolne części pól; do przodu, do tyłu; biorąc pod uwagę wielkość liter lub formatowanie bądź nie).