okladka
  • Czy interesują Cię języki czwartej generacji i chcesz poszerzyć swoją wiedzę?
  • Czy obracasz się w świecie, gdzie słychać tylko "Microsoft" i chciałbyś poznać coś innego?
  • Czy chcesz poznać narzędzie, w jakim projektuje się naprawdę potężne systemy?
  • Czy twój kolega zarobił ostatnio dwa razy więcej, co Ty, tworząc programy w środowisku Oracle?
Jeśli odpowiesz na powyższe pytania twierdząco to znaczy, że ta książka przeznaczona jest dla Ciebie!

Form Builder jest częścią pakietu Developer/2000 oferowanego projektantom aplikacji jako narzędzie służące do tworzenia interfejsu użytkownika. Form Builder jest językiem 4GL -- oznacza to, że umożliwia tworzenie prostego programu bez znajomości proceduralnego języka programowania.

Książką w szczególności będą zainteresowani programiści i projektanci aplikacji, którzy korzystają lub zamierzają używać Oracle Forms jako narzędzia służącego do tworzenia interfejsu użytkownika dla aplikacji wykorzystującej bazę danych firmy Oracle. Programista znajdzie w tej książce opis obiektów i ich właściwości, które można stworzyć wewnątrz Form Buildera. Projektant natomiast -- informacje o tym, czego można oczekiwać od tego narzędzia oraz jak należy wykorzystywać oferowane przez Oracle Forms mechanizmy.

Form Builder jest tylko z zewnątrz podobny do języków typu: Delphi lub Visual Basic. Oracle Forms oparty jest na, z gruntu odmiennej od klasycznej, zasadzie tworzenia programu. Nie jest też do końca prawdą, że nie trzeba znać języka proceduralnego. Jeśli chcemy stworzyć bardziej skomplikowany program, koniecznie musimy poznać SQL i PL/SQL. Efektywne i umiejętne programowanie w środowisku Form Buildera wymaga kilkuletniej praktyki, a nieznajomość mechanizmów powoduje bardzo szybki przyrost kodu wewnątrz programu.

Wiedza umieszczona wewnątrz tej książki jest trudna do zdobycia. Większość i tak skąpej literatury powstaje jedynie w języku angielskim. W Polsce można próbować zdobyć tę wiedzę m.in. na autoryzowanych kursach organizowanych przez firmę Oracle Polska. Ceny tych usług jednak nie należą do najmniejszych i liczone są w tysiącach dolarów.
Wstęp (11)

  • Narzędzia (13)
    • Gdzie szukać pomocy? (15)
    • Parę słów na temat instalacji (16)
  • Czym dysponujemy? (17)
  • W jakim języku napisano Form Builder? (17)
Rozdział 1. Narzędzia (19)
  • Zarządzanie modułami (19)
    • Typy plików (19)
    • Preferencje (21)
    • Przechowywanie modułów w bazie (24)
    • Przekształcenie na postać tekstową (26)
    • PVCS - system kontroli wersji (26)
    • Raport z listą obiektów (27)
    • Znajdź i zamień PL/SQL (27)
  • Nawigator obiektów (28)
    • Belka narzędziowa (29)
    • Gałęzie (32)
    • Podział okna nawigatora (35)
    • Kompilacja i uruchamianie (35)
  • Edytor układu (38)
    • Kanwy i okna wewnątrz edytora układu (39)
    • Belki narzędziowe (40)
    • Operacje grupowe (42)
    • Rozmieszczanie elementów na kanwie (42)
  • Paleta właściwości (45)
    • Pasek narzędziowy (45)
    • Oznaczenia symboliczne przy właściwościach (48)
  • Edytor menu (49)
    • Wywołanie (49)
    • Okno edytora menu (50)
  • Podsumowanie (51)
Rozdział 2. Kreatory (53)
    • Blok danych (53)
    • Edytor układu (54)
    • Lista wartości (54)
  • Kreator bloków danych (54)
    • Wywołanie kreatora bloków danych (55)
    • Wybór źródła danych (56)
    • Zakończenie pracy kreatora bloków danych (59)
  • Kreator układu (59)
    • Wywołanie kreatora układu (60)
    • Wybór typu kanwy (61)
    • Wybór pól umieszczanych na kanwie (61)
    • Etykiety i rozmiary pól (62)
    • Styl układu ramki (63)
    • Parametry ramki (64)
    • Zakończenie pracy z kreatorem układu (64)
    • Uruchamianie modułu (66)
    • Inna postać kreatora bloków danych (67)
    • Inna postać kreatora układu (68)
  • Kreator listy wartości (68)
    • Wywołanie kreatora listy wartości (70)
    • Wybór źródła danych dla LW (71)
    • Tworzenie grupy rekordów (71)
    • Wybór kolumn do listy wartości (72)
    • Etykiety pól i zwracane wartości (73)
    • Szerokość, wysokość, tytuł (74)
    • Lepiej zaakceptować ustawienia domyślne... (75)
    • Elementy zwracane-przypisane (76)
    • Koniec pracy kreatora LW (77)
    • Inna postać kreatora LW (77)
  • Kreator typów (78)
    • Uruchomienie kreatora (78)
    • Wybór typu (78)
    • Kolekcje (80)
    • Typy obiektowe (80)
  • Tworzenie wyzwalaczy (84)
  • Rozszerzenia Oracle 8 (85)
  • Podsumowanie (86)
