Scopul acestui capitol este de a prezenta in mare SQL*Forms. Subiectele discutate includ:
Cand construiti o forma implicita, specificati cerintele de procesare folosind meniuri simple, tabele spread si un screen painter convenabil.
Apoi, SQL*Forms combina instructiunile dumneavoastra cu informatiile din dictionarul de date Oracle pentru a genera forma. O data ce prototipul de forma este creat, ii puteti spori functionalitatea prin validari complexe de date, legarea lui cu alte forme si produse, si furnizarea facilitatilor de help utilizatorului definit.
Adaugand la abilitatea sa de a crea rapid aplicatii puternice, SQL*Forms ofera un mediu portabil de dezvoltare al aplicatiei.
Aplicatiile SQL*Forms sunt portabile din punct de vedere hardware si al sistemelor de operare.
___________ | ______________________________________________ | | __________________________________________ | | ---| ORDERS | | | | Order ID 610 Order Date 07jan87 | |Block-| | Client ID 101 ClientName JKP-SHOP | | | | __________________________________________ | | ---| ITEMS |--- Page 1 | | | | | OrderID ItemNo Code Act.Price Quantity Total | | --->| 610 1 100850 35.00 1 35.00 | |Records-->| 610 2 100870 2.80 3 8.40 | | --->| 610 3 100890 58.00 1 58.00 | | |______________________________________________| | | | Form -| ______________________________________________ | | ___________________________________________ | | | CLIENT DATA | |Constant ---> | |Text | Client ID | | | Name | | | Address |---Page 2 | | City | | | State Zip | | | Phone ( ) ____________________________ | | Credit Limit | SALES REP | | | Comment |----------------------------| | |____________/\__________| | | | | REPID NAME | | Field_________________| | ----- ----- |--Page3 | | | | | | | | | | | | | | | | ----- ----- | |____________ |____________________________|
Forma tipica SQL*Forms este zugravita pe pagina anterioara cu
componentele sale de baza etichetate.
Termenii folositi sunt definiti mai jos. Pentru o lista mai
comprehensiva a terminologiei si definitiilor SQL*Forms consultati
glosarul aflat in Anexa A a acestei carti.
_______________________________________________ | ORDID ITEMID PRODID ACTUALPRICE QTY ITEMTOT | | ------------------------------------------- | ITEM Table | 601 1 200376 2.4 1 2.4 | | 602 1 100870 2.8 20 56 | | 603 2 100860 56 4 224 | ---|-> 604 1 100890 58 3 174 | | | 604 2 100861 42 2 84 | Row | | 604 3 100860 44 10 440 | | | 605 1 100861 45 100 4500 | | | 605 2 100870 2.8 500 1400 | | | 605 3 100890 58 5 290 | | | 605 4 101860 24 50 1200 | | | 605 5 101863 9 100 900 | | | 605 6 102130 3.4 10 34 | | |__|____|_______________________________________| Column | | | ------|------------ | | | | | | | | ______________________________________________ | | | __________________________________________ | | | | ORDERS | | | | | | | | Order ID 604 Order Date 15jun86 | | | | Client ID 106 Client Name SHAPE UP | ITEM Block | | | ------------------------------------------ | | | | ITEMS | | | | | | | | OrderID ItemNo Code ActPrice Quantity Total | | | | 604 1 100890 58 3 174 | | ----|-> 604 2 100861 42 2 84 | | Record | 604 3 100860 44 10 440 | | | | | | | | | -----------|---|---| | Field | | |______________________________________________|
Cand rulati SQL*Forms intrati, cereti, modificati sau stergeti date
continute in baza de date Oracle. Baza de date Oracle organizeaza
datele in tabele de informatii. Aceste tabele sunt alcatuite din linii
si coloane.(Vezi exemplul de tabela de pe pagina anterioara.)
Element al bazei de date Element al formei ------------------------ ----------------- Tabela Bloc Linie Inregistrare Coloana Camp
__________________________________________________ | The Evergreen Otter ORDER FORM Order No | | Client Name Client ID | | Address Date | | Phone | |--------------------------------------------------| | Item Product ID Price Qty Total | |--------------------------------------------------|---The Handwritten Form |-----------|------------|---------|------|--------| |-----------|------------|---------|------|--------| |-----------|------------|---------|------|--------| |-----------|------------|---------|------|--------| |-----------|------------|---------|------|--------| |-----------|------------|---------|------|--------| |-----------|------------|---------|------|--------| |-----------|------------|---------|------|--------| ________________ |-----------|------------|---------|------|--------| | CUS Table | |--------------------------------------------------| |----------------| | Order Total | | CUSTID | |__________________________________________________| | NAME | | ADDRESS | | TOWN | | COUNTY | ________________ | PCODE | | ORD Table | | PHONE | | -------------- | ________________ | REPID | | | | ITEM Table | | CREDIT LIMIT | | ORDID | | -------------- | |________________| The Tables---| ORDERDATE | | | | | COMMPLAN | | ORDID | | | CUSTID | | ITEMID | | | SHIPDATE | | PRODID | | | TOTAL | | ACTUALPRICE | | |________________| | QTY | | | | ITEMTOT | | | |________________| | The Basic Form | | | --------------------------------- | | | | ______________________________________________|___ | | | | | ------------------------------------------------ | | | CLIENT DATA | _____________________________________________________ | | | | | --------------------------------------------------- | | | ORDERS | | | | | | Order ID 622 Order Date 03FEB87 Ship Date | | | Client ID 103 Client Name JUST TENNIS Comm | | | --------------------------------------------------- | | | ITEMS | | | | | | OrderID ItemNo. Code Act.Price Quantity ItemTotal | | | | | | |Replace| | |_______| | Total | | --------------------------------------------------- | | Replace | |_____________________________________________________|
Compania Evergreen Otter Sports este interesata in automatizarea
functiilor de procesare si patrare de inregistrari. Departamentul MIS
a determinat deja tipul datelor necesare pentru a le folosi, stoca si
manipula. Ei au proiectat cinci tabele care sunt baza formelor pe care
le veti construi in timpul acestui curs. Initial, vi se cere sa
construiti doua forme, una pentru a pastra inregistrarile clientului,
si a doua pentru introducerea uzuala bazata pe o forma obisnuita scrisa
de mana si prezentata in pagina anterioara.
Forma de introducere trebuie sa permita operatorului sa foloseasca
SQL*Forms pentru a introduce date pe cat de repede si corect este
posibil. In timpul introducerii datelor, operatorul trebuie sa verifice
daca urmatoarele conditii sunt indeplinite: