Để thực hiện một chương trình ngoài giải thuật còn một điều không thể thiếu được đó ngôn ngữ lập trình để làm cho phần mềm đó hoàn chỉnh hơn.Bên cạnh các ngôn ngữ lập trình đa dạng và phong phú ,thì ngôn ngữ lập trình Visual Basic có tính năng cao hơn cả ,giúp cho người dùng trong các công tác tổ chức ,lập dự án,tìm kiếm,lưu trữ,biểu diễn thông tin ,tiết kiệm thời gian. Phần mềm Visual Basic của hãng Microsoft là phần mềm phổ biến ở nước ta hiện nay.Visual Basic là ngôn ngữ lập trình trực quan theo hướng đối tượng lấy ngôn ngữ Basic làm gốc. Sử dụng phần mềm lập trình hướng đối tượng trên Windows sẽ giúp chương trình dễ sử dụng và tiện lợi cho người sử dụng vì nó cung cấp khả năng tạo đối tượng và các lớp bằng cách sử dụng giao diện thay ngôn ngữ,Visual Basic có giao diện đẹp ,các thao tác đơn giản không bị phụ thuộc vào chương trình như các chương trình lập trình trên môi trường DOS.Khả năng kết nối và các công cụ truy vấn giúp cho ta tổ chức tìm kiếm thông tin một cách nhanh chóng khi cơ sở dữ liệu đã được tạo các quan hệ ràng buộc.
61 trang |
Chia sẻ: aloso | Lượt xem: 1650 | Lượt tải: 0
Bạn đang xem trước 20 trang tài liệu Đề tài Chương trình quản lí các số điện thoại đã đăng kí thuê bao, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
LỜI NÓI ĐẦU
Sau một thời gian thực tập và tìm hiểu tại cơ quan Bưu điện tỉnh Lai Châu cũng như tại Phòng Kinh doanh Viễn thông Tin học, cùng với những kiến thức, kinh nghiệm trong quá trình thực tập tôi đã viết nên bản báo cáo tổng hợp này.Trong bản báo cáo tổng hợp này tôi sẽ trình chi tiết, cụ thể về Bưu điện tỉnh Lai Châu và phòng Kinh doanh Viễn thông Tin học nơi tôi đang thực tập.Và trong bản báo cáo này tôi cũng sẽ trình bày luôn về đề tài: ”Chương trình quản lí các số điện thoại đã đăng kí thuê bao”, đây sẽ là đề tài thực tập của tôi và đây cũng là một phần công việc của Phòng Kinh doanh Viễn thông Tin học giao cho tôi.
Ngày nay ,các công nghệ khoa học ,kỹ thuật ngày càng phát triển như vũ bão,trong đó khoa học máy tính cũng phát triển mạnh mẽ và xâm nhập vào mọi lĩnh vực khoa học ,kinh tế ,xã hội ,quản lý ,......máy tính hầu như đều có đóng góp khả năng tuyệt vời của nó tới tất cả các lĩnh vực . Từ việc xây dựng các chương trình khoa học kỹ thuật lớn đến các công việc quản lý thường nhật ,máy tính giúp chúng ta cập nhật ,tìm kiếm và lưu trữ thông tin một cách tốt nhất .
Nhiệm vụ chính của chương trình bao gồm :
+ Khảo sát thực tế
+ Quản lý các số điện thoại đã đăng ký thuê bao
+ Quản lý hoá đơn trả tiền hàng tháng
*.chức năng và nhiệm vụ của hệ thống
Hệ thống quản lý các số điện thoại đã đăng ký thuê bao có chức năng thường xuyên cho phép cập nhật các thông tin về khách hàng đồng thời cho phép tính toán tiền cước cũng như tiền thuê bao hàng tháng . Khi cần được biết thông tin mà các khách hàng đã đăng ký thuê bao thì hệ thống phải có nhiệm vụ đưa ra được thông tin mà các khách hàng đó đã đăng ký .Với chức năng như vậy,hệ thống quản lý các số điện thoại đã đăng ký thuê bao tại một trạm điện thoại có nhiệm vụ luôn cập nhật hồ sơ của khách hàng ,thường xuyên bổ sung những thông tin thay đổi trong quá trình hoạt động của hệ thống . Một nhiệm vụ nữa của hệ thống là cứ cuối tháng phải có nhiệm vụ in hoá đơn tiền hàng tháng của khách hàng tức là hệ thống này cần phải tính tiền cho các khách hàng đã đăng ký thuê bao tại một trạm điện thoại
*.yêu cầu của hệ thống và những khó khăn
Trước một khối lượng lớn các khách hàng đã đăng ký thuê bao cũng như các yêu cầu đặt ra thì việc quản lý theo phương pháp thủ công sẽ không thể đáp ứng được ,do đó gặp rất nhiều khó khăn.Nó đòi hỏi phải có nhiều nhân lực,nhiều thời gian và công sức,mỗi khách hàng của trạm điện thoại cho đăng ký thì có một hồ sơ cho nên việc lưu trữ , tìm kiếm,bổ sung, sửa đổi để đáp ứng yêu cầu không phải là dễ dàng.
Từ những nhược điểm trên ta thấy cần thiết phải có một hệ thống tin học hoá cho việc quản lý các số điện thoại đã đăng ký thuê bao cũng như các hệ thống quản lý khác.
Tuy nhiên khó khăn mà khi làm việc với hệ thống ta phải thực hiện đó là việc tính tiền cho từng khách hàng trong tháng mà quí khách hàng đã gọi . Điều này có nghĩa là chúng ta phải biết được cách tính cước cho từng cuộc gọi với từng khu vực khác nhau , qua khảo sát và nghiên cứu các ưu cầu thực tế mà hệ thống quản lý các số điện thoại đã đăng ký thuê bao đã và đang thực hiện đều tính theo giá cước mà hiện nay cả nước ta đang áp dụng.
* Đối tượng, phạm vi, mục đích của chương trình
Phạm vi, đối tượng : Chương trình “quản lí các số điện thoại đã thuê bao” chỉ quản lí những số điện thoại đã đăng kí thuê bao tại khu vực tỉnh Lai Châu và các huyện, xã trực thuộc
Mục đích : tiết kiệm thời gian tra cứu thông tin về khách hàng, dễ dàng hơn trong việc thu cước điện thoại cuối tháng, tiết kiệm không gian lưu trữ, dễ tìm kiếm, dễ bổ sung và sửa đổi.
* Phương pháp nghiên cứu :
Chương trình được thiết kế theo phương pháp thiết kế từ đáy lên
* Kết cấu : gồm 2 phần
Phần I : phân tích hệ thống
Phần II : nội dung chính của chương trình
CHƯƠNG II: GIỚI THIỆU VỀ ĐƠN VỊ THỰC TẬP
1. Sơ lược về Bưu Điện Tỉnh Lai Châu
BƯU ĐIỆN TỈNH LAI CHÂU
(Lai Chau Posts & Telecommunications)
Trụ sở : Phong Châu 2 Phường Đoàn Kết Tỉnh Lai Châu
Điện thoại : (84-231)875580
Fax : (84-231)875584
Nơi thực tập : Phòng Kinh doanh Viễn Thông Tin Học
Lĩnh vực hoạt động : Bưu điện
Ngành nghề : Bưu chính, cố định, di động, truyền số liệu, internet, Gphone, dịch vụ khác
Sản phẩm : Sản phẩm in, thiết bị bưu chính, sản phẩm phần mềm,
Trụ sở : Phong Châu 2 Phường Đoàn Kết Tỉnh Lai Châu
Kể từ ngày 01/01/2008 Tập đoàn BCVT Việt nam thực hiện việc chia tách tổng công ty bưu chính viễn thông thành 2 tổng công ty.
1/ Tổng công ty Bưu chính Việt Nam.
2/ Tổng công ty Viễn thông Việt Nam.
Bưu điện tỉnh Lai Châu được thành lập theo QĐ số 558/QĐ-TCCB/HĐQT
Ngày 06 tháng 12 năm 2007 của Tập đoàn Bưu chính Viễn thông Việt Nam. Với hình thức giữ nguyên hiện trạng của Bưu điện tỉnh Lai Châu cũ. Trực thuộc tổng công ty Bưu chính Việt Nam.
- Giám đốc: Ông Trần Quang Hợp.
- Phó giám đốc: Ông Đặng nhân Có.
- Bưu điện tỉnh Lai Châu được phép hoạt động sản xuất kinh doanh trong các lĩnh vực, ngành nghề kinh doanh theo giấy phép đăng ký số:
0106000918 ngày 10/08/2007 của tổng công ty Bưu chính Việt Nam.
Lĩnh vực hoạt động chính : Bưu điện
Ngành nghề :
Kinh doanh khai thác bưu chính viễn thông
Sửa chữa thiết bị chuyên ngành bưu chính viễn thông
Tư vấn, lắp đặt, bảo trì mạng tin học, kinh doanh vật tư, thiết bị và phần mềm tin học
Tư vấn đầu tư xây dựng, khảo sát, thiết kế, thi công xây dựng, xây lắp các công trình bưu chính viễn thông
Dịch vụ vận chuyển, giao nhận hàng hoá và kho vận
Ngoài ra được kinh doanh các ngành nghề khác được tổng công ty BCVN cho phép và phù hợp với qui định của pháp luật
Sản phẩm: Sản phẩm in, thiết bị bưu chính, sản phẩm phần mềm,
2. Các phòng ban chức năng:
- Mô hình quản lí của cơ quan:
Giám đốc
Phó Giám đốc
P. Tổng hợp hành chính
P. Kinh doanh bưu chính
P. Kế hoạch đầu tư
P. Tổ chức cán bộ lao động tiền lương
P. Kinh doanh viễn thông tin học
P. Thống kê kế toán
*Lãnh đạo Bưu Điện Lai Châu:
- Giám Đốc: Ông Trần Quang Hợp
- Phó Giám Đốc: Ông Đặng Nhân Có
*Đảng Uỷ, Công Đoàn, Đoàn Thanh Niên
Chủ Tịch Công Đoàn
Văn phòng đảng uỷ
Văn phòng đoàn thể
*Các đơn vị chức năng và sự nghiệp
- Phòng Tổng Hợp hành chính:
+) Phòng Hành chính Tổng hợp có chức năng nhiệm vụ tham mưu giúp Giám Đốc về công tác hành chính, văn thư lưu trữ, kế hoạch tổng hợp, công tác đối ngoại, tham gia một số dự án, quản lý và điều hành phương tiện xe ô tô cơ quan, thực hiện các nhiệm vụ khác do Giám Đốc giao
- Phòng Kinh Doanh Bưu Chính: Kinh doanh các sản phẩm bưu chính: tem, thư, dịch vụ điện thoại trong và ngoài nước, nhận và chuyển các bưu phẩm, hoạt động tiết kiệm bưu điện, bán thẻ điện thoại,sim card, thẻ game online, …
- Phòng Kế Hoạch Đầu Tư: Tham mưu giúp ban lãnh đạo thực hiện chức năng quản lí về nhà nước về kế hoạch và đầu tư bao gồm các lĩnh vực: Tham mưu tổng hợp về quy hoạch, kế hoạch phát triển kinh tế xã hội, và đầu tư. Tổ chức thực hiện, kiến nghị và đề xuất về cơ chế chính sách quản lí kinh tế xã hội ở địa bàn, đầu tư trong và ngoài nước về lĩnh vực viễn thông ở địa phương.
- Phòng TCCB LĐTL: Giúp giám đốc trong công tác quản lí, quy hoạch, đào tạo, bồi dưỡng đội ngũ cán bộ, công chức, kiện toàn tổ chức bộ máy, đảm bảo thực hiện đúng và kịp thời các chế độ chính sách của nhà nước đối với cán bộ, công chức, thực hiện công tác bảo vệ an toàn cơ quan, an ninh trật tự trong cơ quan.
+) Quản lý toàn bộ nhân sự, cơ sở vật chất và phương tiện làm việc của đơn vị
+) Quản lí và hướng dẫn thực hiện các chính sách về tiền lương, phụ cấp theo lương, bảo hiểm xã hội (Hưu trí, mất sức, thôi việc, tai nạn lao động,…
+) Đề xuất việc xây dựng và tổ chức thực hiện các quy hoạch về đội ngũ cán bộ (cán bộ chuyên môn và cán bộ quản lí)
+) Đề xuất việc xây dựng, hướng dẫn thực hiện các nội dung về định biên và quản lý biên chế, tổ chức tuyển dụng, sử dụng, điều động, thuyên chuyển, đề bạt, đào tạo, bồi dưỡng, khen thưởng và kỷ luật đối với đội ngũ cán bộ công chức trong cơ quan.
- Phòng Kế Toán:
+) Phòng có chức năng quản lý công tác tài chính kế toán tại cơ quan theo các Luật Kế toán . Ngân sách và chế độ chính sách hiện hành của Nhà nước về lĩnh vực tài chính kế toán.
+) Thu thập , xử lý thông tin, sô liệu kế toán theo đối tượng và nội dung công việc kế toán, theo chuẩn mực và chế độ kế toán
+) Kiểm tra, giám sát các khoản thu, chi tài chính, các nghĩa vụ thu, nộp, thanh toán nợ . Kiểm tra việc quản lý, sử dụng tài sản và nguồn hình thành tài sản . Phát hiện và ngăn ngừa các hành vi vi phạm pháp luật về tài chính, kế toán.
+) Phân tích thông tin, số liệu kế toán ; tham mưu, đề xuẩt các giải pháp phục vụ yêu cầu quản trị và quyết định kinh tế , tài chính của cơ quan
+) Cung cấp thông tin và số liệu kế toán theo qui định của pháp luật
+) Tổ chức điều hành bộ máy kế toán thực hiện công tác kế toán trong cơ quan theo quy định chức năng , nhiệm vụ của Phòng. Giúp lãnh đạo cơ quan giám sát tài chính của cơ quan
+) Điều hành chi tiêu ngân sách
+) Lập kế hoạch ngân sách hàng năm
+) Kiểm tra, duyệt chứng từ thu, chi, chứng từ thanh toán
+) Tham mưu cho Ban gi ám đốc về chế độ tài chính kế toán
+) Lập báo cáo tài chính
+) Lập Dự toán ngân sách hàng năm
+) Chịu trách nhiệm trực tiếp kiểm tra đôn đốc, giải quyết các vướng mắc về giao dịch với ngân hàng, kho bạc. Chỉ đạo việc đối chiếu thu hồi công nợ, kiểm quỹ tiền mặt và đối chiếu định kỳ cũng như đột xuất.
+) Cập nhật các văn bản pháp luật về lĩnh vực tài chính kế toán
+) Yêu cầu các bộ phận có liên quan trong cơ quan cung cấp đầy đủ, kịp thời tài liệu liên quan đến công việc kế toán và giám sát tài chính của mình
+) Chịu trách nhiệm nộp các khoản thuế: thuế môn bài, thuế GTGT, thuế thu nhập.
- Phòng Kinh Doanh Viễn Thông: - Tin Học:
+) Phòng kinh doanh Viễn thông -Tin học trực thuộc Bưu điện tỉnh có nhiệm vụ lập kế hoạch, phương án tổ chức kinh doanh các dịch vụ Bưu chính viễn thông trên địa bàn tỉnh Lai Châu.
+)Quản lý toàn bộ hệ thống tin học bưu điện tỉnh Lai Châu và toàn bộ các huyện trong phạm vi của tỉnh: quản lí phát hành báo chí, kinh doanh dịch vụ internet,…
+) Phụ trách công tác quảng cáo, tiếp thị, khuyến mãi.v.vVà đang hợp tác cùng vina game về việc cài đặt các game online của vina game và bán các loại thẻ game online của VNG tại Tỉnh Lai Châu.
+) Lắp đặt mới và sửa chữa, xử lí các sự cố các máy vi tính phục vụ cho hoạt động kinh doanh của các bưu điện huyện trong phạm vi của tỉnh.
- Công Đoàn:
+) Chức năng, Nhiệm vụ, quyền hạn
Đại diện, bảo vệ lợi ích hợp pháp chính đáng của công nhân viên chức lao động- Tham gia quản lý Nhà nước, quản lý kinh tế - xã hội;
Tham gia kiểm tra, giám sát hoạt động của cơ quan Nhà nước, tổ chức kinh tế - xã hội
Giáo dục, động viên công nhân viên chức lao động phát huy quyền làm chủ đất nước, thực hiện nghĩa vụ công dân, xây dựng và bảo vệ Tổ quốc quốc
Tuyên truyền đường lối, chủ trương của Đảng, chính sách, pháp luật của Nhà nước và nhiệm của tổ chức Công đoàn.
Đại diện, bảo vệ các quyền, lợi ích hợp pháp, chính đáng của đoàn viên, công nhân viên chức lao động thuộc Ngành.
Nghiên cứu tham gia quản lý Nhà nước về kinh tế - xã hội của Ngành và tham gia xây dựng các chế độ, chính sách Ngành.
Nghiên cứu đề xuất với Tổng Liên đoàn Lao động Việt Nam về hệ thống tổ chức, mô hình tổ chức, cụ thể hoá chức năng, nhiệm vụ của mỗi cấp trong hệ thống Công đoàn Bưu điện Việt Nam.
Hướng dẫn chỉ đạo hoạt động của các công đoàn cấp trên cơ sở và công đoàn cơ sở trực thuộc Công đoàn Bưu điện Việt Nam.
Chủ động phối hợp với Liên đoàn Lao động tỉnh, thành phố xây dựng quy chế và chỉ đạo hướng dẫn các công đoàn cơ sở trực thuộc tại địa phương triển khai các hoạt động.
* Các đơn vị trực thuộc bưu điện tỉnh:
Bưu điện huyện Tam Đường
Bưu điện huyện Than Uyên
Bưu điện huyện Tân Uyên
Bưu điện huyện Phong Thổ
Bưu điện huyện Mường Lay
Bưu điện huyện Mường so
Và các điểm bưu điện văn hoá xã
CHƯƠNG III
CHƯƠNG TRÌNH QUẢN LÍ CÁC SỐ ĐIỆN THOẠI ĐÃ ĐĂNG KÍ THUÊ BAO
Phần I : Phân tích hệ thống
I . Các chức năng cơ bản của hệ thống:
1>Quản lý thông tin về khách hàng :
+ Cập nhật thông tin về khách hàng.
+ Đưa ra các thông tin về hoá đơn trả tiền của khách hàng.
2> Tra cứu,Tìm kiếm :
+ Tra cứu theo số điện thoại.
+ Tra cứu theo họ tên.
+ Tra cứu theo các số liệu tổng hợp.
3> Báo cáo,Thống kê
+ Lập và xuất hoá đơn trả tiền hàng tháng của khách hàng.
+ Thống kê các khách hàng đã trả tiền trong tháng.
+ Báo cáo về tình hình chung của bưu điện trong tháng.
II.Biểu đồ phân cấp chức năng của hệ thống quản lý các số điện
thoại đã đăng ký thuê bao
Quản lý các số đIện thoại đã thuê bao
Quản lý khách hàng
Tra cứu, tìm kiếm
BÁO CÁO, thống kê
Cập nhật Thông tin khách hàng
Đưa ra các hoá đơn trả tiền khách hàng
Tra cứu theo số điện thoại
Tra cứư theo họ tên
Tra cứu theo số liệu tổng hợp
In các hóa đơn trả tiền của khách hàng
Thống kê các khách hàng đã trả tiền
Đưa ra tình hình chung của bưu điện
Biểu đồ luông dữ liệu mức khung cảnh cho ta cái nhìn khái quát về quá trình hoạt động của hệ thống.
Các thông tin cần xử lý
Hệ thống quản lý các số đIện thoại đã thuê bao
Khách hàng
Thông tin
Các nhân viên bưu điện
Thông tin đã xử lý
Các thông báo tới khách hàng
Giải thích: Tác nhân ngoài là khách hàng sẽ đưa thông tin cá nhân tới cho hệ thống khi các khách hàng đến đăng ký thuê bao. Hệ thống có nhiệm vụ lưu trữ các thông tin đó gửi tới các nhân viên bưu điện, tác nhân ngoài là nhân viên bưu điện sẽ thông qua đó xử lý các thông tin đó và cuối tháng sẽ gửi các yêu cầu cho khách hàng .
Biểu Đồ Luồng Dữ Liệu Mức Dưới Đỉnh
Khách hàng
Qu¶n lý kh¸ch hµng
Tra cøu, t×m kiÕm
B¸o c¸o, thèng kª
Hố sơ lưu hàng tháng th¸ng
Nh©n viªn bu ®iÖn
Thông tin khách hàng
*Giải thích:
Khi thông tin về khách hàng được chuyển vào hệ thống, chức năng Quản lý khách hàng sau khi phân loại và xử lý sẽ đưa thông tin vào kho Thông tin khách hàng và Kho hồ sơ lư trữ hàng tháng. Chức năng báo cáo thống kê cứ đến cuối tháng sẽ thu thập thông tin từ kho hồ sơ lưu trữ hàng tháng sau đó sẽ tổng kết và đưa ra các thông tin về khách hàng cũng như tình hình hàng tháng của bưu điện. Mổi khi có khách hàng cần biết đến các thông tin về khách hàng khi đó chức năng tra cứu và tìm kiếm sẽ cập nhật thông tin từ kho lưu trữ thông tin khách hàng để đưa ra các thông tin cần thiết
*chức năng quản lý khách hàng
Cập nhật thông tin 1.1 khách hàng
Đưa ra các hoá đơn trả tiền của 1.2
khách hàng
Khách hàng
Hồ sơ khách hàng
Hồ sơ lưu hàng tháng
Hoá đơn trả tiền hàng tháng
*Giải thích:
Khi khách hàng đăng ký thuê bao thông tin khách hàng được lưu trữ bởi chức năng cập nhật thông tin khách hàng chức năng này sẽ lưu trữ thông tin của khách hàng, để đưa ra thông tin các hoá đơn của khách hàng thì chức năng đưa ra các hoá đơn trả tiền của khách hàng sẽ cập nhật thông tin từ kho hồ sơ lưu trữ hàng tháng. Với mổi thông tin đó lại được lưu trữ vào kho hoá đơn trả tiền hàng tháng.
* Chức năng tra cứu, tìm kiếm
Nhân viên
Tra cứu theo 2.1
số điện thoại
Tra cứu theo 2.2 2.2
họ tên
Tra cứu 2.3
Tổng hợp
Hồ sơ hàng tháng
Thông tin khách hàng
* Giải thích:
Khi có tác nhân ngoài là nhân viên bưu điện theo yêu cầu của khách hàng cần các thông tin về một quí khách hàng nào đó khi đó tuỳ thuộc vào yêu cầu mà nhân viên có thể tra cứu dựa vào sự hoạt động của các chức năng. Hai chức năng tra cứu theo Họ tên và chức năng tra cứu theo địa chỉ truy có thể cập nhật thông tin từ kho thông tin khách hàng từ đó phân loại cho phù hợp với yêu cầu mà nhân viên bưu điện cần, riêng chức năng tra cứu theo số liệu tổng hợp có thể truy nhập thông tin từ hai kho dữ liệu đó là hồ sơ hàng tháng và thông tin khách hàng. Để giảm thời giản truy cập hai chức năng tra cứu theo Họ tên và chức năng tra cứu theo địa chỉ có thể kết nối trao đổi thông tin với chức năng tra cứu theo số liệu tổng hợp.
* chức năng báo cáo, thống kê
Nhân viên
In hoá đơn 3.1 trả tiền
tr¶ tiÒn
Thèng kª kh¸ch 3.2 hµng ®· tr¶ tiÒn
Đưa ra tình hình chung của bưu điện 3.3
Ho¸ ®¬n tr¶ tiÒn hµng th¸ng
Thông tin khách hàng
kh¸ch hµng
Hồ sơ lưu
hµng th¸ng
* Giải thích
Đến cuối mổi tháng các nhân viên bưu điện phải có nhiệm vụ gửi các hoá đơn thanh toán tiền cho các các cuộc gọi hàng tháng của quí khách hàng đã đăng ký thuê bao. Từ chức năng in hoá đơn trả tiền của khách hàng phải được cập nhật thông tin từ kho Hoá đơn trả tiền của khách hàng, mặt khác chức năng thống kê khách hàng đã trả tiền phải được cập nhật từ kho Hoá đơn trả tiền hàng tháng, hồ sơ lưu hàng tháng để có thể đưa ra thông tin chính xác các khách hàng đã trả tiền. Chức năng đánh giá tình hình chung của bưu điện phải được cập nhật đầy đủ thông tin để có thể đánh giá chính xác quá trình hoạt động của bưu điện trong tháng.
Từ quá trình phân tích ta có thể đưa ra lược đồ cơ sở dữ liệu
Người dùng
Gọi
HO
TEN
DC
MASDT
MAVUNG
SODT
THOI GIAN
TIEN
NGAY GOI
MASDT
Thiết Kế Các File Dữ Liệu
1.1. Bảng hồ sơ lưu trữ thông tin khách hàng thuê bao
STT
Tên trường
Kiểu
Độ rộng
Giải thích
1
MASDT
Text
50
Mã số điện thoại
2
HO
Text
30
Họ khách hàng
3
TEN
Text
40
Tên khách hàng
4
DC
Text
60
Địa chỉ khách hàng
1.2. Bảng hồ sơ lưu trữ thông tin khách hàng thuê bao
STT
Tên trường
Kiểu
Độ rộng
Giải thích
1
MAVUNG
Text
50
Mã vùng
2
MASDT
Text
40
Mã số đIện thoại
3
SODT
Number
40
Số điện thoại khách thuê bao
4
THOIGIAN
Date/Time
60
Thời gian gọi của khách hàng
5
TIEN
Number
70
Số tiền gọi cho mổi cuộc
Phân Tích Chương trình
I. Giới Thiệu Ngôn Ngữ
Để thực hiện một chương trình ngoài giải thuật còn một điều không thể thiếu được đó ngôn ngữ lập trình để làm cho phần mềm đó hoàn chỉnh hơn.Bên cạnh các ngôn ngữ lập trình đa dạng và phong phú ,thì ngôn ngữ lập trình Visual Basic có tính năng cao hơn cả ,giúp cho người dùng trong các công tác tổ chức ,lập dự án,tìm kiếm,lưu trữ,biểu diễn thông tin ,tiết kiệm thời gian. Phần mềm Visual Basic của hãng Microsoft là phần mềm phổ biến ở nước ta hiện nay.Visual Basic là ngôn ngữ lập trình trực quan theo hướng đối tượng lấy ngôn ngữ Basic làm gốc. Sử dụng phần mềm lập trình hướng đối tượng trên Windows sẽ giúp chương trình dễ sử dụng và tiện lợi cho người sử dụng vì nó cung cấp khả năng tạo đối tượng và các lớp bằng cách sử dụng giao diện thay ngôn ngữ,Visual Basic có giao diện đẹp ,các thao tác đơn giản không bị phụ thuộc vào chương trình như các chương trình lập trình trên môi trường DOS.Khả năng kết nối và các công cụ truy vấn giúp cho ta tổ chức tìm kiếm thông tin một cách nhanh chóng khi cơ sở dữ liệu đã được tạo các quan hệ ràng buộc.
Tóm lại ,ngôn ngữ lập trình hướng đối tượng này là một công cụ cần thiết cho người sử dụng có thể cập nhật, lưu trữ, tìm kiếm, xem sửa một cách nhanh chóng.
Với mong muốn áp dụng Visual Basic vào công tác quản lý,em xin thực hiện đề tài : Quản Lý Các Số Điện Thoại Đã Đăng Ký Thuê Bao trong bài tập lớn này.Ngoài ra trong chương trình em còn sử dụng ngôn ngữ lập trình SQL(Structer Query Language )đây là ngôn ngữ rất mạnh về truy vấn dữ liệu
PHẦN II. NỘI DUNG CHƯƠNG TRÌNH
Chương trình Quản lý số điện thoại đã đăng ký thuê bao cần đạt được các yêu cầu tối thiểu sau :
+ Việc cập nhật các thông tin khách hàng, thông tin về hoá đơn trả tiền của khách hàng.
+ Việc tìm kiếm đơn giản ,nhanh chóng ,chính xác.
+ Việc in ấn các công văn tiện lợi ,đẹp ,dễ nhìn.
Trong bài tập lớn này với đề tài Quản lý công văn đến được lập bằng ngôn ngữ lập trình hướng đối tượng Visual Basic 6.0.
Chương trình sử dụng hệ quản trị cơ sở dữ liệu Access để lưu trữ các thông tin về khách hàng đã đăng ký thuê bao với các thông tin : thời gian cho từng cuộc gọi, số tiền cho từng cuộc gọi…
Chương trình Quản lý số điện thoại đã đăng ký thuê bao gồm có 6 Form thực hiện các thao tác sau.
+ Form 1: Form này để người sử dụng bắt đầu vào chương trình chính.Giao diện Form như là một logo.Khi vào chương trình Form có chức năng như là nền cho chương trình.
+ Form2 : là Form có tác dụng cập nhật tất cả các khách hàng đã đăng ký thuê bao công việc này bao gồm đưa ra thông tin về địa chỉ, số điện thoại mà khách hàng này đã đăng ký. Form này có thể đưa ra được tất cả các khách hàng có trong cơ sỡ dữ liệu.
+ Form3 ( Form in khách hàng) : tại đây người sử dụng có thể in ra các khách hàng nếu cần thiết
+ Form 4 (Form tìm kiếm) :là Form để cho các nhân viên bưu điện khi có khách hàng gọi điện đến thì có thể tìm kiếm một cách dễ dàng hơn, nó cho phép tìm kiếm theo địa chỉ, theo số điện thoại mà khách hàng đã thuê bao, nếu như tìm thấy các điều kiện thoả mãn thì có thể hiện ra tát cả các trường hoặc một trường nào đó tuỳ vào yêu cầu tìm kiếm.
+ Form 5 (Form In ra các hoá đơn trả tiền của khách hàng) :với tất các khách hàng đã đăng ký thuê bao có các cuộc gọi trong tháng sẽ được in ra cho các nhân viên bưu điện cuối mổi tháng.
+ Form 6 (Form in ấn và tính toán) :dùng để tính toán tiền cho mổi cuộc gọi của khách hàng tuỳ thuộc vào vùng gọi của khách hàng và số thời gian mà quí khách hàng đã gọi, mổi khi chương trình chạy thì việc tính tiền sẽ được tiến hành và được lưu trữ vào cơ sỡ dữ liệu đã có sẵn.Trên Form này có các nút lệnh cho phép nhân viên có thể xuất hoá đơn trả tiền hàng tháng của khách hàng và tổng số tiền mà quí khách hàng phải trả trong tháng.
I. Form mở đầu.
Form này mục đích chủ yếu để giới thiệu chương trình bao gồm ba nút lệnh:
+ Các chức năng bao gồm nội dung của tất cả chương trình
+ Trợ giúp hướng dẩn cánh sử dụng chương trình,và người viết chương trình.
+ Thoát giúp cho người sử dụng có thể thoát khỏi chương trình một cách dể dàng.
Các phương thức được sử dụng trong Form này
Private Sub MNUEXIT_Click()
End
End Sub
Private Sub mnugoi_Click()
End Sub
Private Sub mnuin_Click()
xuly.WindowState = 1
CUSTOR.show
End Sub
Private Sub MNUTIM_Click()
Form1.WindowState = 1
tim.show
End Sub
Private Sub MNUTT_Click()
Form1.WindowState = 1
inra.show
End Sub
Private Sub MNUTTT_Click()
Form1.WindowState = 1
xuly.show
End Sub
Form II (Cập Nhật Thông Tin Khách Hàng)
Từ Form chính nếu bạn chọn trên thanh Menu chức năng thông tin khách hàng->cập nhật hoặc bạn củng có thể ấn (Ctr-C) khi đó Form cập nhật sẽ hiện ra cho phép bạn có thể xem thông tin các khách hàng đã đăng ký thuê bao.
Các phương thức được sử dụng trong Form này
Dim j As Integer
Dim i As Integer
If Val(tu.Text) Val(den.Text) Then
d.Recordset.MoveFirst
For j = 1 To Val(tu.Text)
d.Recordset.MoveNext
Next
j = j - 1
d.Recordset.MovePrevious
End If
For j = Val(tu.Text) To Val(den.Text)
T.Text = ""
T.Text = ""
T.Text = " THONG TIN CAC KHACH HANG DA THUE BAO " & Chr(13) & Chr(10) & Chr(13) & Chr(10)
'***************'
T.Text = T.Text & " PHONE NUMBER : " & d.Recordset.Fields("MASDT") & Chr(13) & Chr(10)
T.Text = T.Text & " FIRST NAME : " & d.Recordset.Fields("HO") & Chr(13) & Chr(10)
T.Text = T.Text & " LAST NAME : " & d.Recordset.Fields("TEN") & Chr(13) & Chr(10)
T.Text = T.Text & " ADRESS : " & d.Recordset.Fields("DC") & Chr(13) & Chr(10)
T.Text = T.Text & " LAI CHAU POST OFFICE " & Chr(13) & Chr(10)
If d.Recordset.EOF False Then
d.Recordset.MoveNext
Printer.EndDoc
End If
Next
End Sub
Private Sub Command2_Click()
thu.Text = ""
If d.Recordset.BOF = False Then
d.Recordset.MovePrevious
End If
If d.Recordset.EOF Then
hdthu = d.Recordset.RecordCount
hdthu = hdthu - 1
End If
If d.Recordset.BOF = False Then
If hdthu = 0 Then
hdthu = 1
thu.Text = hdthu
T.Text = ""
End If
End If
'***************'
If d.Recordset.BOF = True Then
MsgBox "YOU DON'T TO CONTINUE "
Exit Sub
Else
T.Text = ""
T.Text = " THONG TIN CAC KHACH HANG DA THUE BAO " & Chr(13) & Chr(10) & Chr(13) & Chr(10)
'***************'
T.Text = T.Text & " PHONE NUMBER : " & d.Recordset.Fields("MASDT") & Chr(13) & Chr(10)
T.Text = T.Text & " FIRST NAME : " & d.Recordset.Fields("HO") & Chr(13) & Chr(10)
T.Text = T.Text & " LAST NAME : " & d.Recordset.Fields("TEN") & Chr(13) & Chr(10)
T.Text = T.Text & " ADRESS : " & d.Recordset.Fields("DC") & Chr(13) & Chr(10)
T.Text = T.Text & " LAI CHAU POST OFFICE " & Chr(13) & Chr(10)
End If
End Sub
Private Sub Command3_Click()
thu.Text = ""
If d.Recordset.EOF = False Then
d.Recordset.MoveNext
End If
If d.Recordset.BOF Then
hdthu = hdthu + 1
If hdthu = d.Recordset.RecordCount + 1 Then
hdthu = d.Recordset.RecordCount
thu.Text = hdthu
T.Text = ""
End If
End If
'***************'
If d.Recordset.EOF = True Then
MsgBox "I'M SORRY YOU DON'T TO CONTINUE"
Exit Sub
Else
T.Text = " THONG TIN CAC KHACH HANG DA THUE BAO " & Chr(13) & Chr(10) & Chr(13) & Chr(10)
'***************'
T.Text = T.Text & " PHONE NUMBER : " & d.Recordset.Fields("MASDT") & Chr(13) & Chr(10)
T.Text = T.Text & " FIRST NAME : " & d.Recordset.Fields("HO") & Chr(13) & Chr(10)
T.Text = T.Text & " LAST NAME : " & d.Recordset.Fields("TEN") & Chr(13) & Chr(10)
T.Text = T.Text & " ADRESS : " & d.Recordset.Fields("DC") & Chr(13) & Chr(10)
T.Text = T.Text & " LAI CHAU POST OFFICE " & Chr(13) & Chr(10)
End If
'+++++++++++++++++++++++++++++++++++++++++++++++++++++
End Sub
Private Sub Command4_Click()
Form1.WindowState = 0
Unload Me
End Sub
Private Sub den_Change()
If Not IsNumeric(den.Text) Then
den.Text = ""
Else
If (Val(den.Text) > d.Recordset.RecordCount) Or (Val(den.Text) < 1) Then
den.Text = ""
End If
End If
End Sub
Private Sub Form_Load()
hdthu = 1
d.DatabaseName = App.Path & "\PHONE.mdb"
d.Refresh
d.RecordSource = "NGDUNG"
d.Refresh
d.Recordset.MoveLast
hdthu = d.Recordset.RecordCount
thu.Text = hdthu
T.Text = ""
T.Text = " THONG TIN CAC KHACH HANG DA THUE BAO " & Chr(13) & Chr(10) & Chr(13) & Chr(10)
'***************'
T.Text = T.Text & " PHONE NUMBER : " & d.Recordset.Fields("MASDT") & Chr(13) & Chr(10)
T.Text = T.Text & " FIRST NAME : " & d.Recordset.Fields("HO") & Chr(13) & Chr(10)
T.Text = T.Text & " LAST NAME : " & d.Recordset.Fields("TEN") & Chr(13) & Chr(10)
T.Text = T.Text & " ADRESS : " & d.Recordset.Fields("DC") & Chr(13) & Chr(10)
T.Text = T.Text & " LAI CHAU POST OFFICE " & Chr(13) & Chr(10)
End Sub
Private Sub show_Click()
inra.show
End Sub
Private Sub sobanin_Change()
If Not IsNumeric(sobanin.Text) Then
sobanin.Text = ""
Else
If Val(sobanin.Text) < 1 Then
sobanin.Text = ""
End If
End If
End Sub
Private Sub thu_Change()
tu.Text = thu.Text
den.Text = thu.Text
End Sub
Private Sub tu_Change()
If Not IsNumeric(tu.Text) Then
tu.Text = ""
Else
If (Val(tu.Text) > d.Recordset.RecordCount) Or (Val(tu.Text) < 1) Then
tu.Text = ""
End If
End If
End Sub
Private Sub tu_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
den.SetFocus
End If
End Sub
FORM III(In khách Hàng)
Từ Form chính nếu bạn chọn trên thanh Menu chức năng bạn chọn Menu thông tin khách hàng->in khách hàng hoặc bạn củng có thể ấn (Ctr-A) khi đó Form in khách hàng sẽ hiện ra cho phép bạn có thể in bất kỳ khách hàng nào nếu bạn muốn đIều này giúp cho các nhân viên bưu điện dễ dàng truy cập hơn
*Các Phương Thức
Public cvthu As Integer
Private Sub Cmd01_Click(Index As Integer)
End Sub
Private Sub cmd2_Click()
If Not Data1.Recordset.BOF Then
Data1.Recordset.MovePrevious
Else
Data1.Recordset.MoveLast
End If
End Sub
Private Sub Cmd3_Click()
If Not Data1.Recordset.EOF Then
Data1.Recordset.MoveNext
Else
Data1.Recordset.MoveFirst
End If
End Sub
Private Sub Cmd4_Click()
Data1.Recordset.MoveLast
End Sub
Private Sub cd1_Click()
Data1.Recordset.MoveFirst
thu.Caption = 1
T.Text = ""
T.Text = T.Text & " CONG HOA XA HOI CHU NGHIA VIET NAM " & Chr(13) & Chr(10)
T.Text = T.Text & " Doclap_tudo_hanhphuc " & Chr(13) & Chr(10)
T.Text = T.Text & " o0o " & Chr(13) & Chr(10)
T.Text = T.Text & " LOI CAM ON TOI CAC KHACH HANG DA THUE BAO " & Chr(13) & Chr(10)
T.Text = T.Text & " KINH GUI ONG\BA : " & Data1.Recordset.Fields("HO") & Chr(13) & Chr(10)
T.Text = T.Text & " NAME : " & Data1.Recordset.Fields("TEN") & Chr(13) & Chr(10)
T.Text = T.Text & " SO MAY : " & Data1.Recordset.Fields("MASDT") & Chr(13) & Chr(10)
T.Text = T.Text & " ADDRESS : " & Data1.Recordset.Fields("DC") & Chr(13) & Chr(10)
T.Text = T.Text & " XIN CHAN THANH CAM ON QUI KHACH HANG DA DUNG THUE BAO CUA CHUNG TOI " & Chr(13) & Chr(10)
T.Text = T.Text & " MOI THAC MAC XIN GUI CHO CHUNG TOI THEO SO MAY " & Chr(13) & Chr(10)
T.Text = T.Text & " 0231875101 "
End Sub
Private Sub cd2_Click()
If thu.Caption > 1 Then
Data1.Recordset.MovePrevious
thu.Caption = thu.Caption - 1
T.Text = ""
T.Text = T.Text & " CONG HOA XA HOI CHU NGHIA VIET NAM " & Chr(13) & Chr(10)
T.Text = T.Text & " Doclap_tudo_hanhphuc " & Chr(13) & Chr(10)
T.Text = T.Text & " o0o " & Chr(13) & Chr(10)
T.Text = T.Text & " LOI CAM ON TOI CAC KHACH HANG DA THUE BAO " & Chr(13) & Chr(10)
T.Text = T.Text & " KINH GUI ONG\BA : " & Data1.Recordset.Fields("HO") & Chr(13) & Chr(10)
T.Text = T.Text & " NAME : " & Data1.Recordset.Fields("TEN") & Chr(13) & Chr(10)
T.Text = T.Text & " SO MAY : " & Data1.Recordset.Fields("MASDT") & Chr(13) & Chr(10)
T.Text = T.Text & " ADDRESS : " & Data1.Recordset.Fields("DC") & Chr(13) & Chr(10)
T.Text = T.Text & " XIN CHAN THANH CAM ON QUI KHACH HANG DA DUNG THUE BAO CUA CHUNG TOI " & Chr(13) & Chr(10)
T.Text = T.Text & " MOI THAC MAC XIN GUI CHO CHUNG TOI THEO SO MAY " & Chr(13) & Chr(10)
T.Text = T.Text & " 0231875101 "
Else
MsgBox "ban ghi da het ", , "in ban ghi cuoi"
Exit Sub
End If
End Sub
Private Sub cd3_Click()
If thu.Caption < Data1.Recordset.RecordCount Then
Data1.Recordset.MoveNext
thu.Caption = thu.Caption + 1
T.Text = ""
T.Text = T.Text & " CONG HOA XA HOI CHU NGHIA VIET NAM " & Chr(13) & Chr(10)
T.Text = T.Text & " Doclap_tudo_hanhphuc " & Chr(13) & Chr(10)
T.Text = T.Text & " o0o " & Chr(13) & Chr(10)
T.Text = T.Text & " LOI CAM ON TOI CAC KHACH HANG DA THUE BAO " & Chr(13) & Chr(10)
T.Text = T.Text & " KINH GUI ONG\BA : " & Data1.Recordset.Fields("HO") & Chr(13) & Chr(10)
T.Text = T.Text & " NAME : " & Data1.Recordset.Fields("TEN") & Chr(13) & Chr(10)
T.Text = T.Text & " SO MAY : " & Data1.Recordset.Fields("MASDT") & Chr(13) & Chr(10)
T.Text = T.Text & " ADDRESS : " & Data1.Recordset.Fields("DC") & Chr(13) & Chr(10)
T.Text = T.Text & " XIN CHAN THANH CAM ON QUI KHACH HANG DA DUNG THUE BAO CUA CHUNG TOI " & Chr(13) & Chr(10)
T.Text = T.Text & " MOI THAC MAC XIN GUI CHO CHUNG TOI THEO SO MAY " & Chr(13) & Chr(10)
T.Text = T.Text & " 0231875101 "
Else
MsgBox "ban ghi ban chon da het ", , "in ban ghi dau"
Exit Sub
End If
End Sub
Private Sub cd4_Click()
Data1.Recordset.MoveLast
thu.Caption = Data1.Recordset.RecordCount
T.Text = ""
T.Text = T.Text & " CONG HOA XA HOI CHU NGHIA VIET NAM " & Chr(13) & Chr(10)
T.Text = T.Text & " Doclap_tudo_hanhphuc " & Chr(13) & Chr(10)
T.Text = T.Text & " o0o " & Chr(13) & Chr(10)
T.Text = T.Text & " LOI CAM ON TOI CAC KHACH HANG DA THUE BAO " & Chr(13) & Chr(10)
T.Text = T.Text & " KINH GUI ONG\BA : " & Data1.Recordset.Fields("HO") & Chr(13) & Chr(10)
T.Text = T.Text & " NAME : " & Data1.Recordset.Fields("TEN") & Chr(13) & Chr(10)
T.Text = T.Text & " SO MAY : " & Data1.Recordset.Fields("MASDT") & Chr(13) & Chr(10)
T.Text = T.Text & " ADDRESS : " & Data1.Recordset.Fields("DC") & Chr(13) & Chr(10)
T.Text = T.Text & " XIN CHAN THANH CAM ON QUI KHACH HANG DA DUNG THUE BAO CUA CHUNG TOI " & Chr(13) & Chr(10)
T.Text = T.Text & " MOI THAC MAC XIN GUI CHO CHUNG TOI THEO SO MAY " & Chr(13) & Chr(10)
T.Text = T.Text & " 0231875101 "
End Sub
Private Sub Form_Load()
Data1.DatabaseName = App.Path & "\PHONE.mdb"
Data1.RecordSource = "NGDUNG"
Data1.Refresh
Data1.Recordset.MoveLast
sobanin.Text = ""
cvthu = Data1.Recordset.RecordCount
thu = cvthu
T.Text = ""
T.Text = T.Text & " CONG HOA XA HOI CHU NGHIA VIET NAM " & Chr(13) & Chr(10)
T.Text = T.Text & " Doclap_tudo_hanhphuc " & Chr(13) & Chr(10)
T.Text = T.Text & " o0o " & Chr(13) & Chr(10)
T.Text = T.Text & " LOI CAM ON TOI CAC KHACH HANG DA THUE BAO " & Chr(13) & Chr(10)
T.Text = T.Text & " KINH GUI ONG\BA : " & Data1.Recordset.Fields("HO") & Chr(13) & Chr(10)
T.Text = T.Text & " NAME : " & Data1.Recordset.Fields("TEN") & Chr(13) & Chr(10)
T.Text = T.Text & " SO MAY : " & Data1.Recordset.Fields("MASDT") & Chr(13) & Chr(10)
T.Text = T.Text & " ADDRESS : " & Data1.Recordset.Fields("DC") & Chr(13) & Chr(10)
T.Text = T.Text & " XIN CHAN THANH CAM ON QUI KHACH HANG DA DUNG THUE BAO CUA CHUNG TOI " & Chr(13) & Chr(10)
T.Text = T.Text & " MOI THAC MAC XIN GUI CHO CHUNG TOI THEO SO MAY " & Chr(13) & Chr(10)
T.Text = T.Text & " 0231875101 "
End Sub
Private Sub inan_Click()
Dim i, l As Integer
T.Text = ""
T.Text = T.Text & " CONG HOA XA HOI CHU NGHIA VIET NAM " & Chr(13) & Chr(10)
T.Text = T.Text & " Doclap_tudo_hanhphuc " & Chr(13) & Chr(10)
T.Text = T.Text & " o0o " & Chr(13) & Chr(10)
T.Text = T.Text & " LOI CAM ON TOI CAC KHACH HANG DA THUE BAO " & Chr(13) & Chr(10)
T.Text = T.Text & " KINH GUI ONG\BA : " & Data1.Recordset.Fields("HO") & Chr(13) & Chr(10)
T.Text = T.Text & " NAME : " & Data1.Recordset.Fields("TEN") & Chr(13) & Chr(10)
T.Text = T.Text & " SO MAY : " & Data1.Recordset.Fields("MASDT") & Chr(13) & Chr(10)
T.Text = T.Text & " ADDRESS : " & Data1.Recordset.Fields("DC") & Chr(13) & Chr(10)
T.Text = T.Text & " XIN CHAN THANH CAM ON QUI KHACH HANG DA DUNG THUE BAO CUA CHUNG TOI " & Chr(13) & Chr(10)
T.Text = T.Text & " MOI THAC MAC XIN GUI CHO CHUNG TOI THEO SO MAY " & Chr(13) & Chr(10)
T.Text = T.Text & " 0231875101 "
If sobanin.Text = "" Then
MsgBox " TOI THIEU PHAI NHAP SO BAN IN VAO"
sobanin.SetFocus
Else
l = MsgBox("BAN MUON IN KHACH HANG NAY KHONG ?", 4, "NEU IN CHON YES")
If l = 6 Then
For i = 1 To Val(sobanin.Text)
Printer.Print T.Text
Printer.NewPage
Next
Printer.EndDoc
Else
Exit Sub
End If
On Error Resume Next
If ActiveForm Is Nothing Then Exit Sub
With dlgCommonDialog
.DialogTitle = "Print"
.CancelError = True
.Flags = cdlPDReturnDC + cdlPDNoPageNums
If ActiveForm.rtfText.SelLength = 0 Then
.Flags = .Flags + cdlPDAllPages
Else
.Flags = .Flags + cdlPDSelection
End If
.ShowPrinter
If Err MSComDlg.cdlCancel Then
ActiveForm.rtfText.SelPrint .hDC
End If
End With
End If
End Sub
Private Sub sobanin_Change()
If Not IsNumeric(sobanin.Text) Then
sobanin.Text = ""
Else
If Val(sobanin.Text) < 1 Then
sobanin.Text = ""
End If
End If
End Sub
Private Sub thoat_Click()
Form1.WindowState = 0
Unload Me
End Sub
Form IV (Tìm Kiếm)
Từ Form chính nếu bạn chọn trên thanh Menu chức năng bạn chọn Menu tìm kiếm hoặc bạn có thể ấn phím nóng(Ctr-D)khi đó Form tìm kiếm hiện ra nó sẽ cho phép bạn tìm kiếm theo số đIện thoại hay địa chỉ và có thể đưa ra các thông tin mà bạn muốn.
Các Phương thức sử dụng trong Form này
Option Explicit
Dim DB As Database
Dim DongSQL As String
Dim SQL1 As String
Dim i As Integer
Private Sub Cmdthoat_Click()
Form1.WindowState = 0
Unload Me
End Sub
Private Sub CmdClear_Click()
comhien.Text = ""
ComDK.Text = ""
ComPheptoan.Text = ""
Gt.Text = ""
ComDK.SetFocus
Data1.Refresh
Data1.RecordSource = "NGDUNG"
Data1.Refresh
Text1.Text = "Select"
End Sub
Private Sub cmdxem_Click()
If ComDK.Text = "" Then
MsgBox "ban phai chon thong tin can xem"
Exit Sub
End If
If ComPheptoan.Text = "" Then
MsgBox " ban phai chon dieu kien so sanh"
Exit Sub
End If
If Gt.Text = "" Then
MsgBox "ban phai chon gia tri so sanh"
Exit Sub
End If
'--------------------------------------
If ComDK.Text "" And ComPheptoan.Text "" And Gt.Text "" Then
If comhien.Text = "" Or comhien.Text = "TAT CA" Then
DongSQL = "Select * From NGDUNG Where [" & ComDK.Text & "]" & ComPheptoan.Text
Else
DongSQL = "Select " & "[" & comhien.Text & "]" & " From NGDUNG Where [" & ComDK.Text & "]" & ComPheptoan.Text
End If
Select Case ComDK.ListIndex
Case 0 To 10
If ComPheptoan.Text "Like" Then
DongSQL = DongSQL & "'" & Trim(Gt.Text) & "'"
Else
DongSQL = DongSQL & "'" & Trim(Gt.Text) & "*'"
End If
End Select
Data1.RecordSource = DongSQL
Data1.Refresh
Text1.Text = ""
If comhien.Text = "" Or comhien.Text = "TAT CA" Then
SQL1 = "Select *" & " From NGDUNG Where [" & ComDK.Text & "] " & ComPheptoan.Text & " '" & Gt.Text & "'"
Else
SQL1 = "Select [" & comhien.Text & "]" & " From NGDUNG Where [" & ComDK.Text & "] " & ComPheptoan.Text & " '" & Gt.Text & "'"
End If
Text1.Text = SQL1
End If
End Sub
Private Sub ComDK_Click()
If ComDK.Text "" Then
Select Case ComDK.ListIndex
Case 0 To 10
ComPheptoan.Clear
ComPheptoan.AddItem "="
End Select
Gt.Text = ""
If comhien.Text = "" Or comhien.Text = "TAT CA" Then
SQL1 = "Select *" & " From NGDUNG Where [" & ComDK.Text & "] " & ComPheptoan.Text & " '" & Gt.Text & "'"
Else
SQL1 = "Select [" & comhien.Text & "]" & " From NGDUNG Where [" & ComDK.Text & "] " & ComPheptoan.Text & " '" & Gt.Text & "'"
End If
Else
ComDK.SetFocus
End If
End Sub
Private Sub ComPheptoan_Click()
If ComPheptoan.Text "" Then
Gt.SetFocus
Text1.Text = ""
If comhien.Text = "" Or comhien.Text = "TAT CA" Then
SQL1 = "Select *" & " From NGDUNG Where [" & ComDK.Text & "] " & ComPheptoan.Text & " '" & Gt.Text & "'"
Else
SQL1 = "Select [" & comhien.Text & "]" & " From NGDUNG Where [" & ComDK.Text & "] " & ComPheptoan.Text & " '" & Gt.Text & "'"
End If
Else
ComPheptoan.SetFocus
End If
End Sub
Private Sub Form_Load()
Set DB = OpenDatabase(App.Path & "\PHONE.mdb")
Data1.Refresh
Call HIEN
Call Dieukien
Gt.Text = ""
Text1.Text = "Select"
End Sub
Public Sub Dieukien()
For i = 0 To Data1.Recordset.Fields.Count - 1
ComDK.AddItem (Data1.Recordset.Fields(i).Name)
Next i
End Sub
Public Sub HIEN()
comhien.AddItem "TAT CA"
For i = 0 To Data1.Recordset.Fields.Count - 1
comhien.AddItem (Data1.Recordset.Fields(i).Name)
Next i
End Sub
FORM V (In ra các hoá đơn trả tiền của khách hàng): Từ Form chính nếu bạn chọn trên thanh Menu chức năng bạn chọn Menu hoá đơn trả tiền hoặc bạn có thể ấn phím nóng(Ctr-H) khi dó sẽ hiện ra form in háo đơn trã tiền của khách hàng trên dó sẽ có ba nút lệnh nếu bạn muốn in ra các thông tin của quí khách hàng có các cuộc gọi trong tháng thì bạn có thể chọn nút lệnh hoá đơn.
Các phương thức trong Form này
Option Explicit
Dim da As DAO.Database
Dim rec As DAO.Recordset
Dim st
Dim rec2 As DAO.Recordset
Dim r As TableDef
Public dem As Integer
Dim qur As DAO.QueryDef
Dim rs As New ADODB.Recordset
Dim dem1 As Integer
Private Sub Command1_Click()
xuly.WindowState = 0
Unload inbaocao
End Sub
Private Sub Form_Load()
open_db
Data1.DatabaseName = App.Path & "\PHONE.mdb"
Data1.RecordSource = "GOI"
Data1.Refresh
Data1.Recordset.MoveLast
Data2.DatabaseName = App.Path & "\PHONE.mdb"
Data2.RecordSource = "NGDUNG"
Data2.Refresh
dem = Data1.Recordset.RecordCount
thu = dem
' qur.Name = "canh"
st = "select HO,TEN ,DC from NGDUNG,GOI where NGDUNG.MASDT=GOI.MASDT "
rs.open st, cn, adOpenKeyset, adLockOptimistic, adCmdText
dem1 = rs.RecordCount
' qur.SQL = st
'da.QueryDefs.Append qur
rs.MoveLast
T.Text = ""
T.Text = T.Text & " CONG HOA XA HOI CHU NGHIA VIET NAM " & Chr(13) & Chr(10)
T.Text = T.Text & " Doclap_tudo_hanhphuc " & Chr(13) & Chr(10)
T.Text = T.Text & " o0o " & Chr(13) & Chr(10)
T.Text = T.Text & " THONG TIN HOA DON TR TIEN OF CUSTOMER DA THUE BAO " & Chr(13) & Chr(10)
T.Text = T.Text & " KINH GUI ONG\BA : " & rs![HO] & rs![TEn] & Chr(13) & Chr(10)
T.Text = T.Text & " ADDRESS : " & rs![DC] & Chr(13) & Chr(10) 'T.Text = T.Text & " XIN CHAN THANH CAM ON QUI KHACH HANG DA DUNG THUE BAO CUA CHUNG TOI " & Chr(13) & Chr(10)
T.Text = T.Text & " SO DT HIEN DANG THUE BAO : " & Data1.Recordset.Fields("MASDT") & Chr(13) & Chr(10)
T.Text = T.Text & " CAC SO DIEN THOAI MA QUI KHACK DA GOI TRONG THANG " & Chr(13) & Chr(10)
T.Text = T.Text & " MAVUNG : " & Data1.Recordset.Fields("MAVUNG") & Chr(13) & Chr(10)
T.Text = T.Text & " SODT : " & Data1.Recordset.Fields("SODT") & Chr(13) & Chr(10)
T.Text = T.Text & " NGAY GOI LA : " & Data1.Recordset.Fields("NGAYGOI") & Chr(13) & Chr(10)
T.Text = T.Text & " THOI GIAN LA : " & Data1.Recordset.Fields("THOIGIAN") & Chr(13) & Chr(10)
T.Text = T.Text & " SO TIEN CHO CUOC GOI NAY : " & Data1.Recordset.Fields("TIEN") & Chr(13) & Chr(10)
End Sub
Private Sub cd2_Click()
If thu.Caption > 1 Then
Data1.Recordset.MovePrevious
rs.MovePrevious
thu.Caption = thu.Caption - 1
T.Text = ""
T.Text = T.Text & " CONG HOA XA HOI CHU NGHIA VIET NAM " & Chr(13) & Chr(10)
T.Text = T.Text & " Doclap_tudo_hanhphuc " & Chr(13) & Chr(10)
T.Text = T.Text & " o0o " & Chr(13) & Chr(10)
T.Text = T.Text & " THONG TIN HOA DON TR TIEN OF CUSTOMER DA THUE BAO " & Chr(13) & Chr(10)
T.Text = T.Text & " KINH GUI ONG\BA : " & rs![HO] & rs![TEn] & Chr(13) & Chr(10)
T.Text = T.Text & " ADDRESS : " & rs![DC] & Chr(13) & Chr(10) 'T.Text = T.Text & " XIN CHAN THANH CAM ON QUI KHACH HANG DA DUNG THUE BAO CUA CHUNG TOI " & Chr(13) & Chr(10)
T.Text = T.Text & " SO DT HIEN DANG THUE BAO : " & Data1.Recordset.Fields("MASDT") & Chr(13) & Chr(10)
T.Text = T.Text & " CAC SO DIEN THOAI MA QUI KHACK DA GOI TRONG THANG " & Chr(13) & Chr(10)
T.Text = T.Text & " MAVUNG : " & Data1.Recordset.Fields("MAVUNG") & Chr(13) & Chr(10)
T.Text = T.Text & " SODT : " & Data1.Recordset.Fields("SODT") & Chr(13) & Chr(10)
T.Text = T.Text & " NGAY GOI LA : " & Data1.Recordset.Fields("NGAYGOI") & Chr(13) & Chr(10)
T.Text = T.Text & " THOI GIAN LA : " & Data1.Recordset.Fields("THOIGIAN") & Chr(13) & Chr(10)
T.Text = T.Text & " SO TIEN CHO CUOC GOI NAY : " & Data1.Recordset.Fields("TIEN") & Chr(13) & Chr(10)
Else
MsgBox "ban ghi da het ", , "in ban ghi cuoi"
Exit Sub
End If
End Sub
Private Sub cd3_Click()
If thu.Caption < Data1.Recordset.RecordCount Then
Data1.Recordset.MoveNext
rs.MoveNext
thu.Caption = thu.Caption + 1
T.Text = ""
T.Text = T.Text & " CONG HOA XA HOI CHU NGHIA VIET NAM " & Chr(13) & Chr(10)
T.Text = T.Text & " Doclap_tudo_hanhphuc " & Chr(13) & Chr(10)
T.Text = T.Text & " o0o " & Chr(13) & Chr(10)
T.Text = T.Text & " THONG TIN HOA DON TR TIEN OF CUSTOMER DA THUE BAO " & Chr(13) & Chr(10)
T.Text = T.Text & " KINH GUI ONG\BA : " & rs![HO] & rs![TEn] & Chr(13) & Chr(10)
T.Text = T.Text & " ADDRESS : " & rs![DC] & Chr(13) & Chr(10) 'T.Text = T.Text & " XIN CHAN THANH CAM ON QUI KHACH HANG DA DUNG THUE BAO CUA CHUNG TOI " & Chr(13) & Chr(10)
T.Text = T.Text & " SO DT HIEN DANG THUE BAO : " & Data1.Recordset.Fields("MASDT") & Chr(13) & Chr(10)
T.Text = T.Text & " CAC SO DIEN THOAI MA QUI KHACK DA GOI TRONG THANG " & Chr(13) & Chr(10)
T.Text = T.Text & " MAVUNG : " & Data1.Recordset.Fields("MAVUNG") & Chr(13) & Chr(10)
T.Text = T.Text & " SODT : " & Data1.Recordset.Fields("SODT") & Chr(13) & Chr(10)
T.Text = T.Text & " NGAY GOI LA : " & Data1.Recordset.Fields("NGAYGOI") & Chr(13) & Chr(10)
T.Text = T.Text & " THOI GIAN LA : " & Data1.Recordset.Fields("THOIGIAN") & Chr(13) & Chr(10)
T.Text = T.Text & " SO TIEN CHO CUOC GOI NAY : " & Data1.Recordset.Fields("TIEN") & Chr(13) & Chr(10)
Else
MsgBox "ban ghi ban chon da het ", , "in ban ghi dau"
Exit Sub
End If
End Sub
Private Sub cd4_Click()
Data1.Recordset.MoveLast
rs.MoveLast
thu.Caption = Data1.Recordset.RecordCount
T.Text = ""
T.Text = T.Text & " CONG HOA XA HOI CHU NGHIA VIET NAM " & Chr(13) & Chr(10)
T.Text = T.Text & " Doclap_tudo_hanhphuc " & Chr(13) & Chr(10)
T.Text = T.Text & " Private Sub cd1_Click()"
Data1.Recordset.MoveFirst
rs.MoveFirst
thu.Caption = 1
T.Text = ""
T.Text = T.Text & " CONG HOA XA HOI CHU NGHIA VIET NAM " & Chr(13) & Chr(10)
T.Text = T.Text & " Doclap_tudo_hanhphuc " & Chr(13) & Chr(10)
T.Text = T.Text & " o0o " & Chr(13) & Chr(10)
T.Text = T.Text & " THONG TIN HOA DON TR TIEN OF CUSTOMER DA THUE BAO " & Chr(13) & Chr(10)
T.Text = T.Text & " KINH GUI ONG\BA : " & rs![HO] & rs![TEn] & Chr(13) & Chr(10)
T.Text = T.Text & " ADDRESS : " & rs![DC] & Chr(13) & Chr(10) 'T.Text = T.Text & " XIN CHAN THANH CAM ON QUI KHACH HANG DA DUNG THUE BAO CUA CHUNG TOI " & Chr(13) & Chr(10)
T.Text = T.Text & " SO DT HIEN DANG THUE BAO : " & Data1.Recordset.Fields("MASDT") & Chr(13) & Chr(10)
T.Text = T.Text & " CAC SO DIEN THOAI MA QUI KHACK DA GOI TRONG THANG " & Chr(13) & Chr(10)
T.Text = T.Text & " MAVUNG : " & Data1.Recordset.Fields("MAVUNG") & Chr(13) & Chr(10)
T.Text = T.Text & " SODT : " & Data1.Recordset.Fields("SODT") & Chr(13) & Chr(10)
T.Text = T.Text & " NGAY GOI LA : " & Data1.Recordset.Fields("NGAYGOI") & Chr(13) & Chr(10)
T.Text = T.Text & " THOI GIAN LA : " & Data1.Recordset.Fields("THOIGIAN") & Chr(13) & Chr(10)
T.Text = T.Text & " SO TIEN CHO CUOC GOI NAY : " & Data1.Recordset.Fields("TIEN") & Chr(13) & Chr(10)
End Sub
Private Sub cd1_Click()
Data1.Recordset.MoveFirst
rs.MoveFirst
thu.Caption = 1
T.Text = ""
T.Text = T.Text & " CONG HOA XA HOI CHU NGHIA VIET NAM " & Chr(13) & Chr(10)
T.Text = T.Text & " Doclap_tudo_hanhphuc " & Chr(13) & Chr(10)
T.Text = T.Text & " o0o " & Chr(13) & Chr(10)
T.Text = T.Text & " THONG TIN HOA DON TR TIEN OF CUSTOMER DA THUE BAO " & Chr(13) & Chr(10)
T.Text = T.Text & " KINH GUI ONG\BA : " & rs![HO] & rs![TEn] & Chr(13) & Chr(10)
T.Text = T.Text & " ADDRESS : " & rs![DC] & Chr(13) & Chr(10) 'T.Text = T.Text & " XIN CHAN THANH CAM ON QUI KHACH HANG DA DUNG THUE BAO CUA CHUNG TOI " & Chr(13) & Chr(10)
T.Text = T.Text & " SO DT HIEN DANG THUE BAO : " & Data1.Recordset.Fields("MASDT") & Chr(13) & Chr(10)
T.Text = T.Text & " CAC SO DIEN THOAI MA QUI KHACK DA GOI TRONG THANG " & Chr(13) & Chr(10)
T.Text = T.Text & " MAVUNG : " & Data1.Recordset.Fields("MAVUNG") & Chr(13) & Chr(10)
T.Text = T.Text & " SODT : " & Data1.Recordset.Fields("SODT") & Chr(13) & Chr(10)
T.Text = T.Text & " NGAY GOI LA : " & Data1.Recordset.Fields("NGAYGOI") & Chr(13) & Chr(10)
T.Text = T.Text & " THOI GIAN LA : " & Data1.Recordset.Fields("THOIGIAN") & Chr(13) & Chr(10)
T.Text = T.Text & " SO TIEN CHO CUOC GOI NAY : " & Data1.Recordset.Fields("TIEN") & Chr(13) & Chr(10)
End Sub
Form VI ( In Báo Cáo Và Tính Toán)
Các phương thức trong Form này
Public cout As Integer
Dim da As DAO.Database
Dim bien
Dim rec As DAO.Recordset
Dim rec1 As DAO.Recordset
Dim i, j, dem As Integer
Private Sub Toolbar1_ButtonClick(ByVal Button As ComctlLib.Button)
End Sub
Private Sub cmdre_Click()
baocao1.Show 1
' baocaohoadon1.Show 1
End Sub
Private Sub Cmdthoat_Click()
Form1.WindowState = 0
Unload xuly
End Sub
Private Sub Form_Load()
dem = 1
Set da = OpenDatabase("e:\dienthoai\PHONE.mdb")
Set rec = da.OpenRecordset("GOI")
Set rec1 = da.OpenRecordset("CUOCGOI")
dieu_chinh
End Sub
Public Function dem1()
Dim bien As Integer
bien = 1
bien = Data1.Recordset.RecordCount
dem1 = bien
End Function
Private Sub cmddk_Click()
i = i + 1
Dim d As Double
dem1
If i > 1 Then
MsgBox "khong the khoi tao "
Exit Sub
Else
da.Execute "UPDATE GOI " & _
"set TIEN =[TIEN]+10"
End If
End Sub
Sub dieu_chinh()
Do Until rec.EOF
If rec![MAVUNG] = "04" Then
rec.Edit
rec![TIEN] = rec![TIEN] + rec![THOIGIAN] * 15
rec.Update
If rec![TIEN] > rec![THOIGIAN] * 15 + 27 Then
rec.Edit
rec![TIEN] = rec![THOIGIAN] * 15 + 27
rec.Update
End If
End If
If rec![MAVUNG] = "037" Then
rec.Edit
rec![TIEN] = rec![TIEN] + rec![THOIGIAN] * 25
rec.Update
If rec![TIEN] > rec![THOIGIAN] * 25 + 27 Then
rec.Edit
rec![TIEN] = rec![THOIGIAN] * 25 + 27
rec.Update
End If
End If
If rec![MAVUNG] = "0210" Then
rec.Edit
rec![TIEN] = rec![TIEN] + rec![THOIGIAN] * 17
rec.Update
If rec![TIEN] > rec![THOIGIAN] * 17 + 27 Then
rec.Edit
rec![TIEN] = rec![THOIGIAN] * 17 + 27
rec.Update
End If
End If
If rec![MAVUNG] = "08" Then
rec.Edit
rec![TIEN] = rec![TIEN] + rec![THOIGIAN] * 30 + 27
rec.Update
If rec![TIEN] > rec![THOIGIAN] * 30 + 27 Then
rec.Edit
rec![TIEN] = rec![THOIGIAN] * 30 + 27
rec.Update
End If
End If
rec.MoveNext
Loop
rec.Close
da.Close
End Sub
Sub kiem_tra()
Set rec = da.OpenRecordset("GOI")
Do Until rec.EOF
If rec![MAVUNG] = "04" Then
If rec![TIEN] > rec![THOIGIAN] * 15 + 27 Then
rec.Edit
rec![TIEN] = rec![THOIGIAN] * 15 + 27
rec.Update
End If
End If
If rec![MAVUNG] = "037" Then
If rec![TIEN] > rec![THOIGIAN] * 25 + 27 Then
rec.Edit
rec![TIEN] = rec![THOIGIAN] * 25 + 27
rec.Update
End If
End If
If rec![MAVUNG] = "0210" Then
If rec![TIEN] > rec![THOIGIAN] * 17 + 27 Then
rec.Edit
rec![TIEN] = rec![THOIGIAN] * 17 + 27
rec.Update
End If
End If
rec.MoveNext
Loop
rec.Close
da.Close
End Sub
Private Sub HIEN_Click()
xuly.WindowState = 1
inbaocao.Show
End Sub
Private Sub Label1_Change()
Dim i As Integer
For i = 1 To 100
Label1.BackColor = i * Rnd
Next
End Sub
Các file đính kèm theo tài liệu này:
- 33151.doc