Rozdział 3. Moduły formularzy (89)
  • Projektowanie... (89)
  • Struktura modułu (90)
  • Elementy modułu (96)
    • Wyzwalacze (96)
    • Alerty (97)
    • Dołączone biblioteki (99)
    • Bloki danych (100)
    • Kanwy (108)
    • Edytory (110)
    • Listy wartości (112)
    • Grupy obiektów (115)
    • Parametry (116)
    • Menu podręczne (117)
    • Jednostki programu (119)
    • Klasy właściwości (120)
    • Grupy rekordów (122)
    • Raporty (126)
    • Atrybuty wizualne (131)
    • Okna (133)
  • Wbudowane funkcje i procedury (138)
Rozdział 4. Moduły menu (145)
  • Struktura modułu (149)
    • Właściwości (150)
    • Dostęp z PL/SQL (151)
  • Elementy modułu (151)
    • Menu (152)
    • Parametry (158)
    • Atrybuty wizualne (159)
  • Dostęp z PL/SQL (160)
    • Przykładowe zagadnienia (160)
    • Wbudowane funkcje i procedury (163)
  • Podsumowanie (165)
Rozdział 5. Biblioteki PL/SQL (167)
  • Tworzenie nowej biblioteki (167)
    • Tworzenie procedur (168)
    • Tworzenie funkcji (169)
    • Tworzenie pakietów (169)
    • Zmiana nazwy biblioteki (170)
  • Dołączane biblioteki (170)
  • Powiązania wewnątrz biblioteki (171)
  • Podsumowanie (173)
Rozdział 6. Bloki danych (175)
  • Tworzenie bloków danych (175)
    • Tworzenie kanwy (176)
    • Wiązanie kanwy z oknem (177)
    • Tworzenie elementów (177)
  • Bloki kontrolne (178)
    • Przeznaczenie bloku kontrolnego (179)
    • Tworzenie bloku kontrolnego (179)
  • Bloki związane z tabelą (179)
    • Parametryzacja grup właściwości (179)
  • Relacje (185)
    • Budowanie relacji (185)
    • Wyzwalacze (189)
    • Jednostki programu (190)
    • Zmienne systemowe (190)
    • Właściwości (191)
    • Usuwanie nadrzędnych (191)
    • Usuwanie podrzędnych (191)
    • Koordynacja (192)
    • Usuwanie relacji (193)
  • Elementy w bloku danych (193)
    • Pole tekstowe (193)
    • Pole wyboru (203)
    • Pole listowe (205)
    • Grupa przycisków radiowych (210)
    • Drzewo hierarchiczne (213)
    • Przycisk (220)
    • Pole wyświetlania (222)
    • Obraz (223)
    • Dźwięk (227)
  • Podsumowanie (229)
