ĆWICZENIE 4. 1. Uruchomić Oracle Forms Builder. 2. Utworzyć nowy formularz (File->New->Form) 3. Nawiązać połączenie z bazą danych (file-connect).



Podobne dokumenty
WHEN_NEW_FORM_INSTANCE

Laboratorium Oracle Forms

3. Budowa prostych raportów opartych o bazę danych

5. Integracja stron aplikacji, tworzenie zintegrowanych formularzy i raportów

Oracle Application Express

8. Listy wartości, dodatkowe informacje dotyczące elementów i przycisków

Programowanie MSQL. show databases; - pokazanie jakie bazy danych są dostępne na koncie

Oracle Application Express

Funkcje w PL/SQL Funkcja to nazwany blok języka PL/SQL. Jest przechowywana w bazie i musi zwracać wynik. Z reguły, funkcji utworzonych w PL/SQL-u

Aplikacje WWW - laboratorium

6. Formularze tabelaryczne, obiekty nawigacji - rozgałęzienia

Kostki OLAP i język MDX

Plan bazy: Kod zakładający bazę danych: DROP TABLE noclegi CASCADE; CREATE TABLE noclegi( id_noclegu SERIAL NOT NULL,

7. Formularze master-detail

Ćwiczenia laboratoryjne nr 11 Bazy danych i SQL.

Bazy danych raporty. 1. Przekopiuj na dysk F:\ bazę M5BIB.mdb z dysku wskazanego przez prowadzącego.

Oracle Developer Suite. Budowa aplikacji użytkownika końcowego

KOLEKCJE - to typy masowe,zawierające pewną liczbę jednorodnych elementów

Laboratorium 8 ( Android -pierwsza aplikacja)

Wyzwalacz - procedura wyzwalana, składowana fizycznie w bazie, uruchamiana automatycznie po nastąpieniu określonego w definicji zdarzenia

Oracle PL/SQL. Paweł Rajba.

Ćwiczenia 2 IBM DB2 Data Studio

PODSTAWY BAZ DANYCH 13. PL/SQL

Podstawowe zapytania SELECT (na jednej tabeli)

Instytut Mechaniki i Inżynierii Obliczeniowej Wydział Mechaniczny Technologiczny Politechnika Śląska

Wstęp - Prosta aplikacja internetowa w technologii Java EE 5. Programowanie komponentowe 1

PL/SQL. Zaawansowane tematy PL/SQL

Plan. Formularz i jego typy. Tworzenie formularza. Co to jest formularz? Typy formularzy Tworzenie prostego formularza Budowa prostego formularza

Autor: Joanna Karwowska

Język PL/SQL. Rozdział 5. Pakiety podprogramów. Dynamiczny SQL

UNIWERSYTET RZESZOWSKI KATEDRA INFORMATYKI

Laboratorium 3. Odkrywanie reguł asocjacyjnych.

Wprowadzenie do Doctrine ORM

15. Funkcje i procedury składowane PL/SQL

Laboratorium 050. Crystal Reports. Ćwiczenie 1. Otwarte pozycje

Budowa aplikacji ASP.NET współpracującej z bazą dany do obsługi przesyłania wiadomości

FORMULARZE Formularz ma formę ankiety, którą można wypełnić na stronie. Taki formularz może być np. przesłany pocztą elektroniczną .

Uruchomienie raportu w środowisku Oracle applications

MsAccess - ćwiczenie nr 3 (zao) Budowa formularzy

Inżynieria Programowania Laboratorium 3 Projektowanie i implementacja bazy danych. Paweł Paduch paduch@tu.kielce.pl

Bloki anonimowe w PL/SQL

Laboratorium nr 4. Temat: SQL część II. Polecenia DML

Język SQL, zajęcia nr 1

strukturalny język zapytań używany do tworzenia i modyfikowania baz danych oraz do umieszczania i pobierania danych z baz danych

Ćwiczenia 9 - Swing - część 1

MS Access 2010 instrukcja część Wstaw do tworzonego formularza wszystkie pola z tabeli wydzial:

Wykład 05 Bazy danych

wstawianie przycisków umożliwiających wybieranie wartości poprzez klikanie strzałek

LABORATORIUM Z INŻYNIERII ZARZĄDZANIA- MRP II

Obiektowe bazy danych Ćwiczenia laboratoryjne (?)

Platforma.NET laboratorium 4 Aktualizacja: 15/11/2013. Visual Basic.NET dostęp do bazy danych. Baza Microsoft SQL Server Compact

Zajęcia 11 wykorzystanie MySQL w PHP

TEMAT ĆWICZENIA Zapoznanie z technologią LINQ

WinSkład / WinUcz 15.00

Przykład 3 Zdefiniuj w bazie danych hurtownia_nazwisko przykładową funkcję użytkownika fn_rok;

Programowanie w SQL procedury i funkcje. UWAGA: Proszę nie zapominać o prefiksowaniu nazw obiektów ciągiem [OLIMP\{nr indeksu}] Funkcje użytkownika

Pakiety podprogramów Dynamiczny SQL

1: 2: 3: 4: 5: 6: 7: 8: 9: 10:

BAZY DANYCH Panel sterujący

Hurtownia Świętego Mikołaja projekt bazy danych

LABORATORIUM 8,9: BAZA DANYCH MS-ACCESS

Wyzwalacze. do automatycznego generowania wartości kluczy głównych. Składnia instrukcji tworzacej wyzwalacz

Formularze i raporty w MS Access

Tworzenie raportów. Ćwiczenie 1. Utwórz Autoraport przedstawiający tabelę Studenci

Instrukcja podwaja zarobki osób, których imiona zaczynają się P i dalsze litery alfabetu zakładamy, że takich osbób jest kilkanaście.

Ref. 7 - Język SQL - polecenia DDL i DML

Bazy danych wykład dwunasty PL/SQL, c.d. Konrad Zdanowski ( Uniwersytet Kardynała Stefana Bazy danych Wyszyńskiego, wykładwarszawa)

Dodanie nowej formy do projektu polega na:

Możliwości - typy raportów. Ćwiczenie nr 1. (cd.) Prosty raport z kreatora. Ćwiczenie nr 1. Prosty raport z kreatora.

5.3. Tabele. Tworzenie tabeli. Tworzenie tabeli z widoku projektu. Rozdział III Tworzenie i modyfikacja tabel

Oracle Application Express

Symfonia Produkcja. Kreator raportów. Wersja 2013

Microsoft Access zajęcia 3 4. Tworzenie i wykorzystanie kwerend, formularzy i raportów

Baza danych. Program: Access 2007

Microsoft.NET: LINQ to SQL, ASP.NET AJAX

Oracle Application Express

Oracle PL/SQL. Paweł Rajba.

BAZA_1 Temat: Tworzenie i modyfikowanie formularzy.

3. Budowa aplikacji opartej na bazie danych. Definiowanie raportów opartych na bazie danych.

4. Budowa prostych formularzy, stany sesji, tworzenie przycisków

Kolumna Zeszyt Komórka Wiersz Tabela arkusza Zakładki arkuszy

Zadanie Wstaw wykres i dokonaj jego edycji dla poniższych danych. 8a 3,54 8b 5,25 8c 4,21 8d 4,85

Informatyzacja Przedsiębiorstw

Instrukcja użytkownika

EXCEL TABELE PRZESTAWNE

Krzysztof Kluza proste ćwiczenia z baz danych

Aplikacje internetowe i rozproszone - laboratorium

Podstawy JavaScript ćwiczenia

etrader Pekao Podręcznik użytkownika Strumieniowanie Excel

Plan wykładu BAZY DANYCH II WYKŁAD 3. Zasięg zmiennych. Zasięg zmiennych

Programowanie Obiektowe GUI

ZAAWANSOWANE BAZY DANYCH I HURTOWNIE DANYCH MySQL, PHP

PROGRAM: WYSZUKANIE LICZBY MAKSYMALNEJ

Access - Aplikacja. Tworzenie bazy danych w postaci aplikacji

Plan. Raport. Tworzenie raportu z kreatora (1/3)

Bazy danych kwerendy (moduł 5) 1. Przekopiuj na dysk F:\ bazę M5KW.mdb z dysku wskazanego przez prowadzącego

Procedury wyzwalane. (c) Instytut Informatyki Politechniki Poznańskiej 1

Bazy danych TERMINOLOGIA

Transkrypt:

ĆWICZENIE 4 1. Uruchomić Oracle Forms Builder. 2. Utworzyć nowy formularz (File->New->Form) 3. Nawiązać połączenie z bazą danych (file-connect). 4. Utworzyć blok danych (Data Block) oparty na tabeli SAMOCHODY: 4.1.Wybrać składową Data Blocks formularza 4.2.Nacisnąć prawy przycisk myszy 4.3.Wybrać Data Block Wizard 4.4.Wybrać Table or View 4.5.Nacisnąć Browse, aby wybrać nazwę tabeli lub perspektywy składowanej w bazie (wszystkie kolumny z tabeli SAMOCHODY) 4.6.Wpisać nazwę bloku danych (domyślnie SAMOCHODY) 4.7.Zaznaczyć Just create a data block, w celu utworzenia tylko bloku danych 5. Dodaj do bloku SAMOCHODY niebazodanowe pole o nazwie MARKA: wejdź do Object Navigator w bloku danych SAMOCHODY zaznacz Items kliknij na zielony krzyżyk (Create), który utworzy nowe pole w bloku danych ( ITEM6 ) i zmień jego nazwę na MARKA wejdź do Property Palette nowego pola i zmień jego charakter na niebazodanowy ( własność Database Item = No), typ na List Item (własność Item Type = List Item) oraz ustaw styl listy jako Combo Box (List Style = Combo Box) Wpisz elementy dostępne na liście Elements in List -> More (własność List Elements: Toyota, Opel,... itd.) Ustaw wartość początkową pola MARKA na TOY

6. Na poziomie formularza dodaj wyzwalacz ( z Object Navigator) WHEN-NEW-FORM- INSTANCE, który zapewni dynamiczne wypełnienie listy Marka własnościami dostępnych marek samochodów ( z tabeli MARKI), zmaksymalizuje okno MDI i okno formularza oraz automatycznie wczyta dane. Wykorzystaj kod: -- Wypełnij pole marki declare rec_id RecordGroup; temp number; begin if not Id_Null(rec_id) then -- Grupa istnieje - trzeba ją usunąć delete_group(rec_id); end if; rec_id:=create_group_from_query('rg_marki', 'select nazwa, kod from marki order by nazwa'); temp := Populate_group(rec_id); populate_list('samochody.marka', rec_id); end; -- Zmaksymalizuj okno MDI set_window_property(forms_mdi_window, WINDOW_STATE,MAXIMIZE); -- Zmaksymalizuj okno set_window_property('window_samochody', WINDOW_STATE,MAXIMIZE); -- Wykonanie zapytania po wywołaniu formularza go_block('samochody'); execute_query; 7. Dodaj do bloku danych SAMOCHODY pole tekstowe o nazwie MODEL: wejdź do Object Navigator w bloku danych SAMOCHODY zaznacz Items kliknij na zielony krzyżyk (Create), który utworzy nowe pole w bloku danych (ITEM7 ) i zmień jego nazwę na MODEL wejdź do Property Palette nowego pola i zmień jego typ na pole tekstowe (własność Item Type = Text Item) zapewnij, aby pole to było wymagane ( własność Reguired = Yes) i umożliwiało przechowywanie napisów 30 znakowych (własność Data Type = Char oraz własność Maximum Length = 30) 8. Dodaj do bloku danych SAMOCHODY przycisk o nazwie BTN_MODEL i ustaw dla niego własność Mouse Navigate na No: wejdź do Object Navigator w bloku danych SAMOCHODY zaznacz Items kliknij na zielony krzyżyk (Create), który utworzy nowe pole w bloku danych (ITEM8) i zmień jego nazwę na BTN_MODEL wejdź do Property Palette nowego pola i zmień jego typ na przycisk (własność Item Type = Push Button) oraz ustaw własność Mouse Navigate = No

9. Dodaj listę wartości (LOV) o nazwie LOV_MODELE. Do jej utworzenia wykorzystaj kreator list wartości (LOV Wizard). uruchom LOV Wizard utwórz nową listę wybierając New Record Group based on a query do budowy posłuż się zapytaniem (wpisz SQL Query Statement): select nazwa, id from modele where marka_kod=:samochody.marka order by nazwa następnie dodaj do LOV obydwie kolumny z grupy rekordów (NAZWA, ID) ustaw szerokość kolumny ID na 0 (Width = 0) i wartość zwracaną jako SAMOCHODY.MODEL_ID (Return value = SAMOCHODY.MODEL_ID); dla kolumny NAZWA ustaw element zwracany na SAMOCHODY.MODEL (Return value = SAMOCHODY.MODEL) następnie ustaw tytuł okna listy wartości LOV na Modele (Title = Modele) następnie powiąż tworzoną listę wartości z polem SAMOCHODY.MODEL: ustaw dla pola SAMOCHODY.MODEL własność Validaate from List = No 10. Dla przycisku BTN_MODEL dodaj kod zapewniający wyświetlenie listy wartości skorzystania z pola SAMOCHODY.MODEL: -- przejdź do elementu model i wywołaj skojarzoną -- z nim listę wartości go_item('samochody.model'); do_key('list_values');

11. Dodaj do bloku SAMOCHODY pole tekstowe o nazwie NADWOZIE: wejdź do Object Navigator w bloku danych SAMOCHODY zaznacz Items kliknij na zielony krzyżyk (Create), który utworzy nowe pole w bloku danych (ITEM9) i zmień jego nazwę na NADWOZIE wejdź do Property Palette nowego pola i zmień jego typ na pole tekstowe (własność Item Type = Text Item) zapewnij, aby pole to było wymagane ( własność Reguired = Yes) i umożliwiało przechowywanie napisów 10 znakowych (własność Data Type = Char oraz własność Maximum Length = 10) 12. Dodaj do bloku SAMOCHODY przycisk o nazwie BTN_TYP i ustaw dla niego własność Mouse Navigate na No wejdź do Object Navigator w bloku danych SAMOCHODY zaznacz Items kliknij na zielony krzyżyk (Create), który utworzy nowe pole w bloku danych (ITEM10) i zmień jego nazwę na BTN_TYP wejdź do Property Palette nowego pola i zmień jego typ na przycisk (własność Item Type = Push Button) oraz ustaw własność Mouse Navigate = No 13. Dodaj do bloku SAMOCHODY pole wyświetlania o nazwie DRZWI: wejdź do Object Navigator w bloku danych SAMOCHODY zaznacz Items kliknij na zielony krzyżyk (Create), który utworzy nowe pole w bloku danych (ITEM11) i zmień jego nazwę na DRZWI wejdź do Property Palette nowego pola i zmień jego typ na pole wyświetlania (własność Item Type = Display Item) zapewnij, aby umożliwiało ono przechowywanie liczb, zmień własność Data Type = Number 14. Uporządkuj elementy w Object Navigator według kolejności przedstawionej poniżej:

15. Utworzyć kanwę 15.1.Wybrać składową Canvases formularza 15.2.Nacisnąć prawy przycisk myszy 15.3.Wybrać Layout Wizard 15.4.W polu Canvas wybrać New Canvas 15.5.W polu Type wybrać Tab (kanwa karty, zakładkowa) 15.6.Wybrać blok danych, który ma zostać umieszczony na kanwie (blok danych SAMOCHODY) 15.7.Wybrać elementy danego bloku danych, które mają zostać umieszczone na kanwie (atrybuty ROK, KOLOR, OPIS ) oraz określić ich typ (Text Item elementy tekstowe) 15.8.Wprowadzić nazwy dla wybranych wyżej elementów (ROK- Rok, KOLOR Kolor, OPIS - Opis), ich szerokość i wysokość 15.9.Wybrać Tabular jako styl rozkładu 15.10.Wprowadzić tytuł okna ( Dane samochodów rok, kolor, opis), ilość wyświetlanych wierszy (15), odległość między wierszami 15.11.Zaznaczyć Display Scrollbar, jeśli ma pojawić się suwak do przewijania 15.12.Zmienić własności ramek wyświetlających dane ROK, KOLOR i OPIS ( z Layout Editor) Wejdź do Property Palette ramki Rok i zmień wartość Hint- dodaj podpowiedź ( Rok produkcji ), wartość Display Hint Automatically- yes, wartość Tooltip - Rok produkcji pojazdu Podobnie dla ramki Kolor i Opis 15.13.Z Object Navigator przejdź do Layout Editor dla nowo stworzonej kanwy, zmień dla pola Opis wartości Zaznaczając ramkę Opis wejdź do jej Property Palette i ustaw wyświetlanie pojedyncze (własność Number of Items Displayed = 1 ) oraz wyświetlanie pola wielowierszowe (własość Multi-Line = Yes) 15.14.Z Object Navigator przejdź do Layout Editor dla nowo stworzonej kanwy, zmień dla pola Kolor wartości Zaznaczając ramkę Kolor wejdź do jej Property Palette i zmień typ elementu (własność Item Type nalistę (wartość List Item) i ustaw jej styl jako poplist ( własność List Style = Poplist) Wpisz elementy dostępne na liście Elements in List -> More (własność List Elements: Biały, Czerwony, Srebrny, Zielony, Niebieski) Wstaw wartośc początkową (wartość Initial Value) pola KOLOR na kolor Biały. 15.15.Z Object Navigator przejdź do Layout Editor dla nowo stworzonej kanwy, zmień dla pola Rok wartości ustaw najmniejszą dozwoloną wartośc na rok 1950 (własność Lowest Allowed Value = 1950), zaś największą dozwoloną wartość na 2007 (własność Highest Allowed Value = 2007) 16. Zmień nazwę okna ( z Object Navigator) na WINDOW_SAMOCHODY i ustaw tytuł okna (własność Title) na Samochody.

17. Zapewnij wygląd formularza zbliżony do zamieszczonego poniżej: 18. Dodaj listę wartości (LOV) o nazwie LOV_TYP. Do jej utworzenia wykorzystaj kreator list wartości (LOV Wizard). uruchom LOV Wizard utwórz nową listę wybierając New Record Group based on a query do budowy posłuż się zapytaniem (wpisz SQL Query Statement): select nazwa, kod, ilosc_drzwi from typy_nadwozi order by nazwa ustaw wartość zwracaną dla kolumny NAZWA jako SAMOCHODY.NADWOZIE (Return value = SAMOCHODY.NADWOZIE); dla kolumny KOD ustaw element zwracany na SAMOCHODY.TYP (Return value = SAMOCHODY.TYP); dla kolumny ILOSC_DRZWI jako SAMOCHODY.DRZWI (Return value = SAMOCHODY.DRZWI) zmień stosownie szerokość wyświetlania kolumn (np. dla KOD = 0) następnie ustaw tytuł okna listy wartości LOV na Typy nadwozi (Title = Typy Nadwozi) powiąż listę wartości z polem SAMOCHODY.NADWOZIE ustaw dla pola SAMOCHODY.NADWOZIE własność Validate from List na No 19. Dla przycisku BTN_TYP dodaj kod zapewniający wyświetlenie listy wartości skojarzonej z polem SAMOCHODY.NADWOZIE: -- przejdź do elementu nadwozie i wywołaj -- skojarzoną z nim listę wartości go_item('samochody.nadwozie'); do_key('list_values');

20. Dla bloku SAMOCHODY ( z Object Navigator) zdefiniuj wyzwalacz POST-QUERY obstawiający pole MARKI, MODEL, NADWOZIE, DRZWI: -- pobierz nazwę modelu i marki select mk.kod, md.nazwa into :samochody.marka, :samochody.model from marki mk, modele md where mk.kod=md.marka_kod and md.id=:samochody.model_id; -- pobierz typ nadwozia i ilość drzwi select nazwa, ilosc_drzwi into :samochody.nadwozie, :samochody.drzwi from typy_nadwozi where kod=:samochody.typ; 21. Zapewnij, aby zmiana marki samochodu powodowała wyświetlenie listy wartości z modelami aktualnie wybranej marki. Zdefiniuj na poziomie elementu SAMOCHODY.MARKI wyzwalacz WHEN-LIST-CHANGED: -- po zmianie marki pokaż lov z wyborem -- modeli danej marki GO_ITEM('SAMOCHODY.MODEL'); DO_KEY('LIST_VALUES'); 22. Zdefiniuj parametr o nazwie P_MODEL_ID typu Number(30) 23. Dla bloku SAMOCHODY ustaw własność Where Clause na MODEL_ID=NVL(:PARAMETER.P_MODEL_ID, MODEL_ID) 24. Zdefiniuj atrybut wizualny o nazwie AKTUALNY_RECORD. Ustaw dla niego kolor tła na cyan. Zapewnij aby bieżący rekord w bloku SAMOCHODY wykorzystywał atrybut AKTUALNY_REKORD 25. Uruchom i przetestuj formularz.