TỔNG QUAN
CƠ SỞ LÝ THUYẾT VÀ ỨNG DỤNG
Web được coi là môi trường thực thi chương trình mạnh mẽ, cho phép triển khai hàng triệu ứng dụng đến người dùng toàn cầu với nhiều tùy biến Hai thành phần quan trọng nhất của website hiện nay là trình duyệt Web linh hoạt và các ứng dụng Web, cả hai đều miễn phí cho người sử dụng.
Trình duyệt web là ứng dụng phần mềm giúp người dùng truy cập và tương tác với nội dung trên các trang web.
Website hiện đại đã phát triển vượt bậc so với đồ họa và văn bản tĩnh của thế kỷ 19, cho phép người dùng truy cập nội dung động và cá nhân hóa theo sở thích riêng Ngoài ra, các trang web này còn hỗ trợ chạy các script trên máy khách, nâng cao trải nghiệm người dùng.
“thay đổi” trình duyệt Internet thành giao diện cho các ứng dụng như thư điện tử, phần mềm ánh xạ tương tác (Yahoo Mail, Google Maps)
Website hiện đại cho phép đóng gói, xử lý, lưu trữ và truyền tải dữ liệu khách hàng nhạy cảm như thông tin cá nhân và mã số thẻ tín dụng Điều này được thực hiện thông qua các ứng dụng Web như webmail, trang đăng nhập, chương trình hỗ trợ, mẫu yêu cầu sản phẩm, và hệ thống quản lý nội dung Những ứng dụng này cung cấp cho doanh nghiệp công cụ cần thiết để giao tiếp hiệu quả với khách hàng hiện tại và tương lai, đồng thời đảm bảo an toàn cho thông tin nhạy cảm.
Ứng dụng Web là các chương trình máy tính cho phép người dùng đăng nhập và truy vấn dữ liệu qua Internet trên trình duyệt yêu thích Dữ liệu được gửi đến người dùng dưới dạng thông tin động từ ứng dụng Web thông qua một Web Server, thường sử dụng định dạng như HTML kết hợp với CSS.
Các ứng dụng Web hoạt động bằng cách truy vấn máy chủ chứa nội dung, chủ yếu là dữ liệu từ cơ sở dữ liệu, để tạo ra tài liệu Web động phục vụ nhu cầu của người dùng Tài liệu này được định dạng theo các tiêu chuẩn như HTML và XHTML, đảm bảo khả năng tương thích với mọi trình duyệt JavaScript, một ngôn ngữ lập trình chạy trên phía khách, cho phép tạo ra các yếu tố động trên trang, như thay đổi hình ảnh khi người dùng di chuột Trình duyệt Web đóng vai trò quan trọng trong việc dịch và thực thi các script và lệnh để hiển thị nội dung trang web Theo Wikipedia, trình duyệt Web được định nghĩa là “máy khách chung cho mọi ứng dụng web”.
Một cải tiến quan trọng trong xây dựng và duy trì ứng dụng Web là khả năng hoạt động độc lập với hệ điều hành và trình duyệt trên máy client Ứng dụng Web có thể được triển khai ở bất kỳ đâu có kết nối Internet, không tốn chi phí và hầu hết không yêu cầu cài đặt cho người dùng cuối.
Sự gia tăng số lượng doanh nghiệp thu lợi từ kinh doanh qua Web cho thấy tầm quan trọng ngày càng cao của ứng dụng Web và các công nghệ liên quan Khi các mạng Intranet và Extranet được áp dụng, ứng dụng Web trở thành yếu tố thiết yếu trong hạ tầng truyền thông của tổ chức và doanh nghiệp Điều này mở rộng phạm vi và khả năng kỹ thuật, đồng thời nâng cao trình độ phát triển công nghệ.
Hoạt động nhƣ thế nào?
Mô hình ứng dụng Web ba tầng bao gồm ba thành phần chính: tầng đầu tiên là trình duyệt Web hoặc giao diện người dùng, tầng thứ hai sử dụng công nghệ tạo nội dung động như Java servlets (JSP) hoặc Active Server Pages (ASP), và tầng thứ ba là cơ sở dữ liệu lưu trữ nội dung (như tin tức) cùng dữ liệu người dùng (bao gồm username, password, mã số bảo mật xã hội, và chi tiết thẻ tín dụng).
Quá trình hoạt động của ứng dụng web bắt đầu khi người dùng gửi yêu cầu từ trình duyệt qua Internet đến máy chủ ứng dụng Máy chủ này sẽ truy cập cơ sở dữ liệu để thực hiện các nhiệm vụ như cập nhật hoặc truy vấn thông tin Cuối cùng, ứng dụng web sẽ gửi lại kết quả cho người dùng qua trình duyệt.
GIỚI THIỆU VỀ ĐỀ TÀI
I.2.1 MỤC ĐÍCH CỦA TÀI LIỆU I.2.2 PHÁT BIỂU BÀI TOÁN I.2.3.
NGHIÊN CỨU ORACLE
TỔNG QUAN VỀ HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU ORACLE
Nhiều người lầm tưởng rằng Oracle chỉ phục vụ cho các doanh nghiệp lớn, nhưng thực tế không phải vậy Oracle không chỉ tập trung vào doanh nghiệp lớn mà còn hướng đến các doanh nghiệp vừa và nhỏ, giúp họ tối ưu hóa quy trình và nâng cao hiệu quả kinh doanh.
Cụ thể là Oracle Server có đủ các phiên bản thương mại từ Personal, Standard đến Enterprise (ngoài ra còn có Oracle lite nữa)
Oracle nổi bật với nhiều ưu điểm vượt trội, bao gồm tính bảo mật cao và an toàn dữ liệu tốt Hệ thống của Oracle dễ dàng bảo trì và nâng cấp, đồng thời có cơ chế quyền hạn rõ ràng, mang lại sự ổn định cho doanh nghiệp.
Oracle không hề đắt như nhiều người nghĩ; nếu doanh nghiệp đã từng mua license cho MSSQL Server, họ sẽ nhận ra rằng giá của Oracle không chênh lệch nhiều, thậm chí còn rẻ hơn Hơn nữa, lợi ích mà Oracle mang lại là rất lớn.
Oracle nổi bật với những ưu điểm như dễ cài đặt, triển khai và nâng cấp lên phiên bản mới Đặc biệt, Oracle tích hợp PL/SQL, một ngôn ngữ lập trình có cấu trúc, giúp lập trình viên dễ dàng viết các Trigger, Stored Procedure và Package, tạo ra lợi thế cạnh tranh so với các cơ sở dữ liệu khác trên thị trường.
Oracle, ngoài các kiểu dữ liệu thông thường còn có các kiểu dữ liệu đặc biệt khác góp phần mang lại sức mạnh cho Oracle như Blob, clob, Bfile,
Nếu bạn chỉ chạy thử, bạn cũng không cần lo đến vấn đề lisence vì có thể download từ trang của Oracle (technet.oracle.com)
Ngoài ra, bạn có thể triển khai Oracle trên nhiều OS khác nhau (Windows, Solaris, Linux, ) mà không cần phải viết lại PL/SQL codẹ
Có thể import một dumpFile (backupFile) từ một máy chạy OS này sang
Việc nâng cấp hệ điều hành lên phiên bản cao hơn hoặc chuyển đổi giữa các hệ điều hành khác nhau có thể thực hiện dễ dàng mà không gặp khó khăn nào Tuy nhiên, nếu bạn muốn quay lại phiên bản cũ hơn, điều này cũng khả thi miễn là bạn không sử dụng các tính năng mới có trong phiên bản trước đó.
Oracle Server is a comprehensive object-relational database management system that facilitates efficient information management It consists of two primary components: the Oracle instance and the Oracle database.
An Oracle instance consists of a System Global Area (SGA) memory structure and various background processes that are essential for database management It is uniquely identified by the operating system environment parameter ORACLE_SID.
Hình vẽ 1 Kiến trúc Oracle Server
SGA, hay vùng bộ nhớ chia sẻ, là nơi lưu trữ dữ liệu và thông tin điều khiển của Oracle server Vùng nhớ này được cấp phát trên máy tính nơi Oracle server hoạt động, cho phép người dùng kết nối chia sẻ dữ liệu trong SGA Việc mở rộng không gian bộ nhớ cho SGA không chỉ nâng cao hiệu suất hệ thống mà còn giúp lưu trữ nhiều dữ liệu hơn và giảm thiểu thao tác truy xuất đĩa (disk I/O).
SGA bao gồm một vài cấu trúc bộ nhớ chính:
Shared pool là một thành phần quan trọng trong SGA, được sử dụng trong giai đoạn phân tích câu lệnh (parse phase) Kích thước của Shared pool được xác định bởi tham số SHARED_POOL_SIZE trong file tham số.
Các thành phần của Shared pool gồm có: Library cache và Data dictionary cache
Hình vẽ 2 Cấu trúc Share Pool
Library cache lưu trữ thông tin về các câu lệnh SQL được sử dụng gần nhất bao gồm:
Nội dung của câu lệnh dạng text (văn bản)
Parse tree (cây phân tích) được xây dựng tuỳ thuộc vào câu lệnh
Execution plan (sơ đồ thực hiện lệnh) gồm các bước thực hiện và tối ưu lệnh
Thông tin lưu trữ trong Library cache cho phép server process truy xuất lại các thông tin đã được phân tích mà không cần phải phân tích lại câu lệnh khi thực hiện lại một truy vấn Điều này giúp nâng cao hiệu suất thực hiện lệnh một cách hiệu quả.
The data dictionary cache is a component of the Shared Pool that stores frequently accessed information, such as table definitions, column definitions, usernames, passwords, and privileges.
Trong giai đoạn phân tích lệnh (parse phase), Server process tìm kiếm thông tin trong dictionary cache để xác định các đối tượng trong câu lệnh SQL và mức quyền tương ứng Nếu cần thiết, Server process có thể khởi tạo và nạp thông tin từ các file dữ liệu.
Khi thực hiện truy vấn, Server process sẽ tìm kiếm các block cần thiết trong bộ nhớ đệm database buffer cache Nếu không tìm thấy, nó sẽ đọc các block từ file dữ liệu và tạo bản sao vào vùng nhớ đệm Nhờ đó, những lần truy xuất sau sẽ không cần truy cập vào file dữ liệu nữa.
Hình vẽ 4 Database buffer cache
Database buffer cache là một phần của SGA, dùng để lưu trữ các block dữ liệu được truy cập gần đây Kích thước của các block dữ liệu được quy định bởi tham số DB_BLOCK_SIZE, trong khi kích thước của vùng đệm trong buffer cache được xác định bởi tham số DB_BLOCK_BUFFERS.
The Oracle server employs the Least Recently Used (LRU) algorithm to refresh memory areas When a new block is loaded into the buffer and the buffer is full, the Oracle server removes the least frequently used block to make space for the new one.
Server process ghi lại các thay đổi của một instance vào redo log buffer, đây cũng là một phần bộ nhớ SGA
Hình vẽ 5 Redo log buffer
Có một số đặc điểm cần quan tâm của Redo log buffer:
Kích thước được xác định bởi tham số LOG_BUFFER
Lưu trữ các redo records (bản ghi hồi phục) mỗi khi có thay đổi dữ liệu
GIỚI THIỆU ORACLE DESIGNER
II.2.1 VAI TRÒ II.2.2 CÁC CÔNG CỤ II.2.3 THÀNH PHẦN VÀ CÁCH THỰC HIỆN ORACLE DESIGNER
GIỚI THIỆU ORACLE REPORT
II.3.1 ORACLE REPORT LÀ GÌ?
Oracle Reports is an application development tool designed for generating and printing reports on demand It is built on SQL and PL/SQL programming languages.
II.3.2 ƢU ĐIỂM CỦA ORACLE REPORT
The Oracle report enables the creation of various types of reports, ranging from basic to complex, including master/detail reports, nested matrix reports, form letters, and mailing labels Key features include flexibility in report design and comprehensive data presentation.
Data model dùng để tạo dữ liệu trong report và Layout editor dùng để thiết kế giao diện report
Object navigator giúp bạn có một cái nhìn tổng thể về dữ liệu và các đối tượng trong report theo cấu trúc hình cây
Packe function dùng để gán cho các đối tượng trong báo cáo để tính toán hoặc điều khiển sự hiển thị
Giao diện báo cáo là đồ họa, có thể đặt điều kiện in ấn
Cho phép xem trước báo cáo giống như khi được in ra
Có trợ giúp online theo đối tượng
II.3.3 CÁC THÀNH PHẦN CỦA ORACLE REPORT BUILDER
Data Model : Thiết lập nên các dữ liệu cho một Report
Layout Model : Xây dựng Layout, thiết kế hiển thị cho các đối tượng
Live Previewer : Hiển thị Report như dạng mà nó sẽ được in ra để có thể chỉnh sửa đơn giản các thành phần dữ liệu hiển thị
Parameter Form : Thiết lập các tham số cần nhập vào cho Report khi chạy
Properties : Khai báo các thuộc tính của Report, ví dụ kích cỡ cho một trang in
Triggers : Các thủ tục sẽ được xử lý tại các giai đoạn khác nhau theo sự kiện khi vận hành Report
PL/SQL Program Units : Các chương trình con PL/SQL mà có thể được gọi ra để thực hiện
II.3.4 CÁC KIỂU CỦA ORACLE REPORT
Có một số kiểu Report thông thường sau:
Ví dụ trong bài toán quản lý học sinh, ta có thể lập báo cáo theo các kiểu trên như sau:
+ Kiểu Matrix: dữ liệu hiển thị dạng bảng trong đó cột và hang là các Master và nội dung hiển thị trong các ô là dữ liệu Detail
II.3.5 KẾT QUẢ CỦA ORACLE REPORT
Kết quả của một Report có thể được kết xuất ra ở một số thành phần sau:
Screen: hiển thị trên màn hình
Preview:xem report trên màn hình giống như in
File: hiển thị kết quả ra một file theo dạng PDF, HTML
Mail: đưa report vào mail sử dụng Oracle Mail
II.3.6 CÁC BƯỚC TẠO ORACLE REPORT
Có 3 bước để tạo một Oracle Report mới Định nghĩa một report mới
Khi chạy Report Builder thì mạc định sẽ tạo cho ta một report mới Nếu không chúng ta có thể tạo một report mới bằng cách chọn File -> New ->
New Report từ menu chính của Oracle Report Builder
Sau khi tạo xong một đối tượng report mới, người dùng có thể dễ dàng quan sát panel đầu tiên ở bên trái màn hình chính của Report Builder Panel này rất quan trọng vì nó hiển thị toàn bộ các đối tượng trong report theo cấu trúc hình cây, cho phép người dùng di chuyển đến bất kỳ đối tượng nào một cách thuận tiện Các đối tượng trong report được nhóm theo từng nhóm riêng biệt và tổ chức theo hình cây, giúp việc tìm kiếm trở nên dễ dàng hơn.
Tạo mô hình dữ liệu bao gồm việc lựa chọn dữ liệu, xác định mối liên hệ giữa các dữ liệu và thực hiện các tính toán cần thiết cho báo cáo Mô hình dữ liệu là nơi lưu trữ các đối tượng dữ liệu có cấu trúc và các liên kết dữ liệu của báo cáo Người dùng có thể tạo mới hoặc chỉnh sửa các đối tượng trong trình chỉnh sửa mô hình dữ liệu Các loại đối tượng trong mô hình dữ liệu rất đa dạng và phong phú.
- Queries: là một câu lệnh select Chúng ta có thể lấy dữ liệu từ một hoặc nhiều bảng trên một hoặc nhiều CSDL khác nhau
Các nhóm trong báo cáo xác định cấu trúc dữ liệu, với Oracle tự động tạo ra một nhóm tương ứng với mỗi truy vấn Ngoài ra, người dùng có thể tạo thêm các nhóm mới dựa trên truy vấn hiện tại.
Chúng ta sử dụng group kiểu cha – con để tạo ra các breack reports
Các cột trong báo cáo là nơi lưu trữ dữ liệu, tương ứng với các cột trong câu lệnh SELECT Ngoài ra, người dùng có thể tạo thêm các cột tổng hợp và cột công thức để phục vụ cho nhu cầu phân tích dữ liệu.
Parameters are variables in reports that control display during runtime There are two types of parameters: user parameters and system parameters System parameters are automatically generated by Oracle at runtime, while user parameters are defined by the user.
- Data links: được dùng để tạo kết nối cha – con giữa các query và group
Tạo layout để thể hiện báo cáo : đầu tiên dùng default layout tạo layout mạc định, rồi tu chỉnh mạc định để có layout riêng của bạn
Creating a layout for a report involves determining its visual presentation Oracle Reports offers six default layout styles: tabular, master/detail, form letter, form, mailing label, and matrix Users can select one of these styles and customize it to create a unique layout that suits their needs.
Các đối tượng trong Layout bao gồm:
NGHIÊN CỨU ORACLE FORM
II.4.1 TỔNG QUAN VỀ ORACLE FORM
II.4.1.1 Vai trò Oracle form là một trong những sản phẩm quan trọng trong bộ công công cụ Developer và là công cụ phát triển form chính của oracle trong hơn 15 năm qua Trong suốt thời gian này thì các ứng dụng của form builder được sử dụng trong các hệ thống máy tính lớn, môi trường dựa trên cơ sở ký tự, môi trường client sever, và bây giờ là môi trường web
Oracle Form là một công cụ mạnh mẽ cho việc phát triển giao diện người dùng, cho phép thực hiện các thao tác xử lý và quản lý dữ liệu trong cơ sở dữ liệu Nó cũng hỗ trợ kết nối và trao đổi thông tin với các ứng dụng khác của Oracle, như Oracle Report và Oracle Graphic.
II.4.1.2 Các modul(file) có trong một ứng dụng Oracle form
Một ứng dụng Oracle form có thể gồm 1 hoặc nhiều moduls(files) Có
Form đại diện cho các đối tượng dữ liệu mà người dùng có thể nhìn thấy hoặc thực hiện thao tác Các file này thường có phần mở rộng đặc trưng.
Menu: Đây là nơi chứa một loạt các chức năng mà ta có thể lựa chọn để thực hiện Các file này có phần mở rộng là *.MMB, *.MMX
Thư viện là nơi lưu trữ các thành phần của form, cho phép sử dụng và tái sử dụng chúng một cách hiệu quả Các thành phần trong thư viện có thể chứa bất kỳ đối tượng nào của form, giúp bạn chuẩn hóa và tiết kiệm thời gian trong quá trình phát triển Các tệp trong thư viện có phần mở rộng là *.PLL và *.PLX.
II.4.1.3 Các thành phần của Oracle Form
Trong Oracle Form 10g có 3 thành phần chính là:
Form Builder, hay còn gọi là môi trường phát triển tích hợp, là công cụ cung cấp các thành phần thiết kế cần thiết như giao diện, menu và thư viện.
Form compiler : thành phần này giúp ta biên dịch các file tạo bởi
Oracle builder thành các file có thể thực thi được
Oracle Server: Thành phần này giúp ta thực thi file được tạo ra bởi
Form compiler trong môi trường web là sản phẩm trung gian nhận yêu cầu từ trình duyệt và chuẩn bị một java applet dựa trên form cho trình duyệt Form Server có thể được truy cập trực tiếp từ trình duyệt hoặc thông qua form builder.
II.4.1.4 Môi trường phát triển
Ngày nay, Oracle Forms chủ yếu phát triển các ứng dụng chạy trên web và internet, nhằm loại bỏ sự phụ thuộc vào hệ điều hành Điều này có nghĩa là ứng dụng chỉ cần dựa vào trình duyệt web và máy chủ web để hoạt động hiệu quả.
Khi sử dụng form trên web, file thực thi được đăng ký với web server
Oracle web server được gọi là oracle9iAS và form server là một trong nhứng thành phần của nó
Người dùng thực thi Form
Để thực thi web form, người dùng cần nhập một URL trong trình duyệt, URL này trỏ đến ứng dụng đã đăng ký trên form server Một listener trên web server sẽ tiếp nhận yêu cầu URL và chuyển tiếp đến form server Tại đây, form server tìm kiếm file thực thi fmx, chuyển đổi nó thành một applet Java và gửi đến trình duyệt Để chạy form trong trình duyệt, client cần có applet Jinitiator.
When an Oracle form is executed via the web, the web server hosts the form and sends Jinitiator to the client's web browser if it is not already installed Jinitiator is a common applet that is downloaded to the client only once.
Form server có khả năng tô điểm giao diện bên trong trình duyệt, kiểm tra tính hợp lệ của dữ liệu và kết nối với form server Nó thực hiện việc đọc và thi hành file fmx, đồng thời kết nối với cơ sở dữ liệu và applet trên trình duyệt web.
II.4.2 CÁC CÔNG CỤ CỦA FORM BUILDER
Form buider có các công cụ để xây dựng form: object navigator, layout editor, property palette và PL/SQL editor
II.4.2.1 Object Navigator là nơi định vị và di chuyển tới bất kỳ thành phần nào của form Double click vào bất kỳ đối tượng nào trong cửa sổ object navigator làm cho form builder thể hiện đối tượng được chọn bên trong một công cụ form builder thích hợp object navigator được sử dụng để tạo, xóa hoặc sao chép và đổi tên các thành phần của form
Object navigator là một công cụ tổ chức các đối tượng theo cấu trúc cấp bậc Ở cấp độ cao nhất, nó bao gồm các file nhị phân lưu trữ trên máy chủ Mỗi khi một file được mở hoặc tạo mới, các đối tượng con sẽ được liệt kê dưới đối tượng cha tương ứng.
Công cụ form builder cho phép định nghĩa các đặc tính đặc biệt của từng thành phần form, với mỗi thành phần sở hữu một bộ thuộc tính riêng biệt Các thuộc tính này bao gồm giới hạn, chiều dài giá trị, kiểu dữ liệu và giá trị thông báo, giúp kiểm soát hành vi của form một cách hiệu quả.
Double click vào đối tượng trong object navigator thường mở ra một công cụ property palette.
Công cụ vẽ form cho phép người dùng di chuyển và sắp xếp các đối tượng, thiết lập font chữ, tô màu, cũng như thêm các thành phần và nhãn cho chúng Khi double click vào bất kỳ thành phần đồ họa nào trong object navigator, layout editor sẽ hiển thị một canvas để chứa đối tượng đó.
Công cụ này hỗ trợ việc viết kịch bản PL/SQL cần thiết cho một form, với các kịch bản này được tích hợp trong các trigger liên quan đến các đối tượng của form.
II.4.3 KHỞI TẠO ORACLE FORM BUILDER
II.4.3.1 Khởi tạo Oracle Form Builder
Có 2 cách để gọi Oracle Forms Designer
Tìm đến biểu tượng Forms Designer và nháy đúp con trỏ trên biểu tượng để vào Forms Designer; hoặc
Chạy file frmbld.exe trong thư mục bin của thư mục đã cài bộ Oracle developer (ví dụ: C:\C:\DevSuiteHome_1\BIN)
II.4.3.2 Tạo và Xóa Form
Tạo một Form trong Oracle Forms Designer phải :
- Vào chức năng File/New/Form ;hoặc
- Đặt con trỏ vào biểu tượng forms trên Object Navigator sau đó nhấn vào biểu tượng Create (hình dấu [+] )
Muốn xoá form đặt hộp chọn vào tên form cần xoá sau đó nhấn phím del hoặc nhấn vào biểu tượng delete trên Object Navigator
II.4.3.3 Lưu trữ và thực hiện Form
4.4.4.1 Text Item
Khái niệm: Text item Là đối tượng dạng text hiển thị các giá trị dạng string Text item cho phép thực hiện các thao tác soạn thảo
Là kiểu ngầm định của oracle forms
Cách tạo, xóa:giống với cách tạo xóa item chung
Các thuộc tính chung cơ bản của item:
Intem type: kiểu của item
Subclass information: chèn một tập các thuộc tính với giá trị sẵn cho item
Enabled: cho phép định hướng tới item bằng chuột
Multi line: cho phép có nhiều dòng không?
Khi thiết lập chế độ hiển thị dữ liệu trên iem, người dùng có thể lựa chọn giữa việc hiển thị bằng chữ hoa, chữ thường, hoặc giữ nguyên định dạng trong cơ sở dữ liệu (CSDL) hoặc theo định dạng mà người dùng đã nhập.
Conceal data: giấu thông tin nhạy cảm bằng cách hiển thị các ký ** Thường được sử dụng để nhập giá trị password
Keyboard navigable: có cho phép di chuyển đến item bằng phím tab của bàn phím hay không?
Previous/next navigation item: item trước và item tiếp theo của item hiện thời
Data type: chọn kiểu dữ liệu cho item
Maximum length: độ dài tối đa khi hiển thị hay khi nhập vào item
Required: xác định xem item này có nhất thiết phải nhập vào khi tìm kiếm không?
Fomat mask: đặt định dạng cho item
Copy value from item: giá trị của item sẽ được copy từ giá trị của 1 item khác nào đó
Synchronize item: xác định item này được đồng bộ với item nào?
Calculation mode: kiểu tính toán của item(none, formula- tính theo công thức,summary- tính theo các hàm sum, count…)
Formula: là nơi viết vào công thức tính nếu ta chọn Calculation mode là formula
Summary function: chọn hàm tính nếu Calculation mode được chọn là summary
Current record visual attribute group: chèn một tập các thuộc tính trực quan được xây dựng sẵn cho bản ghi ở thời điểm hiện thời
Distance between record: chọn khoảng cách giữa các record
Number of item displayed: chọn số các item được hiển thị
Database item: xác định xem item này là data item hay là control item
Column name: tên 1 cột có trong data block mà item này chứa trong đó
Primary key: xác định xem item này có phải là item chứa cột mạng khóa chính hay không?
Query only: xác định xem item này có phải chỉ được sử dụng để query không?
Query/insert/update/delete allowed: cho phép query, insert, update, delete hay không?
Canvas: xác định item nằm trên canvas nào
Tab page: xác định item nằm trên tab nào nếu canvas thuộc kiểu tab can vas
x/y position: tọa độ vị trí item
width/height: độ rộng và độ cao của item
The "show vertical scroll bar" property determines whether a scroll bar is displayed for the item, and it should only be selected if the item has the "multi line" attribute set to yes.
Visual attribute group: chọn nhóm các thuộc tính trực quan đã được xây dựng sẵn để gán cho item
Prompt visual attribute group: chọn nhóm các thuộc tính đã xây dựng trước dành cho prompt của item này Color:
Background/foreground color: chọn màu nền và màu chữ cho item
Font name/size/weight/style: chọn font chữ, cỡ chữ, độ rộng của form và kiểu của font
Prompt: viết vào prompt cho item này
Prompt display style: kiểu hiển thị prompt( 1 record, tất cả các record, hay là hidden)
Prompt alignment: chọn căn prompt là ở trên, dưới hay ở giữa item
Prompt attachment edge: chọn chiều hiển thị prompt(start- chiều ngang với item, top - chiều dọc,…)
Prompt foreground color: chọn màu chữ cho prompt Prompt font: chọn font cho prompt
Tooltip: viết câu trợ giúp chức năng của item này khi ngưofi sử dụng dê chuột vào
Tooltip visual attribute group: chọn mọt nhóm các thuộc tính đã xây dựng sẵn cho tooltip
4.4.4.2 Display item
Display item là một đối tượng được sử dụng để hiển thị các giá trị dưới dạng chuỗi Đặc biệt, display item không cho phép người dùng định hướng con trỏ tới nội dung bên trong và cũng không thể soạn thảo nội dung đó.
Cách tạo và xóa display item:tương tự như tạo và xóa một item
Các thuộc tính cơ bản:item type: display item
4.4.4.3 list item
Khái niệm: List item là một đối tượng dùng để hiển thị một danh sách các giá trị dưới dạng string cho phép chọn một giá trị
Cách tạo và xóa list item: tương tự như tạo và xóa một item Các thuộc tính cơ bản:
- List stype: chọn kiểu danh sách Có các kiểu sau: poplist, Tlist, Combo box
- Element in list: xoạn thảo các thành phần của list item
- Mapping of other value: giá trị được gán ứng với các giá trị không có trong danh sách
4.4.4.4 Button
Cách tạo và xóa list item: tương tự như tạo và xóa một item Thuộc tính cơ bản:
- lable: nhãn hiển thị của button
- iconic: xác định xem có dùng một icon khác icon mạc định không?
- icon file name: tên file icon cho button
4.4.4.5 Check box
Cách tạo và xóa check box: tương tự như các tạo và xoa item Các thuộc tính cơ bản:
- Lable: nhãn của check box
- Value when checked: giá trị khi mà check box được tích
- Value when unchecked: giá trị khi check box không được tích
4.4.4.6 Image
Các ảnh được lưu trữ trong cơ sở dữ liệu hoặc trên file có thể hiển thị trên màn hình trong quá trình chương trình đang chạy, nhờ vào các lệnh được sử dụng.
Cách tạo và xóa image: tương tự như tạo và xóa item Các thuộc tính cơ bản:
Loại mục: hình ảnh; Định dạng hình ảnh: định dạng được sử dụng cho ảnh; Chất lượng hiển thị: độ rõ nét của hình ảnh; Kiểu hiển thị: lựa chọn cách hiển thị hình ảnh khi kích thước không tương thích với kích thước thực của nó.
A relation is a logical entity that indicates the connection between a master block and a detail block In the Object Navigator, this relationship is represented within the master block.
When creating a relationship in Oracle Forms, the system automatically generates triggers and PL/SQL code to maintain the connection between master and detail blocks This generated code is contingent upon the type of relationship selected.
Cách tạo và xóa một relation Để tạo một Relation có thể tạo từ khi tạo mới block (Xem phần trên)
Hoặc vào cửa sổ Object Navigator chọn vào Relations của master block sau đó nhấn biểu tượng Create để tạo -> hiện lên màn hình New relation
Các thuộc tính cơ bản
- Detail data block: điền tên block dữ liệu chi tiết
- Join condition: điều kiện kết nối giữa detail và mester data block
- Delete record behavior: tùy chọn khi xóa mester data block
Object Group là một nhóm các thành phần trong form, đóng vai trò là một đối tượng của form Nó được sử dụng để chứa các thành phần của form, giúp dễ dàng di chuyển và quản lý các thành phần chung giữa các form khác nhau.
Cách tạo và xóa một Object Group
Mở form Trong Object Navigator tìm và chọn nút Object Group
Để tạo một Object Group, trước tiên hãy nhấn vào công cụ tạo và đặt tên cho nhóm đối tượng Tiếp theo, kéo các thành phần từ form hiện tại vào nhóm này Nếu cần loại bỏ các đối tượng đã thêm, chỉ cần chọn chúng và nhấn vào công cụ xóa Để xóa hoàn toàn một Object Group, hãy chọn nhóm đó trong Object Navigator và sử dụng công cụ xóa.
Các Object Group có thể được sao chép giữa các form bằng cách kéo và thả từ form này sang form khác Khi thực hiện thao tác này, các mục trong nhóm sẽ tự động được sao chép vào các nút tương ứng trong form mới Đặc biệt, nếu bạn xóa Object Group, các nút đã sao chép vẫn sẽ được giữ nguyên trong form.
Triggers là một khối mã lệnh được sử dụng để thực hiện các chức năng trong ứng dụng Mỗi trigger đều có tên riêng và bao gồm một hoặc nhiều dòng lệnh PL/SQL tương ứng với sự kiện mà nó cần xử lý.
Tên Trigger thường tương ứng với sự kiện (ví dụ When-Button-Pressed trigger sẽ tương ứng với sự kiện nhấn vào Button
Một trigger phải được gắn với một object xác định trên form: item, block hoặc chính trên form Trigger gồm các mức (level) tương ứng:
Việc xác định mức đặt trigger rất quan trọng vì nó quyết định phạm vi hoạt động của trigger đối với các sự kiện Chẳng hạn, trigger cấp độ item chỉ được kích hoạt khi có sự kiện xảy ra trên chính item đó, mà không phản ứng với sự kiện tương tự trên item khác, dù chúng có cùng hoặc khác block Trong khi đó, trigger cấp độ block chỉ được kích hoạt khi có sự kiện xảy ra trong toàn bộ block.
Trigger hiện trong block nhưng nó không bật lên khi xuất hiện các sự kiện giống như vậy thuộc block khác
Khi định nghĩa các trigger ở nhiều mức khác nhau để xử lý cùng một sự kiện, trigger ở mức thấp nhất sẽ được thực hiện nếu sự kiện nằm trong phạm vi của các trigger đó Ví dụ, nếu có một trigger When-New-Item-Instance gán cho một block và một trigger tương tự gán cho một text item trong block, khi sự kiện xảy ra trên text item, trigger ở mức item sẽ được kích hoạt, trong khi trigger ở mức block sẽ bị bỏ qua Ngoài ra, các trigger cùng mức có thể xuất hiện và xử lý theo những cách khác nhau Các loại trigger bao gồm: Pre-, Post-, When-, On-, Key-.
Tạo và xóa một trigger
In the Object Navigator window, each object (item, block, form) has a section for Triggers To create a new trigger, select the Triggers option, click on the Create icon, and choose the corresponding event (for example, when-button-pressed), which will open the code writing window.
Các loại trigger này được kích hoạt trước các giao tác của cơ sở dữ liệu hoặc sự kiện của form, chứa đựng các phát biểu bổ sung được thực thi trước khi hoạt động diễn ra Khác với trigger on, chúng không thay thế các hoạt động bình thường của form Ví dụ, trigger pre-insert sẽ được kích hoạt khi phát biểu insert được thực hiện Một số trigger phổ biến bao gồm: pre-insert (trước khi thực hiện insert), pre-delete (trước khi thực hiện delete), pre-update (trước khi thực hiện update) và pre-form (trước khi form khởi động).
Các loại trigger này được kích hoạt khi một hoạt động của form xảy ra
Ví dụ như trigger when-new-form-instance được kích hoạt khi form được khởi động đầu tiên
Một số trigger loại này hay được sử dụng:
- When-button-pressed: Được thực hiện khi có thao tác nhấn button bằng phím hoặc chuột
- When-clear-block:Thực hiện khi xoá dữ liệu từ block hiện thời
- When-create-record: Thực hiện khi tạo một bản ghi mới
- When-checkbox-change: Thực hiện khi check box thay đổi trạng thái
- When-radio-change: Thực hiện khi có thay đổi chọn các radio button
- When-list-change: Thực hiện khi thay đổi chọn giá trị trong danh sách
- When-new-block-instance: Được thực hiện khi di chuyển input focus từ một block từ block khác
- When-new-item-instance: Được thực hiện khi con trỏ chuyển tới Item
Khi có sự thay đổi giá trị của item từ người sử dụng hoặc từ các trigger, tính năng "when-validate-item" sẽ được kích hoạt Điều này cũng xảy ra khi con trỏ di chuyển ra khỏi item.
Các loại trigger này được kích hoạt sau các giao tác của cơ sở dữ liệu hoặc sự kiện của form, chứa đựng các phát biểu bổ sung được thực thi sau khi hoạt động xảy ra Khác với trigger on, chúng không thay thế các hoạt động bình thường của form Ví dụ, trigger post-query được kích hoạt sau khi một record được đưa về block dữ liệu.
Trigger post-query thường được sử dụng để thêm thông tin giải thích vào một khối dữ liệu, chẳng hạn như làm rõ tên phòng ban trong bảng nhân viên, nơi chỉ có mã phòng ban Trigger này có khả năng trả về tên phòng ban tương ứng với mã đó Một số loại trigger post-query phổ biến được áp dụng trong thực tế.
- Post-Change: Thực hiện khi dữ liệu của item được thay đổi với giá trị chấp nhận không phải là giá trị null
- Post-form: Xuất hiện trong khi thoát khỏi form
- Post-query: Thực hiện sau khi dữ liệu được điền vào các record
- Post-record: Xuất hiện khi rời input focus từ bản ghi này tới bản ghi khác