Giáo trình visual basic foxpro
Foxpro là hệ quản trị cơ sở dữ liệu dùng để giải quyết các bài toán trong các lĩnh vực quản lý. FoxPro được thừa kế và phát triển trên phần mềm DBASE III PLUS và DBASE IV, những sản phẩm nổi tiếng của hãng ASTON-TATE. Khi các công cụ lập trình và các ứng dụng trên môi trường Windows ngày nhiều thì Microsoft cho ra đời các phiên bản FoxPro 2.6, chạy được trên hai môi trường DOS và Windows. Visual Foxpro là sản phẩm của hãng Microsoft, được kế thừa từ Foxpro for Windows, là một trong những công cụ tiện lợi để giải quyết các bài toán trong lĩnh vực quản lý cho những người chuyên nghiệp và không chuyên nghiệp.
Mục lục:
1. Giới thiệu về hệ quản trị cơ sở dữ liệu visual Foxpro
2. Thao tác với bảng dữ liệu
3. Xắp sếp, tìm kiếm thống kê
4. Lập trình trên visual Foxpro
5. Forms
6. Reports
7. Tạo menu và quản lí đề án
Bài tập
17 trang |
Chia sẻ: tlsuongmuoi | Lượt xem: 2826 | Lượt tải: 3
Bạn đang xem nội dung tài liệu Giáo trình visual basic foxpro, để tải tài liệu về máy bạn click vào nút DOWNLOAD ở trên
Bài 10 - Tạo reports và labels
I. Giới thiệu
Report là công cụ dùng để thiết kế các trang in báo cáo.
Cấu trúc của report thường được thiết kế theo một trong các dạng sau:
Dạng cột (Column report): Mỗi Field là một cột và mỗi Record nằm trên 1 dòng, như danh sách lớp; bảng điểm. Ví dụ
Dạng dòng (Row report): Mỗi field nằm trên 1 hàng và mỗi, hết record này đến record khác. Ví dụ
Dạng một - nhiều (One - To - Many Report): Dữ liệu được lấy từ 2 bảng, 1 bảng cha và một bảng con (có quan hệ One-Many với nhau). Cứ mỗi record cha sẽ có các record con phía dưới. Ví dụ
Dạng nhiều cột (Multi - Column report): Dạng cột và dòng như trên là dạng 1 “cột”, tuy nhiên có thể tạo các report trên thành dạng nhiều “cột”. Ví dụ
II. Thiết kế report sử dụng Wizard
Các bước thực hiện
Mở Project cần làm, trong Project Manager chọn Tab Documents
Chọn Report
Chọn New
Chọn Report Wizard, khi đó giao diện chọn kiểu Report Wizard xuất hiện như hình sau:
Chọn kiểu Report Wizard: Report Wizard - Tạo Repor từ một bảng đơn, hoặc One-To-Many Report Wizard - Tạo Report từ 2 bảng có quan hệ (1-nhiều) với nhau.
Ví dụ 1: Tạo Report từ bảng đơn (sử dụng Report Wizard)
Bước 0 - Bước 5 ở trên chọn Report Wizard, chọn OK
Step 1 - Select Fields: Chọn Database, Tables và Fields (Sử dụng lệnh >, >> để chọn các trường cần thiết. Khi đã chọn xong các trường, chọn Next để qua bước 2 (ví dụ chọn tất cả các trường của bảng DIEM).
Step 2 - Group Records: Chọn trường để nhóm dữ liệu, có thể tạo ra nhiều cấp nhóm (ví dụ chọn 2 cấp nhóm: 1 là malop, 2 là masv), chọn Next để qua bước 3.
Step 3 - Choose Report Style: Chọn kiểu report (hình thức mỗi style khi được chọn sẽ hiển thị ở hình bên - ví dụ này chọn Ledger ), chọn Next để qua bước 4.
Step 4 - Define Report Layout: Thiết lập cấu trúc report Trong đó: Number of Columns: Số “Cột” (chỉ cho phép khi không chọn Group); Field Layout Columns: Các trường ở dạng cột (dạng 1 - chỉ cho phép khi không chọn Group); Field Layout Row: Các trường ở dạng dòng (dạng 2 - chỉ cho phép khi không chọn Group); Orientation Portrait: Hướng giấy theo chiều đứng; Orientation Landscape: Hướng giấy theo chiều ngang (Trong ví dụ này chúng ta bỏ qua Step 4).
Step 5 - Sort Records: Chọn cách sắp xếp các bản ghi.
Step 6 - Finish: Kết thúc, chọn finish rồi nhập vào tên file cần ghi để kết thúc.
Ví dụ 2: Tạo One - To - Many Report
(Tương tự như ví dụ 1, sinh viên tự tìm hiểu)
III. Thiết kế report sử dụng Report designer
Các bước thực hiện
Mở Project cần làm, trong Project Manager chọn Tab Documents
Chọn Report
Chọn New
Chọn New Report, khi đó giao diện Report Designer xuất hiện như hình sau:
Trong đó: Phía trên là thanh công cụ, cửa sổ Report Designer là phần thiết kế report, phía dưới là thanh Report Controls.
1. Bands
Trong cửa sổ Report Designer có 3 phần: Page Header; Detail; Page Footer, các phần này gọi là các Band (nhóm).
Mặc định (khi tạo mới) mỗi Report có 3 band như trên.
Page Header: Những thiết kế trong phần này sẽ in lặp lại ở đầu mỗi trang
Detail: Những thiết kế trong phần này sẽ in tương ứng với mỗi bản ghi của vùng làm việc hiện thời.
Page Footer: Những thiết kế trong phần này sẽ in lặp lại ở cuối mỗi trang
Ngoài các Band trên chúng ta còn có thể thêm vào band Title và Summary như sau:
Click chuột trái trên nền Report
Chọn Optional Bands, khi đó giao diện chương trình xuất hiện như hình sau:
Đánh dấu chọn (check) vào các mục: Report has title band và Report has summary band, chọn OK để kết thúc. Khi đó giao diện Report Designer có dạng như hình sau:
Title: Những thiết kế trong phần này sẽ in một lần duy nhất ở đầu của Report.
Summary: Những thiết kế trong phần này sẽ in một lần duy nhất ở cuối của Report.
2. Thanh công cụ Report Controls
Trong thiết kế Report (Report Designer), Visual Foxpro cung cấp công cụ Report Control để đưa các điều kiển vào trong Report. Thanh Report control có dạng như hình sau.
Các Control chính:
Label: Tạo nhãn, ví dụ như tiêu đề cột ...
Cách thực hiện:
Nhấp chuột trái vào biểu tượng label trên Report Controls
Đưa chuột (khi đó có hình là chữ I) vào vị trí cần đặt label trên report rồi nhấp chuột trái.
Nhập vào dong text cần thể hiện của label.
Field: Đưa dữ liệu từ các trường vào report.
Cách thực hiện:
Nhấp chuột trái vào biểu tượng Field trên Report Controls
Đưa chuột (khi đó có hình là chữ +) vào vị trí cần đặt field trên report rồi nhấp chuột trái. Khi đó giao diện Field Properties xuất hiện như hình sau:
Nhập vào Expression biểu thức hoặc 1 trường.
Chọn OK để kết thúc.
Line: Vẽ các đoạn thẳng.
Cách thực hiện:
Nhấp chuột trái vào biểu tượng Line trên Report Controls
Vẽ một đoạn thẳng lên report.
Rectangle: Vẽ hình chữ nhật (tương tự Line)
Picture/Ole bound control: Đưa ảnh (hoặc đối tượng Ole khác) vào report.
Cách thực hiện:
Nhấp chuột trái vào biểu tượng Picture/Ole trên Report Controls
Đưa chuột vào vị trí cần đặt trên report rồi nhấp chuột trái, khi đó giao diện Picture/Ole properties xuất hiện như hình sau:
Chọn General Field Name rồi gõ vào Control source tên trường ảnh.
3. DataEnvironment
Thiết lập môi trường dữ liệu cho Report.
Cách thực hiện:
Kích phải chuột vào report (trong cửa sổ report designer)
Chọn mục DataEnvironment, khi đó giao diện DataEnvironment xuất hiện như sau:
Kích chuột phải vào nền giao diện DataEnvironment chọn Add và thêm để thêm Table, View vào DataEnvironment.
Lưu ý: Không nhất thiết phải sử dụng DataEnvironment, mà người sử dụng có thể tự tạo ra môi trường này bằng các lệnh mở bảng, view trước khi gọi thực hiện một report nào đó.
4. Ví dụ
Thiết kế một report “danh sách lớp” như mẫu sau: (Ví dụ trên Visual Foxpro)
Học viện KTQS
Phòng Đào tạo
Danh sách lớp
Lớp: ……………………, Khoá: …………………
STT
Mã SV
Họ tên
Ngày sinh
Hộ khẩu
Ghi chú
…
…
…
…
…
…
5. Nhóm dữ liệu (Data Grouping)
Tùy chọn này cho phép “nhóm” dữ liệu theo một tiêu chuẩn nào đó. Ví dụ in danh mục các lớp có thể nhóm theo khóa, theo ngành, theo loại hình đào tạo ...
Cách thực hiện:
Kích phải chuột vào report (trong cửa sổ report designer)
Chọn mục Data Grouping, khi đó giao diện Data Grouping xuất hiện như sau:
Chọn Add để thêm vào các tiêu chuẩn nhóm, có thể nhóm nhiều cấp. Khi một nhóm được thêm vào Report, thì xuất hiện thêm hai Band là Group Header và Group Footer
Group Header: Những thiết kế trong phần này sẽ in lặp lại ở đầu mỗi nhóm
Group Footer: Những thiết kế trong phần này sẽ in lặp lại ở cuối mỗi nhóm
6. Tạo biến trong Report
Kích phải chuột vào report (trong cửa sổ report designer)
Chọn mục Variables..., khi đó giao diện Variables xuất hiện như sau:
Chọn Add để thêm vào các biến. Với mỗi biến có thể thiết lập các tùy chọn sau:
Value to store: Giá trị lưu vào biến
Initial Value: Giá trị khởi tạo
Reset value based on: Khởi tạo lại giá trị của biến tùy thuộc vào đối tượng được chọn.
Calculation type: Hàm tính
Release After report: Xóa biến này khi kết thúc report.
IV. thực hiện (chạy) một report
Trong cửa sổ Project Manager
Cách thực hiện:
Chọn mục Documents
Chọn Report và mở rộng
Chọn Report cần thực hiện
Chọn lệnh Preview
Sử dụng lệnh
Lệnh REPORT FORM
REPORT FORM
[PREVIEW | TO PRINT [PROMPT]]
[NOCONSOLE]
Trong đó:
TenFileReport: Tên file report
PREVIEW: Xem report ở chế độ preview
TO PRINT: In report ra máy in, PROMPT: Xuất hiện hộp thoại Print dialog
NOCONSOLE: Không cho in ra màn hình nền.
Bài tập
Tạo các report đã yêu cầu trong bài 1.