Rozdział 7. Wyzwalacze (231)
  • Co to jest wyzwalacz? (231)
  • Projektowanie wyzwalaczy (232)
    • Typ wyzwalacza (232)
    • Kod skojarzony z wyzwalaczem (233)
    • Zakres obowiązywania (233)
    • Hierarchia wykonania (234)
  • Definiowanie wyzwalaczy (235)
    • Tworzenie wyzwalacza (235)
    • Właściwości wyzwalacza (236)
    • Bloki PL/SQL wewnątrz wyzwalaczy (237)
  • Wyzwalacze weryfikacji danych (239)
    • Wyzwalacz WHEN-VALIDATE-ITEM (239)
    • Wyzwalacz WHEN-VALIDATE-RECORD (239)
    • Porównanie -ITEM i -RECORD (239)
    • Odwołanie WHEN-VALIDATE (240)
  • Wyzwalacze interfejsu użytkownika (241)
    • Wyzwalacz WHEN-BUTTON-PRESSED (242)
    • Wyzwalacz WHEN-CHECKBOX-PRESSED (243)
    • Wyzwalacz WHEN-RADIO-CHANGED (243)
  • Obsługa zdarzeń myszy (243)
  • Wyzwalacze związane z blokami danych (246)
    • Wyzwalacz WHEN-CREATE-RECORD (246)
    • Wyzwalacz WHEN-DATABASE-RECORD (246)
    • Wyzwalacz WHEN-REMOVE-RECORD (247)
    • Wyzwalacz WHEN-CLEAR-BLOCK (247)
  • Wyzwalacze nawigacyjne (247)
    • Wyzwalacze PRE- oraz POST- (247)
    • Wyzwalacze WHEN-NEW-obiekt-INSTANCE (249)
    • Kiedy uruchamiają się wyzwalacze nawigacji? (249)
    • Kiedy nie uruchamiają się wyzwalacze procesu nawigacji? (250)
    • Przerwanie procesu nawigacji (250)
  • Wyzwalacze transakcyjne (250)
    • Przetwarzanie zapytania (251)
    • Wyzwalacze uruchamiane w trakcie zapytania (251)
    • Blokowanie (253)
    • Przetwarzanie rekordów (255)
    • Przetwarzanie transakcji (257)
    • Ustalanie podłączenia i rozłączanie (258)
  • Podsumowanie (259)
Rozdział 8. Dziedziczenie (261)
  • Informacje o podklasie (261)
    • Dziedziczenie po innym Obiekcie (262)
    • Dziedziczenie z Klasy właściwości (265)
    • Rozerwanie związku (266)
  • Tworzenie klasy właściwości (267)
    • Wybór poszczególnych właściwości (267)
    • Wybór właściwości z obiektu (267)
  • Grupy obiektów (267)
    • Przeznaczenie (267)
    • Przykład (268)
  • Biblioteki obiektów (270)
    • Przeznaczenie (270)
    • Tworzenie (270)
    • Sposób umieszczania obiektów (271)
    • Dziedziczenie z biblioteki obiektów (272)
  • Schematy dziedziczenia (275)
    • Dziedziczenie wewnątrz modułu (275)
    • Dziedziczenie z zewnętrznego modułu (275)
    • Dziedziczenie z biblioteki obiektów (276)
    • Dziedziczenie poprzez klasy właściwości (276)
    • Inne schematy dziedziczenia (277)
  • Tworzenie bezpiecznego kodu (277)
    • Zmienne systemowe (277)
    • Procedury NAME_IN oraz COPY (277)
    • Pakiety wbudowane (278)
    • Programowanie obiektowe (278)
  • Podsumowanie (278)
Rozdział 9. Aplikacje wielomodułowe (279)
  • Wywołanie formularza (279)
    • OPEN_FORM (279)
    • CALL_FORM (280)
    • NEW_FORM (280)
    • Stos wywołanych formularzy (280)
    • Ograniczenia (281)
  • Zamykanie formularza (281)
    • EXIT_FORM (281)
    • CLOSE_FORM (282)
  • Nawigacja pomiędzy formularzami (282)
    • Zachowanie formularzy w trakcie nawigacji (282)
    • NEXT_FORM (283)
    • PREVIOUS_FORM (283)
    • GO_FORM (283)
  • Transakcje (283)
    • Wywoływanie formularzy w ramach jednej sesji (283)
    • Wywoływanie formularzy w oddzielnych sesjach (284)
    • Tylko przesłanie - tryb pracy (284)
  • Komunikacja (285)
    • Parametry (286)
    • Zmienne globalne (286)
    • Baza danych (286)
  • Powiązanie z modułami menu (287)
    • Kojarzenie formularza z menu (287)
    • Wywołanie modułu z parametrem (287)
    • Usunięcie elementu Okno (288)
  • Podsumowanie (289)
Dodatek A Zmienne systemowe (291)
  • Obsługa komunikatów Oracle Forms (291)
  • Obsługa relacji pomiędzy blokami (291)
  • Zmienne dotyczące procesu nawigacji (292)
  • Zmienne dotyczące myszy (296)
  • Data i czas (297)
    • Po stronie klienta (297)
    • Po stronie serwera (298)
Dodatek B Wywoływanie narzędzi (299)
  • Moduł uruchomieniowy (299)
    • Zmiana kolejności (299)
    • Wygaśnięcie hasła (299)
    • Parametry wywołania modułu uruchomieniowego (300)
  • Zewnętrzny kompilator (301)
    • Sposób wywołania (302)
    • Parametry wywołania zewnętrznego kompilatora (302)
Skorowidz (305)