<< Chapter < Page Chapter >> Page >
Mục tiêu: Chương này giới thiệu cách thức để tạo báo cáo bao gồm hiển thị dữ liệu cũng như sắp xếp và phân nhóm dữ liệu.

Học xong chương này, sinh viên có thể:

  • Sử dụng tính năng Report của Microsoft Access trong các ứng dụng nhỏ.
  • Sử dụng Data Report để tạo báo biểu.
  • Sử dụng Crystal Report, công cụ mạnh để tạo báo biểu.

Kiến thức cần thiết:

  • Thư viện đối tượng ActiveX Data Objects (ADO).
  • Môi trường dữ liệu Data Environment.

Tài liệu tham khảo:

Visual Basic 6.0 và Lập trình cơ sở dữ liệu - Chương 21, trang 637 - Nguyễn Thị Ngọc Mai (chủ biên) – Nhà xuất bản Giáo dục - 2001.

SỬ DỤNG MICROSOFT ACCESS ĐỂ LẬP BÁO CÁO

Có hai kỹ thuật để thi hành một báo cáo Access từ ứng dụng VB:

- Sử dụng Automation để phóng một thể hiện (instance) của Microsoft Access, thi hành báo cáo trực tiếp từ trong ứng dụng. Automation là một kỹ thuật cho phép giao tiếp giữa các ứng dụng trên Windows. Ở đây Microsoft Access sẽ làm Automation Server.

- Dùng VSREPORTS của VideoSoft cho phép người sử dụng VB thi hành báo cáo của Microsoft Access bất kể máy của họ có cài đặt Microsoft Access hay là không. Đây là một điều khiển ActiveX chuyển đổi báo cáo từ tập tin MDB thành một định dạng mà ta có thể cung cấp cùng ứng dụng.

Trong bài giảng này, chúng tôi chỉ trình bày cách thứ nhất mặc dù cách này có nhiều hạn chế. Đối với cách thứ hai, để có thể thực hiện được ta cần phải cài đặt một số thư viện liên kết động (DLL). Các thư viện này tương đối khó tìm và nhất là chúng đòi hỏi bản quyền.

Bất lợi của kỹ thuật dùng Automation là buộc người dùng phải chạy một thể hiện (instance) của Microsoft Access cũng như phải cài đặt Microsoft Access trên máy. Để lập trình theo kỹ thuật này, ta tiến hành theo các bước sau:

- Tham chiếu đến Microsoft Access bằng cách từ menu Project chọn Preferences ->Microsoft Access 9.0 Object Library.

- Sau đó ta tạo một đối tượng như là đối tượng ứng dụng của Access như sau:

Dim MSAccess As Access.Application

  • Sau đó ta cần tạo mới đối tượng này cũng như tạo một tham chiếu đến cơ sở dữ liệu chứa báo cáo:

Set MSAccess = New Access.Application

MSAccess.OpenCurrentDatabase(“Database Name”)

- Sử dụng thuộc tính DoCmd để thi hành báo cáo:

MSAccess.DoCmd.OpenReport "Report Name",acViewNormal

- Đóng cơ sở dữ liệu:

MSAccess.CloseCurrentDatabase

Lưu ý: Tránh dùng ràng buộc trễ với Automation

Phiên bản cũ của Automation là OLE Automation, dùng trong VB 3.0 và Microsoft Access 2.0.

Trong VB 3.0, ta có thể viết chương trình như sau:

Dim MSAccess As Object

Set MSAccess = CreateObject(“Access.Application”)

Đoạn chương trình trên hoạt động tốt đối với VB 3.0 nhưng có một cách khác tốt hơn. Thay vì dùng kiểu Object, ta nên chỉ rõ kiểu dữ liệu đối tượng mà Automation Server cung cấp (chẳng hạn Access.Aplication nếu là Access). Bởi vì khi đó, VB không cần thi hành câu truy vấn trên Automation Server mỗi khi ta truy cập nó để xác định kiểu đối tượng cần tạo. Kỹ thuật này gọi là ràng buộc trễ, giờ đây chỉ phủ hợp với 2 tình huống:

  • Ta không biết trước kiểu đối tượng Automation Server.
  • Ta đang sử dụng một môi trường phát triển ứng dụng không hỗ trợ ràng buộc sớm, như VBScript hay ASP.

Questions & Answers

what is defense mechanism
Chinaza Reply
what is defense mechanisms
Chinaza
I'm interested in biological psychology and cognitive psychology
Tanya Reply
what does preconceived mean
sammie Reply
physiological Psychology
Nwosu Reply
How can I develope my cognitive domain
Amanyire Reply
why is communication effective
Dakolo Reply
Communication is effective because it allows individuals to share ideas, thoughts, and information with others.
effective communication can lead to improved outcomes in various settings, including personal relationships, business environments, and educational settings. By communicating effectively, individuals can negotiate effectively, solve problems collaboratively, and work towards common goals.
it starts up serve and return practice/assessments.it helps find voice talking therapy also assessments through relaxed conversation.
miss
Every time someone flushes a toilet in the apartment building, the person begins to jumb back automatically after hearing the flush, before the water temperature changes. Identify the types of learning, if it is classical conditioning identify the NS, UCS, CS and CR. If it is operant conditioning, identify the type of consequence positive reinforcement, negative reinforcement or punishment
Wekolamo Reply
please i need answer
Wekolamo
because it helps many people around the world to understand how to interact with other people and understand them well, for example at work (job).
Manix Reply
Agreed 👍 There are many parts of our brains and behaviors, we really need to get to know. Blessings for everyone and happy Sunday!
ARC
A child is a member of community not society elucidate ?
JESSY Reply
Isn't practices worldwide, be it psychology, be it science. isn't much just a false belief of control over something the mind cannot truly comprehend?
Simon Reply
compare and contrast skinner's perspective on personality development on freud
namakula Reply
Skinner skipped the whole unconscious phenomenon and rather emphasized on classical conditioning
war
explain how nature and nurture affect the development and later the productivity of an individual.
Amesalu Reply
nature is an hereditary factor while nurture is an environmental factor which constitute an individual personality. so if an individual's parent has a deviant behavior and was also brought up in an deviant environment, observation of the behavior and the inborn trait we make the individual deviant.
Samuel
I am taking this course because I am hoping that I could somehow learn more about my chosen field of interest and due to the fact that being a PsyD really ignites my passion as an individual the more I hope to learn about developing and literally explore the complexity of my critical thinking skills
Zyryn Reply
good👍
Jonathan
and having a good philosophy of the world is like a sandwich and a peanut butter 👍
Jonathan
generally amnesi how long yrs memory loss
Kelu Reply
interpersonal relationships
Abdulfatai Reply
Got questions? Join the online conversation and get instant answers!
Jobilize.com Reply

Get Jobilize Job Search Mobile App in your pocket Now!

Get it on Google Play Download on the App Store Now




Source:  OpenStax, Giáo trình visual basic. OpenStax CNX. Jul 29, 2009 Download for free at http://cnx.org/content/col10777/1.1
Google Play and the Google Play logo are trademarks of Google Inc.

Notification Switch

Would you like to follow the 'Giáo trình visual basic' conversation and receive update notifications?

Ask