Đồ án Quản lý tiết kiệm tích luỹ trong ngân hàng thương mại cổ phần Bắc Á

ĐỀ TÀI: Quản lý tiết kiệm tích luỹ trong Ngân hàng Bắc Á MỤC LỤC LờI NóI ĐầU Công nghệ tin học không thể thiếu trên mọi lĩnh vực: kinh tế, văn hoá, quân sự của một quốc gia. Ngày nay tin học càng được sử dụng rộng rãi nó giúp cho con người giảm bớt sức lao động nhờ những phần mềm có tính ứng dụng cao. Trong công tác quản lý, sự đóng góp của công nghệ tin học đã góp phần giải quyết được nhiều vấn đề phức tạp mà con người không thể làm bằng tay hoặc tốn rất nhiều thời gian và công sức mới có thể giải quyết được bằng phương pháp thủ công không có máy tính. Hệ thống quản lý trong ngân hàng là một hệ thống rất phức tạp, đòi hỏi tính chính xác và bảo mật. Sau một thời gian nghiên cứu và tìm hiểu về hệ thống quản lý giao dịch tại ngân hàng, dưới sự hướng dẫn của Thầy Nguyễn ái Dân em đã chọn đề tài: Quản lý tiết kiệm tích luỹ trong ngân hàng TMCP Bắc á Đề tài của em giúp cho giao dịch viên tại ngân hàng có thể giao dịch với khách hàng nhanh chóng và thuận tiện do giảm bớt được thời gian tìm kiếm hay truy xuất dữ liệu về thông tin khách hàng, thông tin sổ tiết kiệm, thông tin về các giao dịch Hệ thống sẽ tự động tính lãi, nhập gốc lãi treo, chuyển kỳ hạn sổ đến hạn Tóm tắt nội dung của đồ án: Phần I: Cơ sở lý thuyết Phần II: Phân tích và thiết kế nghiệp vụ Phần III: MôI trường ứng dụng Phần IV: Hướng dẫn cài đặt và sử dụng chương trình Phần V: Phần nguồn chương trình

doc68 trang | Chia sẻ: maiphuongtl | Lượt xem: 1556 | Lượt tải: 0download
Bạn đang xem trước 20 trang tài liệu Đồ án Quản lý tiết kiệm tích luỹ trong ngân hàng thương mại cổ phần Bắc Á, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
t hệ thống Nâng cấp hệ thống Bảo vệ và duy trì hệ thống Phân tích hệ có cấu trúc: Phân tích hệ thống có cấu trúc là cách tiếp cận hiện đại với các giai đoạn phân tích và thiết kế chu trình phát triển hệ thống được chấp thuận để khắc phục những điểm yếu của cách tiếp cận truyền thống. Quá trình phân tích và thiết kế sử dụng một số công cụ và kĩ thuật vẫn thường dùng để xây dựng cho cả mô hình hệ thống hiện đại và hệ thống dự kiến, các mô hình này giúp các nhà phân tích ghi lại, thực hiện việc phân tích và thiết kế. Đồng thời xác định khuôn dạng mới cho hệ thống tương lai. Những công cụ thông thường nhất gắn với việc phân tích hệ thống cấu trúc là: Sơ đồ dòng dữ liệu Mô hình thực thể Mô hình quan hệ Sơ đồ chức năng phân cấp Lịch sử tồn tại của thực thể Từ điển dữ liệu Ngôn ngữ có cấu trúc Họp xét duyệt Phương pháp luận có cấu trúc không chỉ gồm có nhóm công cụ mô hình mà cả phương pháp tổ hợp và giao tiếp. Mỗi mô hình là một cái nhìn hiện hệ thống hiện tại và tương lai, đưa ra hỗ trợ bởi khuôn mẫu và bảng kiểm tra sẽ áp đặt cách tiếp cận chuẩn hoá cho quá trình phát triển. Ưu điểm của cách tiếp cận như vậy là các công cụ và các mô hình hỗ trợ kiểm tra chéo lẫn nhau làm cho hệ thống trở nên tin cậy. Tuy nhiên nó cũng có nhược điểm như làm giảm sự linh hoạt của nhà phân tích tìm ra các giải quyết sáng tạo. Phân tích hệ thống có cấu trúc đem lại sự tách bạch, chính thức cái nhìn vật lý và logic của hệ thống. Mô hình hoá vật lý thường được dùng trong khảo sát hiện tại và trong thiết kế hệ thống mới, nó liên quan đến các ràng buộc vật lý có trong hệ thống. Mô hình logic thường được dùng trong việc phân tích các yêu cầu hệ thống, nó chỉ quan tâm đến chức năng nào cần cho hệ thống và thông tin nào cần thực hiện các chức năng đó. Các mô hình được dùng trong phân tích hệ thống có cấu trúc được thiết kế và lựa chọn sao cho dễ hiểu nhất đối với người sử dụng, ghi nhận vai trò chủ chốt của người sử dụng trong phát triển hệ thống. Thiết kế hệ thống trên cơ sở cấu trúc dữ liệu, bởi vì nó sẽ ổn định hơn. Điều quan trọng trong phân tích và thiết kế hệ thống có cấu trúc là nó làm thay đổi tiến trình hệ thống trong giai đoạn phát triển và bảo hành. Phân tích hệ thống có cấu trúc cũng được chia thành các giai đoạn có thể tiến hành song song. Phân tích hệ thống có cấu trúc sẽ được hỗ trợ bởi những tiến bộ trong phần cứng và cả phần mềm. Các mô hình này được sử dụng để liên lạc với người sử dụng và cả những nhà xây dựng hệ thống tương lai, những nhà thiết kế và cài đặt sau này. Cơ sở dữ liệu: Nhu cầu tích luỹ và xử lý các dữ liệu đã nảy sinh trong mọi công việc, trong mọi hoạt động của con người. Một bài toán nhỏ cũng cần đến dữ liệu, nhưng không nhất thiết phải quản lý dữ liệu này theo cách khoa học. Do khả năng tổng hợp của người xử lý, các dữ liệu tổng hợp được lấy ra và được xử lý mà không vấp phải khó khăn nào. Tuy nhiên khi bài toán có kích thước lớn hơn hẳn và số lượng dữ liệu cần phải xử lý tăng lên nhanh, lúc đó con người khó có thể quản lý hết được. Chúng đòi hỏi được quản lý tốt không phải và kích thước mà vì sự phức tạp của bản thân chúng. Đặc điểm cơ bản của cơ sở dữ liệu: Là một tổ hợp bao gồm nhiều dữ liệu khác nhau nhưng có mối quan hệ với nhau, được lưu trữ ra bộ nhớ ngoài theo một quy định nào đó để tiện lợi cho nhiều người sử dụng với nhiều mục đích khác nhau. Nói tóm lại cơ sở dữ liệu là một tập hợp các dữ liệu được lưu trữ để phục vụ cho hệ thống ứng dụng. Phần chương trình ứng dụng để tổ chức, lưu trữ và xử lý dữ liệu. Thiết kế cơ sở dữ liệu trong hệ thống thông tin: Việc thiết kế cơ sở dữ liệu là hoạt động sâu sắc trong việc phát triển hệ thống thông tin, việc thiết kế gồm 3 pha tách biệt nhau gọi là thiết kế khái niệm, logic và vật lý. Thiết kế cơ sở dữ liệu được đặt trong vòng đời hệ thống thông tin. Những nét điển hình của vòng đời hệ thống thông tin : Nghiên cứu tính khả thi. Thu nhập các yêu cầu phân tích. Thiết kế. Chế tạo mẫu. Cài đặt hoàn thiện. Thực hiện. Vòng đời của hệ thống thông tin Nghiên cứu tính khả thi liên quan đến việc xác định về giá của các phương án khác nhau trong thiết kế hệ thống thông tin và tính ưu tiên của các thành phần đa dạng trong hệ thống. Các pha trong thiết kế cơ sở dữ liệu Thiết kế khái niệm: Mục tiêu của thiết kế khái niệm là mô tả nội dung thông tin của cơ sở dữ liệu chứ không phải là mô tả cấu trúc lưu trữ do việc quản lý thông tin yêu cầu. Thiết kế khái niệm được thực hiện ngay cả khi việc cài đặt, hoàn thiện cuối cùng không sử dụng hệ quản trị cơ sở dữ liệu mà chỉ dùng hệ quản trị tệp và ngôn ngữ lập trình. Thiết kế logic: Được bắt đầu bằng những lược đồ khái niệm và cho kết quả ra lược đồ logic. Lược đồ logic là mô tả cấu trúc cơ sở dữ liệu mà hệ quản trị cơ sở dữ liệu đã xử lý. Một mô hình logic là ngôn ngữ để xác định lược đồ logic, các mô hình logic hay được dùng nhất như mô hình quan hệ, mô hình mạng... Mô hình logic phụ thuộc vào lớp mô hình dữ liệu do hệ quản trị cơ sở dữ liệu dùng nhưng không phụ thuộc vào một hệ quản trị đặc biệt nào. Thiết kế vật lý : Thiết kế vật lý bắt đầu từ lược đồ logic và kết thúc với lược đồ vật lý. Lược đồ vật lý là mô tả cài đặt dữ liệu trên bộ nhớ ngoài nó mô tả các cấu trúc lưu trữ và các phương pháp truy nhập dùng để truy nhập dữ liệu có hiệu quả. Do đó thiết kế vật lý được sinh ra cho một hệ quản trị cơ sở dữ liệu riêng và các quyết định trong giai đoạn thiết kế vật lý cũng tác động lại cấu trúc của lược đồ logic. Một khi việc thiết kế lược đồ logic đã hoàn tất, các lược đồ vật lý và logic được thể hiện thông qua ngôn ngữ xác định dữ liệu của hệ quản trị cơ sở dữ liệu đích. Các ứng dụng cơ sở dữ liệu có thể hoàn toàn xác định, cài đặt và được thử. Điều này cho phép dữ liệu dần được hình thành. Một số yêu cầu khi thiết kế cơ sở dữ liệu + Giảm sự dư thừa trong thông tin. + Duy trì được sự thống nhất dữ liệu, không có sự trùng lặp dữ liệu. + Có thể áp dụng phương thức bảo mật với dữ liệu. + Có thể dùng chung được dữ liệu đã lưu trữ ngay cả khi hệ thống cần được phát triển. Vòng đời của hệ thống thông tin PHẦN II: PHÂN TÍCH & THIẾT KẾ NGHIỆP VỤ YÊU CẦU CỦA BÀI TOÁN: Yêu cầu chung: Các Ngân hàng nói chung và Ngân hàng TMCP Bắc á nói riêng, tất cả đều hoạt động trên cùng nguyên tắc: Huy động vốn (tiền); Sử dụng vốn (tiền); Huy động vốn là nghiệp vụ mà Ngân hàng TMCP Bắc á đi huy động tiền từ các Tổ chức tín dụng, từ dân cư (hình thức huy động tiền gửi tiết kiệm), từ các Tổ chức kinh tế là các công ty, tổng công ty. Việc phát hành trái phiếu cũng là một hình thức huy động vốn. Việc huy động vốn được thực hiện trên các quy định cho phép của Ngân hàng nhà nước. Sử dụng vốn là nghiệp vụ mà Ngân hàng cho các Tổ chức tín dụng vay, Cho các Tổ chức kinh tế, cá nhân vay hoặc Ngân hàng đầu tư vào các dự án thuộc nghành. Ngoài ra Ngân hàng còn có thể sử dụng tiền dưới hình thức đầu tư mua các kỳ phiếu, trái phiếu, góp vốn cổ phần, liên doanh liên kết .... Việc Huy động vốn và sử dụng vốn tại Ngân hàng được kí kết trên những hợp đồng đi vay, cho vay hoặc trên những chứng từ có giá như sổ tiếp kiệm, kỳ phiếu. Tất cả đều được quy định theo kỳ hạn vay gửi kèm theo số tiền và ngày hiệu lực, ngày đến hạn. Tại Ngân hàng, hàng ngày đều theo dõi hiệu lực các hợp đồng huy động vốn, sử dụng vốn để làm các thủ tục chuyển tiền hoặc liên lạc với đối tác chuyển tiền. Nguyên tắc cơ bản của Ngân hàng là huy động được nhiều nguồn tiền và sử dụng tối đa số tiền huy động, đồng thời sử dụng được nó trong thời gian kín nhất. Tầm quan trọng của ứng dụng Công nghệ thông tin: Như chúng ta đã biết công nghệ thông tin hoàn toàn quyết định sự thành công của Doanh nghiệp đặc biệt riêng với các nghiệp vụ trên phần mềm ứng dụng phải được đưa vào sử dụng để quản lý: Các món (hợp đồng) huy động vốn; Các món (hợp đồng) sử dụng vốn; Với các thông tin quản lí bao gồm số tiền, kỳ hạn vay gửi, lãi suất vay gửi. Các thông tin này sẽ làm căn cứ để Ngân hàng tính lãi phải thu hoặc phải chi. Khi các hợp đồng hoặc sổ tiết kiệm đến hạn hệ thống cần phải tính toán và lập báo cáo thu chi để ngân hàng có kế hoạch xử lý: Nếu thiếu tiền trả nợ thì phải lên kế hoạch huy động hoặc đi vay; Nếu thừa tiền thì phải lên kế hoạch sử dụng hoặc cho vay; Phạm vi chức năng của đề tài: Tiết kiệm tích luỹ là loại hình gửi tiền tiết kiệm mà khách hàng có thể gửi thêm tiền vào sổ tiết kiệm của mình mà không cần lập sổ mới. Với số tiền gửi thêm, tuỳ vào giá trị mà khách hàng được hưởng mức lãi suất khác nhau. Sau khi gửi tiền, mỗi khách hàng được nhận một sổ tiết kiệm, đây là căn cứ để giao dịch giữa khách hàng và ngân hàng. Các yêu cầu nghiệp vụ của hệ thống quản lý tiết kiệm tích luỹ trong ngân hàng TMCP Bắc á: Hệ thống phải quản lý thông tin khách hàng đến giao dịch với ngân hàng. Quản lý các thông tin gửi tiền của khách hàng trên sổ tiết kiệm. Hệ thống phải quản lý được các lần gửi tiền và rút tiền của khách hàng theo từng sổ tiết kiệm. Hệ thống phải quản lý các kỳ hạn gửi, kỳ tính lãi, loại tiền, loại lãi suất để giao dịch với khách hàng khi khách hàng đến giao dịch (rút tiền hoặc gửi thêm tiền) hoặc khi sổ đến hạn. Tại mọi thời điểm, hệ thống phải tính được lãi đến hạn cho mỗi khoản tiền gửi đến hạn của từng sổ tiết kiệm, và phải tính được lãi trước hạn cho số tiền rút trước hạn khi khách hàng đến rút tiết kiệm trước hạn. Sau mỗi lần giao dịch, các thông tin liên quan của giao dịch phải được cập nhật vào các kho dữ liệu có liên quan để thuận lợi cho việc quản lý và tính toán. MÔ TẢ HỆ THỐNG Quy trình lập mới sổ tiết kiệm: Tại quầy giao dịch của ngân hàng có bảng tin thông báo các thông tin về: Loại kỳ hạn gửi, lãi suất ứng với từng loại kỳ hạn và loại tiền gửi để khách hàng có thể tham khảo, lựa chọn khi đến gửi tiết kiệm. Khi khách hàng đến gửi tiền theo loại hình tiết kiệm tích luỹ, khách hàng phải điền đầy đủ các thông tin vào “giấy gửi tiền tiết kiệm” bao gồm các nội dung: Họ tên người gửi, số CMND, địa chỉ, số tiền gửi, kỳ hạn gửi, loại tiền gửi, phương thức gửi Với trường hợp khách hàng đến lập mới một sổ tiết kiệm bằng tiền mặt: Sau khi điền đầy đủ các thông tin vào giấy gửi tiền tiết kiệm, khách hàng ký xác nhận rồi nộp lại cho giao dịch viên cùng với CMND và tiền gửi. Giao dịch viên đối chiếu thông tin khách hàng với CMND và kiểm đếm tiền rồi liệt kê chi tiết số tiền gửi, loại tiền và mệnh giá tiền gửi vào giấy gửi tiền tiết kiệm của khách hàng. Căn cứ vào số CMND giao dịch viên tìm kiếm thông tin về khách hàng trong danh sách khách hàng. Nếu không tìm thấy khách hàng có số CMND đó thì thêm mới khách hàng vào danh sách khách hàng. Giao dịch viên cập nhật các thông tin từ giấy gửi tiền tiết kiệm và nhập số sổ tiết kiệm được in sẵn trên mỗi sổ tiết kiệm vào kho dữ liệu trong máy tính rồi in ra sổ tiết kiệm và phiếu lưu tiết kiệm. Giao dịch viên lấy mẫu chữ ký khách hàng lên phiếu lưu tiết kiệm, ký nhận vào giấy gửi tiền của khách hàng và phiếu lưu tiết kiệm sau đó gửu toàn bộ hồ sơ cho kiểm soát viên. Kiểm soát viên kiểm tra lại và ký xác nhận lên phiếu lưu và giấy gửu tiền; đóng dấu xác nhận lên sổ tiết kiệm rồi gửi lại cho giao dịch viên. Giao dịch viên giữ lại phiếu lưu tiết kiệm, giấy gửi tiền của khách hàng Giao dịch viên nhập thông tin vào máy tính, in sổ và trả sổ in cho khách hàng. Trường hợp khách hàng lập mới sổ tiết kiệm bằng phương thức chuyển khoản: Khách hàng phải điền thêm thông tin về số tài khoản dùng để chuyển khoản vào giấy gửi tiền tiết kiệm. Giao dịch viên tìm thông tin về khách hàng và số tài khoản trong kho dữ liệu. Sau đó thực hiện như đối với phương thức gửi tiền mặt. Quy trình tính lãi: Hàng ngày vào cuối ngày hoặc đầu ngày, giao dịch viên phải tính lãi cho các sổ đến hạn rút lãi để sẵn sàng chi lãi nếu khách hàng đến rút. Trong trường hợp đến hạn mà khách hàng không đến rút lãi, giao dịch viên tính lãi xong và lưu vào hồ sơ lãi đã tính theo từng sổ tiết kiệm để khi khách hàng đến rút có sẵn số liệu để chi mà không cần tính lại. Trường hợp sổ đến hạn mà khách hàng không đến rút lãi thì số lãi tính được sẽ được nhập vào gốc (tăng số tiền gốc lên) và sổ tiết kiệm sẽ được chuyển lên một kỳ hạn tiếp theo tương đương. Khách hàng có thể đến sau để rút số lãi đã được nhập gốc. Trường hợp khách hàng đến rút tiền trước hạn, phần mềm hỗ trợ giao dịch viên tính lãi rút trước hạn với lãi suất áp dụng lã lãi suất không kỳ hạn. Theo một trong những quy định hay áp dụng nhất hiện nay là khi rút gốc, khách hàng sẽ rút những món tiền có thời gian gửi gần nhất để có lợi cho khách hàng. Phương pháp rút gốc theo kiểu này gọi là LIFO - Last In First Out; Quy trình tiếp nhận các giao dịch của khách hàng: Khi đến giao dịch, khách hàng phải mang theo sổ tiết kiệm, CMND làm cơ sở để đối chiếu. Khách hàng đến gửi thêm tiền: Khách hàng điền đầy đủ thông tin vào giấy gửi tiền, ký xác nhận và nộp cho giao dịch viên. Giao dịch viên tìm số sổ tiết kiệm trong kho dữ liệu và đối chiếu chữ ký của khách hàng với mẫu chữ ký trong phiếu lưu tiết kiệm. Nếu đúng, giao dịch viên điền thêm thông tin từ giấy gửi tiền vào phiếu lưu tiết kiệm, sổ tiết kiệm của khách và cập nhật giao dịch vào các kho dữ liệu liên quan sau đó ký nhận và gửi cho kiểm soát viên xác nhận rồi trả lại sổ tiết kiệm cho khách hàng. Khách hàng đến rút tiền: Khi đến rút tiền, khách hàng điền thông tin cá nhân, loại giao dịch, số tiền giao dịch vào phiếu yêu cầu rồi ký nhận và chuyển cho giao dịch viên cùng với sổ tiết kiệm và CMND. Giao dịch viên căn cứ vào số sổ tiết kiệm để tìm thông tin sổ và đối chiếu CMND, chữ ký của khách hàng với phiếu lưu. Nếu giao dịch của khách hàng là rút lãi, giao dịch viên cập nhật số tiền lãi rút vào các kho dữ liệu liên quan và phiếu lưu tiết kiệm sau đó in phiếu chi lãi, lấy các chữ ký xác nhận và trả lãi cho khách. Nếu giao dịch của khách hàng là rút gốc, giao dịch viên cập nhật và tính lãi cho số gốc rút rồi lưu vào các kho dữ liệu liên quan và phiếu lưu tiết kiệm. Sau đó, giao dịch viên in sổ mới cho khách hàng với số tiền gửi là số tiền còn lại và số sổ như cũ rồi lấy các chữ ký xác nhận, in phiếu chi gốc và trả sổ tiết kiệm cho khách hàng. Quy trình phong toả sổ tiết kiệm: Đối với những sổ tiết kiệm đến hạn gửi thêm mà không đến gửi (thời gian gia hạn chờ của sổ do ngân hàng quy định) hoặc những sổ tiết kiệm khách hàng báo mất, ngân hàng phải tiến hành phong toả sổ tiết kiệm. Khi khách hàng đến báo mất sổ, khách hàng phải nộp giấy báo mất sổ có xác nhận của chính quyền địa phương và CMND cho giao dịch viên. giao dịch viên nhận thông báo mất sổ, kiểm tra chữ ký của khách hàng với mẫu chữ ký trong sổ lưu và đối chiếu CMND của khách; sau đó thực hiện phong toả và chuyển tất cả hồ sơ của khách hàng cho kiểm soát viên. Đối với những sổ tiết kiệm quá thời gian gia hạn chờ gửi thêm mà chưa đến giao dịch, giao dịch viên thực hiện phong toả, ngừng tính lãi kể từ lúc quá hạn và chuyển hồ sơ cho kiểm soát viên. Kiểm soát viên kiểm tra các chứng từ và duyệt phong toả và ghi rõ lý do phong toả sổ tiết kiệm. Sau đó xác nhận ngày khách hàng đến nhận sổ hoặc rút tiền (quy định sau 20 ngày kể từ ngày phong toả) rồi gửi lại cho giao dịch viên. Giao dịch viên gửi trả khách một bản copy giấy xác nhận mất sổ tiết kiệm, hoặc giấy thông báo phong toả sổ tiết kiệm quá hạn trong đó ghi rõ ngày hẹn đến rút tiền hoặc làm sổ mới. Sơ đồ ngữ cảnh của hệ thống: PHÂN TÍCH HỆ THỐNG Sơ đồ phân rã chức năng của hệ thống quản lý tiết kiệm tích luỹ tại ngân hàng TMCP Bắc á: Sơ đồ dòng dữ liệu của hệ thống quản lý tiết kiệm tích luỹ trong ngân hàng TMCP Bắc á: Sơ đồ dòng dữ liệu mức đỉnh của hệ thống quản lý tiết kiệm tích luỹ trong ngân hàng TMCP Bắc á: Sơ đồ dòng dữ liệu cho chức năng quản lý khách hàng tiết kiệm: Thông tin về khách hàng mới đến gửi tiết kiệm được lưu vào kho danh sách khách hàng. Từ kho danh sách khách hàng, giao dịch viên hoặc kiểm soát viên có thể tìm kiếm thông tin về khách hàng hoặc thực hiện các chức năng sửa, xoá thông tin khách hàng. Khi giao dịch viên hoặc kiểm soát viên sửa thông tin về khách hàng thì thông tin mới sẽ được cập nhật vào kho danh sách khách hàng và các kho dữ liệu khác nếu có sử dụng thông tin về khách hàng (kho sổ tiết kiệm). Chức năng xoá một khách hàng ra khỏi danh sách khách hàng chỉ thực hiện được khi khách hàng chưa thực hiện bất kỳ giao dịch nào với ngân hàng: tức là khách hàng chưa từng gửi tiền vào ngân hàng. Sơ đồ dòng dữ liệu cho chức năng quản lý các giao dịch: Hàng ngày theo lịch, giao dịch viên phải tính lãi cho những món tiền đến hạn rút lãi của từng sổ tiết kiệm. Số lãi đó được lưu vào kho lãi đã tính nếu khách hàng chưa đến rút hoặc rút chưa hết. Trường hợp khách hàng đến rút gốc, giao dịch viên phải tính lãi trước hạn cho số tiền gốc mà khách hàng rút. Số tiền gốc khách hàng rút phải là những khoản gửi gần nhất để có lợi cho khách hàng. Sau đó giao dịch viên thực hiện chi gốc và chi lãi cho khách hàng. Khi chi gốc và lãi cho khách hàng, giao dịch viên phải lưu tổng lãi chi, tổng gốc chi vào kho sổ tiết kiệm và lưu số sổ, ngày chi, loại giao dịch, số tiền vào kho dữ liệu giao dịch. Sơ đồ dòng dữ liệu cho chức năng quản lý sổ tiết kiệm: Khi lập mới sổ tiết kiệm cho khách hàng, khách hàng phải điền đầy đủ các thông tin vào giấy gửi tiền tiết kiệm và nộp cho giao dịch viên. Giao dịch viên căn cứ vào số CMND của khách hàng, tìm thông tin về khách hàng trong kho dữ liệu danh sách khách hàng, nếu khách hàng chưa có trong kho dữ liệu thì thực hiện chức năng cập nhật thông tin khách hàng mới. Khi thông tin về khách hàng đã tồn tại trong hồ sơ của ngân hàng thì tiến hành lập mới sổ tiết kiệm cho khách hàng. Giao dịch viên thu tiền và kiểm đếm sau đó tiến hành lưu thông tin sổ tiết kiệm vào kho dữ liệu sổ tiết kiệm và kho giao dịch rồi in thông tin về sổ tiết kiệm ra sổ tiết kiệm của khách hàng và sổ lưu tiết kiệm. Giao dịch viên ký nhận và lấy chữ ký của khách hàng lên sổ lưu, lấy chữ ký xác nhận và dấu của kiểm soát viên lên hồ sơ gửi rồi giao trả sổ tiết kiệm cho khách hàng. Sơ đồ dòng dữ liệu cho chức năng quản lý gửi thêm: Sau khi lập mới sổ tiết kiệm, thông tin về sổ tiết kiệm được lưu vào kho dữ liệu sổ tiết kiệm và kho giao dịch. Khi khách hàng đến gửi thêm tiền, khách hàng phải điền thông tin cá nhân và số sổ tiết kiệm vào phiếu gửi tiền rồi nộp cho giao dịch viên cùng với sổ tiết kiệm CMND và tiền. Căn cứ vào số sổ tiết kiệm giao dịch viên tìm sổ trong kho dữ liệu và cập nhật số tiền gửi thêm vào kho dữ liệu sổ tiết kiệm, sổ lưu và lưu số tiền, ngày giao dịch, số sổ vào kho giao dịch để thuận tiện cho việc tra cứu thông tin và tính lãi suất cho khách hàng. Xây dựng mô hình thực thể liên kết của hệ thống quản lý tiết kiệm tích luỹ trong ngân hàng TMCP Bắc á: Trong đó các thuộc tính tham gia vào mối liên kết của các thực thể bao gồm: Thực thể khách hàng gồm các thuộc tính: mã khách hàng, tên khách hàng, số CMND, địa chỉ. Thực thể sổ tiết kiệm gồm các thuộc tính: Số sổ, số tiền gửi, ngày gửi, loại kỳ hạn, mã SP, tổng lãi, tổng lãi rút, tổng gốc rút. Thực thể giao dịch gồm các thuộc tính: Số sổ, số tiền gửi, ngày gửi, loại giao dịch. Thực thể lãi suất gồm các thuộc tính: Mã SP, tên SP, loại tiền, loại kỳ hạn, loại rút lãi, lãi suất. Thực thể lãi đã tính gồm các thuộc tính: Số sổ, số tiền gửi, ngày gửi, ngày tính lãi, tiền lãi, nhập gốc, đã rút. THIẾT KẾ HỆ THỐNG Thiết kế cơ sở dữ liệu: Dự kiến: Để quản lý được khách hàng cần lưu thông tin khách hàng vào kho danh sách khách hàng. Các thông tin cần quản lý bao gồm: Mã khách hàng, tên khách hàng, số CMND, nơi cấp, ngày cấp, địa chỉ, điện thoại. Thông tin về sổ tiết kiệm của khách hàng cũng cần phải lưu vào kho sổ tiết kiệm, làm cơ sở cho việc tìm kiếm và đối chiếu khi khách hàng đến giao dịch. Thông tin cần thiết gồm có: Số TK, mã khách hàng, số tiền gửi, loại tiền gửi, ngày gửi, loại kỳ hạn, số tiền phải nộp hàng tháng, lãi suất, loại rút lãi. Khi khách hàng đến giao dịch cần phải lưu thông tin giao dịch của khách hàng, để phục vụ cho việc tính lãi, và báo cáo, thống kê, kiểm soát giao dịch của khách hàng. Kho giao dịch bao gồm các thông tin sau: Số TK, loại giao dịch, loại tiền giao dịch, ngày giao dịch. Để tính lãi cho sổ tiết kiệm phải có cơ sở dữ liệu lưu lãi suất gồm có: Mã SP, tên SP, loại kỳ hạn, lãi suất. Do lãi suất quy định theo loại tiền gửi, kỳ hạn gửi, loại rút lãi, tuỳ mức độ mà mức lãi suất khác nhau. Nên phải có thêm các bảng mã chứa thông tin về loại tiền, loại kỳ hạn, loại rút lãi. Và vì thế kho lãi suất cũng phải chia thành hai kho thì mới quản lý được. Sẽ có kho lãi suất gồm: Mã sản phẩm-SP, tên SP, loại kỳ hạn, loại tiền, loại rút lãi; và kho lãi suất chi tiết gồm các thông tin: mã SP, số tiền từ, số tiền đến, lãi trước hạn, lãi đúng hạn, kỳ lãi suất liên kết tới kho lãi suất bằng mã SP. Sau khi tính lãi, số lãi tính xong phải được lưu vào kho lãi đã tính để dễ dàng thực hiện các giao dịch chi gốc, chi lãi. Mô hình dữ liệu quan hệ của các kho dữ liệu dự kiến: Khách hàng - KH {Mã KH, KH, số CMND, nơi cấp, ngày cấp, địa chỉ, điện thoại} Sổ tiết kiệm - TK { Số TK, mã KH, số tiền gửi, loại tiền gửi, ngày gửi, loại kỳ hạn, số tiền phải nộp hàng tháng, lãi suất, loại rút lãi} Giao dich {Chỉ số, Số TK, loại giao dịch, loại tiền giao dịch, ngày giao dịch} Lãi suất {Mã SP, tên SP, loại kỳ hạn, loại tiền, loại rút lãi } LS chi tiết {Mã số, mã SP, số tiền từ, số tiền đến, lãi trước hạn, lãi đúng hạn, kỳ lãi suất} Và các bảng mã: Các loại giao dịch, loại tiền, loại kỳ hạn, loại rút lãi. Tất cả các quan hệ đưa ra đều thuộc chuẩn 3NF. Tuy nhiên để dễ dàng cho công tác quản lý và thực hiện một số nghiệp vụ tính toán, tra cứu, thống kê, báo cáo, một số bảng dữ liệu cần có thêm một số thuộc tính dư thừa, đã tồn tại trong các tệp dữ liệu khác. Dưới đây là sơ đồ thiết kế và liên kết của cơ sở dữ liệu áp dụng cho việc quản lý tiết kiệm tích luỹ trong Ngân hàng TMCP Bắc á: Thiết kế các bảng dữ liệu: Bảng CacLoaiGiaoDich: Lưu trữ thông tin về các loại giao dịch giữa khách hàng với ngân hàng. Tên trường Kiểu dữ liệu Mô tả MaGiaoDich Varchar(25) Mã loại giao dịch TenLoaiGiaoDich Varchar(135) Tên loại giao dịch Bảng LoaiTien: Lưu trữ các loại tiền dùng trong giao dịch của ngân hàng. Tên trường Kiểu dữ liệu Mô tả Maso Varchar(25) Mã loại tiền giao dịch TenLoaiTien Varchar(135) Tên loại tiền giao dịch TyGia Float Tỷ giá so với đồng VN Bảng LoaiKyHan: Lưu trữ loại kỳ hạn gửi của sổ tiết kiệm. Tên trường Kiểu dữ liệu Mô tả MaKyHan Varchar(25) Mã loại kỳ hạn gửi TenKyHan Varchar(135) Tên loại kỳ hạn gửi KyHan Numeric(18,0) 1, 2, 3, … KyKyHan Varchar(25) Ngày, tháng, năm Bảng LoaiRutLai: Lưu trữ loại rút lãi của sổ tiết kiệm. Tên trường Kiểu dữ liệu Mô tả MaSo Varchar(25) Mã loại rút lãi TenLoaiRutLai Varchar(135) Tên loại rút lãi Bảng LaiSuat: Lưu loại lãi suất tương ứng với loại tiền, kỳ hạn gửi và loại rút lãi của từng sổ tiết kiệm. Tên trường Kiểu dữ liệu Mô tả MaSP Varchar(25) Mã loại lãi suất TenSP Varchar(135) Tên loại lãi suất LoaiKyHan Varchar(25) Mã kỳ hạn trong bảng LoaiKyHan LoaiTien Varchar(25) Mã loại tiền gửi của sổ tiết kiệm LoaiRutLai Varchar(25) Mã loại rút lãi tương ứng trong bảng LoaiRutLai Bảng LSChiTiet: Lưu chi tiết lãi suất tương ứng với loại lãi suất trong bảng LaiSuat và số tiền gửi của sổ tiết kiệm. Tên trường Kiểu dữ liệu Mô tả MaSo Int Trường khoá tự động tăng MaSP Varchar(25) Mã loại lãi suất SoTienTu Numeric Số tiền tối thiểu của mức lãi suất SoTienDen Numeric Số tiền tối đa của mức lãi suất LsuatDungHan Float Lãi suất đúng hạn LsuatTruocHan Float Lãi suất trước hạn KyLaiSuat Varchar(25) Tháng/ Năm/ Ngày Bảng DsachKH: Lưu thông tin về khách hàng của ngân hàng. Tên trường Kiểu dữ liệu Mô tả MaKH Varchar(25) Trường khoá xác định duy nhất mỗi khách hàng HoTenKH Varchar(135) Họ tên của khách hàng SoCMND Varchar(9) Số CMND của khách hàng NgayCap DateTime Ngày cấp CMND của khách hàng NoiCap Varchar(135) Nơi cấp CMND của khách hàng DiaChi Varchar(135) Địa chỉ của khách hàng DienThoai Varchar(25) Số điện thoại liên lạc của khách hàng Bảng SoTietKiem: Lưu thông tin về từng sổ tiết kiệm của khách hàng. Tên trường Kiểu dữ liệu Mô tả SoTK Varchar(25) Trường khoá xác định duy nhất sổ tiết kiệm MaKH Varchar(25) Mã khách hàng gửi tiết kiệm của sổ SoCMND Varchar(9) Số CMND của khách hàng NgayCap DateTime Ngày cấp CMND của khách hàng NoiCap Varchar(135) Nơi cấp CMND của khách hàng SoTienGui Numeric Số tiền gửi ban đầu của sổ LoaiTienGui Varchar(25) Loại tiền gửi của sổ NgayGui DateTime Ngày gửi đầu tiên của sổ LoaiKyHan Varchar(25) Mã kỳ hạn trong bảng LoaiKyHan SoTienPhaiNopHangThang Numeric Số tiền phải gửi vào hàng tháng MaSP Varchar(25) Mã loại lai suất tương ứng trong bảng LaiSuat LaiSuat Float Lãi suất đúng hạn LsuatTruocHan Float Lãi suất trước hạn LoaiRutLai Varchar(25) Mã loại rút lãi tương ứng trong bảng LoaiRutLai NgayDenHan DateTime Ngày đến hạn của sổ tiết kiệm TongLai Numeric Tổng lãi của sổ tiết kiệm TongGocRut Numeric Tổng gốc đã rút của sổ tiết kiệm TongLaiRut Numeric Tổng lãi đã rút của sổ tiết kiệm NgayTinhLaiDen DateTime Ngày tính lãi đến của Sổ tiết kiệm Bảng GiaoDich: Lưu thông tin chi tiết về từng giao dịch của các sổ tiết kiệm Tên trường Kiểu dữ liệu Mô tả ChiSo Int Trường khoá tự động tăng SoTK Varchar(25) Số sổ tiết kiệm LoaiGiaoDich Varchar(25) Loại giao dịch LoaiTienGiaoDich Varchar(25) Loại tiền giao dịch SoTienGiaoDich Numeric Số tiền giao dịch NgayGiaoDich DateTime Ngày thực hiện giao dịch Bảng TinhLai: Lưu số tiền lãi đã tính cho từng sổ tiết kiệm. Tên trường Kiểu dữ liệu Mô tả ChiSo Int Trường khoá tự động tăng SoTK Varchar(25) Số sổ tiết kiệm SoTienGui Numeric Số tiền gửi ban đầu của sổ tiết kiệm LaiSuat Float Lãi suất đúng hạn TuNgay DateTime Ngày bắt đầu tính lãi DenNgay DateTime Tính lãi đến ngày NhapGoc Numeric Số tiền đã nhập gốc DaRut Numeric Số tiền đã rút Thiết kế các chức năng ứng dụng: PHẦN III: MÔI TRƯỜNG ỨNG DỤNG NGÔN NGỮ VB 6.0 Microsoft VisualBasic cho phép soạn thảo, kiểm tra các trình ứng dụng của Windows, hơn nữa nó còn có các file biên dịch trợ giúp “VisualBasic và Active X”, thậm trí các trình ứng dụng Internet, Online VisualBasic. VisualBasic là ngôn ngữ lập trình theo hướng đối tượng với công cụ cơ sở dữ liệu mô hình quan hệ, kiến trúc Client / Server . Nó đã cung cấp đầy đủ các đối tượng trong thư viện sẵn có của nó. Các thư viện như DAO, RDO, ADO để truy cập tới Database. Các đối tượng điều khiển như TEXTBOX, COMBOBOX, DBGRID, MSRDC...dùng để thiết kế giao diện và hiển thị dữ liệu lấy từ Database, Recordset hay Resultset. Các đối tượng điều khiển là các tệp OCX. Mỗi đối tượng được xây dựng bởi các phần chính sau: Properties (Thuộc tính): Quy định các đặc điểm của đối tượng. Method (Phương thức): Là công việc mà đối tượng có khả năng thực hiện được. Event (Sự kiện): Là sự nhận biết ảnh hưởng của các tác động bên ngoài đối tượng. Ta hiểu rằng sự kiện là một thủ tục, nó được thực hiện khi đối tượng bị ảnh hưởng của sự kiện đó. Visual Basic là một môi trường lập trình rất tốt cho các hướng đối tượng cho từng công việc khác nhau. Các thủ tục của Visual Basic được viết ra để sắp xếp theo dõi các đối tượng. Visual Basic 6.0 có thể xây dựng một đối tượng dễ dàng. Ví dụ như ta xây dựng một lớp mới(Class) với các thuộc tính, sự kiện và phương thức theo yêu cầu. Việc xây dựng các Class này là xây dựng một thư viện động DLL. Khi ta dịch thành DLL thì các ứng dụng khác trong Windows sử dụng một cách dễ dàng, thuận tiện. Với Visual Basic 6.0 ta có thể tạo ra một đối tượng điều khiển mới(.OCX) bằng cách tạo ra một Control mới trong Project. Trên Control này ta dùng các đối tượng có sẵn và viết thêm thuộc tính, thủ tục cần thiết. Việc xây dựng mới trên Control giống hệt như xây dựng chương trình trên Form và sau khi xây dựng xong ta tạo (.OCX) từ MenuFile. Mang tệp(.OCX) chép vào máy bất kỳ và sử dụng như một (.OCX) sẵn có trong VisualBassic Visual Basic dễ dàng kết nối với các cơ sở dữ liệu như: SQL Server, Access... Công nghệ Activex: Là công nghệ mới của Microsoft được coi là để kết hợp Destop với Internet thành một, các công cụ điều khiển Activex cho những lập trình viên trên tất cả những hệ thống phát triển cuả PC. Nếu ta chọn cơ sở dữ liệu là SQL Server thì Activex sau đó có thể sử dụng mạnh nhất trong các môi trường Internet. Ativex DLL là chương trình giống như Ativex exe nhưng nó cung cấp giao diện. Nó được dịch ra DLL, khi dịch nó tự động đăng ký vào hệ điều hành. Ativex Document DLL là Ativex DLL có giao diện chạy hoàn toàn trên trang Web. Nếu dùng Ativex Document DLL để làm với cơ sở dữ liệu thì ta phải chọn cơ sở dữ liệu Client Server (ta chọn SQL Server). Thư viện ADO và cấu trúc OLEDB/ADO: Cho đến Visual Basic 5.0, ADO (dữ liệu đối tượng Ativex – Ativex Data Object) trở thành nền tảng của kỹ thuật truy cập cơ sỏ dữ liệu Internet. Trong Visual Basic 6.0, ADO 2.0 trở nên càng quan trọng hơn. Ta có thể dùng ADO không chỉ để truy cập cơ sở dữ liệu thông qua trang Web, mà còn có thể dùng nó để lấy dữ liệu từ ứng dụng viết bằng Visual Basic. ADO là giao diện dựa trên đối tượng cho công nghệ dữ liệu mới nổi gọi là OLEDB. Các thành phần ADO: Connect: Dùng để tạo kết nối với cơ sở dữ liệu. Error : Chứa các lỗi trả về khi thực hiện thao tác với dữ liệu. Command: Đối tượng được tạo ra từ cơ sở dữ liệu bằng cách thực hiện một câu lệnh SQL. Parameter: Các tham số gắn liền với đối tượng command và truyền vào các Query có tham số hoặc có thủ tục gắn liền với dữ liệu. Recordset: Tập hợp các bản ghi là kết quả của việc mở một bảng dữ liệu hoặc thực hiện một câu lệnh SQL. Field: Đại diện cho một trường trong dữ liệu với các kiểu dữ liệu thông dụng. Property: Đại diện cho các thuộc tính động của các đối tượng thuộc ADO. Mô hình ADO: connection errors errors command Parameters recordset fields Parameters fields Mỗi đối tượng Connection, Command, Recordset, Field đều có phần Properties (thuộc tính). connection command recordset fields properties property Sử dụng các thành phần của ADO. Connection: Kết nối tới nguồn dữ liệu. Để tạo ra một kết nối với cơ sở dữ liệu ta sử dụng phương thức Open đối tượng Connection (Connection. Open), hoặc có thể sử dụng phương thức Recordset. Open. VD: Dim adConn as New ADODB.Connection adConn. Connectstring = “Provider = OLEDB;Datasouse = Test; _ UID = sa;PWD = ;Server = ServerNT ” adConn.CursorLocation = adUseClient adConn.Open Như vậy ta đã truy cập tới SQL Server Recorset : Mở Cơ sở dữ liệu VD : Dim Rs as New ADODB.Recorset Set Rs = adConn.Execute ( “ Select * from Emp ”,adOpenDanaset,_ adlockOptimistic) Sử dụng thuộc tính CursorType, LockType để định nghĩa và khoá cho đối tượng RecordSet: CursorType: Định nghĩa kiểu con trỏ khi tạo RecordSet. Có giá trị sau: Kiểu con trỏ Hằng Mô tả Forward-Only AdOpenForwardOnly Kiểu con trỏ tham khảo. Ta chỉ có thể chuyển về phia trước trong RecorSet. Sử dụng phương thức MovePrevious và MoveFirst sẽ sinh lỗi KeySet AdOpenKeySet Khi chọn kiểu này ta không xem được những bản ghi mà người dùng khách thêm vào hoặc xoá đi trong lúc ta đang truy cập Dynamic AdOpenDynamic Ta có thể thấy toàn bộ thay đổi trên dữ liệu do những người sử dụng khách thực hiện trong khi ta đang mở RecordSet Static AdOpenStatic Bản sao của toàn bộ dữ liệu của một RecordSet. Mọi thay đổi thông tin ở nguồn đều không được cập nhật vào RecordSet Lock Type:Định nghĩa kiểu khoá dữ liệu khi tạo RecordSet. Có giá trị sau: Hằng Mô tả AdLockReadOnly Mở dữ liệu kiểu chỉ đọc. Ta không thể thay đổi được dữ liệu AdLockPessimistic Khoá bản ghi khi bắt đầu tiến hành sửa đổi và tiếp tục khoá đến khi thi hành phương thức Update hay di chuyển sang bản ghi khác AdLockOptimistic Bản ghi bị khoá ngay lúc thi hành phương thức Update hay di chuyển sang bản ghi khác AdLockBatchOptimistic Sử dụng để khoá bản ghi trong chế độ Update hàng loạt Một số thuộc tính khác của ADO dùng để tìm kiếm dữ liệu và di chuyển: Thuộc tính Miêu tả FindMethod Cú pháp: Find(Criteria, SkipRows,SerchDirrectory,Start) + Criteria : điều kiện tìm kiếm + SkipRows: Số bản ghi bỏ qua để bắt đầu tìm từ bản ghi hiện thời hoặc vị trí Start Bookmark + SerchDirrectory: Hướng tìm kiếm có hai hướng là adSerchForward và SerchBackward + Start: Vị trí Bookmark để bắt đầu tìm kiếm MoveFirst Chuyển về bản ghi đầu MoveLast Chuyển về bản ghi cuối MoveNext Chuyển tới bản ghi tiếp theo MovePrevious Chuyển về bản ghi trước Cấu trúc OLE DB/ ADO OLEDB được thiết kế để thay ODBC như một phương thức để truy cập dữ liệu. ODBC hiện thời là tiêu chuẩn phía Client. Sử dụng Window rất phổ biến để truy cập các dữ liệu quan hệ bởi nó thiết lập các Server cơ sở dữ liệu quan hệ càng tổng quát càng tốt đến các ứng dụng Client. OLEDB đi sâu hơn một bước làm cho tất cả nguồn dữ liệu trở thành tổng quát đối với ứng dụng Client. Phần lớn các nhà lập trình không tương tác trực tiếp với OLEDB. Thay vào đó, họ lập trình với ADO, mô hình đối tượng cung cấp giao diện với OLEDB ClientWorkstation Có nhiều khả năng bạn có thể dùng ADO và OLEDB để đạt được nguồn dữ liệu quan hệ ngay khi không có trình cung cấp OLEDB cục bộ. Bởi vì nó có trình cung cấp OLE DB tổng quát cho cơ sở dữ liệu quan hệ ODBC. Ta chỉ cần lập trình với phần giao diện người sử dụng ở phía Client. Bởi việc truy cập dữ liệu trên ứng dụng Visual Basic và trên trình duyệt Web được chuyển hết về phía AtiveX Server, ta có thể bảo đảm rằng logic chương trình luôn nhất quán, bất kể loại ứng dụng nào đang được dùng. NGÔN NGỮ SQL VÀ CƠ SỞ DỮ LIỆU SQL SERVER Tổng quan hệ quản trị cơ sở dữ liêu SQL Server: SQL Server là một cơ sở dữ liệu Client/Server (xem phần sau) . Nó có hai chức năng chính : Chứa dữ liệu người dùng nhập vào Xử lý các yêu cầu gửi tới thông qua ngôn ngữ truy vấn cơ sở dữ liêu và trả về cho ứng dụng kết quả xử lý. Mô hình xử lý dữ liệu của SQL Server : Dữ liệu CT ứng dụng Các dịch vụ câu lệnh SQL Client Server Các đối tượng trong hệ quản trị cơ sở dữ liệu SQL Server: Bảng (Table) : Bảng là đơn vị lưu trữ dữ liệu chính trong cơ sở dữ liệu SQL Server, đó là tập hợp dữ liệu có liên quan với nhau , là một đối tượng lưu trữ dữ liệu dưới dạng hàng, cột. Các hàng trong bảng người ta gọi là các bản ghi chứa dữ liệu, các cột là các trường chứa các thuộc tính của bảng. Khung nhìn dữ liệu (View) : Về mặt logic, bảng ảo giống như một bảng thực, nó không chứa bảng vật lý nào mà nó chỉ là kết quả của việc thực hiện các câu lệnh Select trên những bảng thực và dữ liệu của nó sẽ bị mất đi khi không thực hiện các câu lệnh đó. Chỉ số của bảng (Index) : Chỉ số là một cấu trúc được tạo ra để lưu trữ thông tin về vị trí các bản ghi trong một bảng dữ liệu nhằm cải thiên tốc độ truy xuất dữ liệu. Một chỉ số được tạo nên trên một hay nhiều bảng, mọi sự thay đổi dữ liệu trong bảng đều được tự động cập nhật với các chỉ số có liên quan trong suốt quá trình sử dụng. Thủ tục lưu trữ (Store procedure) : Là một khối các câu lệnh truy vấn cơ sở dữ liệu, được lưu trữ trong một thủ tục và có tham số vào cũng như giá trị trả về khi thủ tục đó được thực hiện. Trigger : Là một thủ tục lưu trữ được tự đông thực hiện bởi SQL Server khi một bảng được sửa đổi bằng các câu lệnh UPDATE, INSERT, DELETE. Nó có thể lưu trữ một câu lệnh đơn giản hay các câu lệnh phức tạp của T_SQL (Transaction SQL), nhờ đó ta có thể lợi dụng cơ chế này để viết các Trigger nhằm giải quyết các quy tắc nghiệp vụ, các mối dàng buộc phức tạp. Ngôn ngữ cơ sở dữ liệu SQL : Định nghĩa : Ngôn ngữ cơ sở dữ liệu (CSDL) là các câu lệnh, các mệnh đề được phát biểu theo một quy tắc nhất định, được người sử dụng đưa vào và được hệ quản tri CSDL xử lý Ngôn ngữ SQL là ngôn ngữ CSDL dùng các câu lệnh để chèn/ xoá/ sửa dữ liệu. Ngoài ra, dùng mệnh đề để hỏi, truy vấn dữ liệu, bảo vệ dữ liệu. Người ta gọi đây là ngôn ngữ phi thủ tục, nghĩa là người sử dụng sử dụng các câu lệnh của ngôn ngữ để xác định dữ liệu nào họ muốn mà không cần biết dữ liệu này được tìm như thế nào. User Ngôn ngữ CSDL Hệ quản trị CSDL CSDL Cách sử dung ngôn ngữ SQL : có 2 cách Sử dụng tương tác : người sử dụng gửi câu lệnh tới và được hệ quản trị cơ sở dữ liệu thực thi ngay và kết quả được trả về cho người sử dụng Nhúng các câu lệnh SQL vào trong chương trình, các chương trình này có thể viết bằng các ngôn ngữ khác nhau, ưu điểm của phương pháp này là được thực hiện nhanh và tăng tính mềm dẻo. Tính toàn vẹn dữ liệu và cơ chế bảo mật : Hệ quản trị cơ sở dữ liệu SQL Server cho phép nhiều người sử dụng CSDL của hệ thống nên bảo mật là vấn đề đặc biệt quan trọng, công việc này sẽ điều khiển mọi sự truy cập và sử dụng CSDL của hệ thống. Vấn đề bảo mật ở đây là: Ngăn chặn sự truy cập trái phép tới cơ sở dữ liệu. Không cho phép sự truy cập trái phép trên các đối tượng của hệ quản trị cơ sở dữ liệu. Điều khiển không gian sử dụng đĩa. Điều khiển sự sử dụng tài nguyên của hệ thống. Khiểm tra người dùng. Bảo mật cơ sở dữ liệu được thực hiện ở 2 mức : bảo mật hệ thống và bảo mật mức dữ liệu. Bảo mật hệ thống cung cấp những kỹ thuật điều khiển sự truy nhập và sử dụng CSDL ở mức hệ thống, cụ thể là : Phải đúng tên người dùng và mật khẩu. Giới hạn tài nguyên đối với người dùng. Bảo mật hệ thống kiểm tra những CSDL nào được phép truy nhập. Bảo mật dữ liệu cung cấp những kỹ thuật điều khiển sự truy nhập và sử dụng CSDL ở các đối tượng cụ thể như : người dùng được quyền truy nhập tới lược đồ đối tượng nào, và xác định quyền thao tác với những đối tượng đó . Trong SQL Server quyền được thực hiện một thao tác đặc biệt nào đó trên CSDL được chia làm 2 loại : Quyền đối tượng: là những quyền cho phép người sử dụng thực hiện một tác động nào đó lên đối tượng, (ví dụ : INSERT, UPDATE lên một bảng). Quyền hệ thống: là quyền cho phép người dùng sử dụng có thể thực hiện một số lớp thao tác đặc biệt như : Quyền tạo bảng Quyền được tạo ra người sử dụng hoặc tạo ra các phiên làm việc. CRYSTAL REPORT: Giới thiệu: Crystal Report dùng để tạo ra các mẫu báo cáo (Report Form). Crystal Report có thể báo cáo trên mọi Cơ sở dữ liệu như Access, FoxPro, SQL Server và các Data Base khác. So với Crystal Report 4.6, Crystal Report 8.X, 9.X có nhiều chức năng hơn và đặc biệt có thể kết nối qua OLEDB ngoài việc kết nối qua ODBC. Sử dụng form báo cáo (.rpt) được thiết kế từ mở CSDL qua OLEDB: Đối với các form báo cáo được thiết kế theo chuẩn kết nối CSDL quan OLE DB, việc sử dụng nó sẽ được thông qua các thư viện DLL của Crystal Report: Khai báo sử dụng thư viện DLL Crystal Report ActiveX Designer Run Time: Thực hiện: VB->Project-> References và sau đó chọn thư viện như hình bên. Nhấn OK để ghi nhận Khai báo sử dụng Crystal Report Viewer Control Thực hiện: VB->Project-> Components và sau đó chọn Control như hình bên. Nhấn OK để ghi nhận. Sử dụng Form trong VB Thiết Crystal Viewer Control CRViewer1 và Command1 lên Form1: Giả sử form thiết kế được lưu ra với tên têp: Test.rpt và chương trình nguồn dưới đây sẽ thực hiện việc báo cáo lên CRViewer1: sVí dụ: Private Sub Command1_Click() Dim mApp As New CRAXDRT.Application Dim mReport As New CRAXDRT.Report mReport = mApp.OpenReport("D:\Study\Test.rpt") mReport.Database.LogOnServerEx "pdsoledb", "LAN", _ "Test", "sa", "pass", "OLEDB", "Provider=SQLOLEDB" CRViewer1.ReportSource = mReport CRViewer1.ViewReport End Sub Trong đó: pdsoledb: là Provider Sesvice để truy cập CSDL LAN: Là tên máy chủ Test: Là tên DataBase sa: Là tên kết nối pass: Là mật khẩu OLEDB: Là loại Server Đối với các Formulas được định nghĩa trong Report có thể được truyền giá trị từ ngoài VB. Ví dụ trong Report có 3 Formulas: GD, LB và KTT: sVí dụ: Private Sub Command1_Click() ……………… For i = 0 To mReport.FormulaFields.Count - 1 vFName = mReport.FormulaFields(i).FormulaFieldName Select Case UCase(vFName) Case "GD" mReport.FormulaFields(i).Text = "Nguyễn Ngọc Linh" Case "KTT" mReport.FormulaFields(i).Text = "'Phan Thu Hoài'" Case "LB" mReport.FormulaFields(i).Text = "' Nhâm Thị Nguyên '" End Select Next i CRViewer1.ViewReport End Sub Trong VB có thể lập trình bổ sung các FormulaFields, Group, TextField, … sVí dụ: Thêm mới 1 TextField Private Sub Command1_Click() mReport.Sections(1).AddTextObject "CTY TNHH BìNH NGUYÊN", 100,0 End Sub Trong đó: Sessions(1): Là Session đầu tiên của Report (Report Header) 100: Là toạ độ left của TextField đối với Session 0: Là tạo độ top của TextField đối với Session Để Format nội dung TextField có thể áp dụng đoạn chương trình sau: sVí dụ: Thêm mới 1 TextField Private Sub Command1_Click() Dim textobj As CRAXDRT.TextObject Set textobj = mReport.Sections(1).AddTextObject( _ "CTY TNHH BìNH NGUYÊN", 100, 0) textobj .Font.Name = ".vnTimeH" textobj .Font.Bold = True textobj .TextColor = RGB(255, 0, 0) End Sub Các hàm cơ bản trong Crystal Report Để thiết kế được các báo cáo phong phú trong Crystal Report, sau đây chỉ giới thiệu một số hàm cơ bản mà hay sử dụng: Các hàm về Date/Time: 4CurrentDate: Xác định ngày hiện tại của hệ điều hành 4CurrentTime: Xác định giờ hiện tại của hệ điều hành 4Date(number): Chuyển từ dữ liệu số về dạng Date/Time. Number bắt đầu từ Dec 30 1899 4Date(String): Chuyển dữ liệu xâu về dữ liệu Date/Time. String có giá trị như: Dec 30 2001 sVí dụ: Date('Dec 30 2001') 4Date(yyyy,mm,dd): Tạo dữ liệu DateTime từ 3 cấu thành năm (yyyy), tháng (mm) và ngày (dd). sVí dụ: Date(2001,12,30) 4CDate(number hoặc string hoặc ...): Hàm này tương tự như hàm Date sVí dụ: CDate ("Dec. 31, 1999") Trả về giá trị ngày là Dec. 31, 1999. CDate (50) Trả về giá trị ngày là February 18, 1900. CDate (#Oct. 20, 1999 12:02pm#) Trả về giá trị ngày là October 20, 1999. CDate (1930, 7, 30) Trả về giá trị ngày là July 30, 1930. 4DateAdd: Tăng hoặc giảm dữ liệu Date/Time. sVí dụ: DateAdd("d", -32, #Sept 28, 1999#) Trả về dữ liệu Date/Time là August 27, 1999. DateAdd ("m", 1, #1/31/1996#) Trả về dữ liệu Date/Time là February 29, 1996. Chú ý rằng DateAdd sẽ không trả về giá trị February 31, 1996. DateAdd ("q", 17, #Sept 28, 1999#) Trả về dữ liệu Date/Time là December 28, 2003. DateAdd ("h", -400, #Sept 28, 1999#) Trả về dữ liệu Date/Time là September 11, 1999 8:00 AM. 4DateDiff: Xác định chênh lệch giữa hai dữ liệu Date/Time: sVí dụ: DateDiff ("q", #10/6/1999#, #5/20/2003#) Trả về 14. DateDiff ("q", #3/31/1999#, #4/1/1999#) Trả về 1. DateDiff ("q", #1/1/1999#, #3/31/1999#) Trả về 0. 4DatePart: Trả về một trong những cấu thành của dữ liệu Date/Time 4IsDate: Kiểm tra một số hay xâu có thoả mãn là dữ liệu Date/Time 4isTime: Kiểm tra xem số hay xâu có thoả mãn là Time không. Các hàm về xâu: 4Length: Xác định độ dài của xâu. 4Trim: Bỏ ký tự trắng ở bên trái và bên phải. 4TrimLeft: Bỏ ký tự trắng ở bên trái. 4UpperCase, LowerCase: Chuyển ký tự về các ký tự lớn và ngược lại. 4StrReverse: Đảo ngược thứ tự của các ký tự. sVí dụ StrReverse("abc") Trả về "cba". 4NumericText: Kiểm tra xem xâu ký tự có thể là số được không. 4ToNumber: Chuyển từ một xâu ký tự về giá trị số. 4ToText: Chuyển một dữ liệu bất kỳ về xâu ký tự. 4ReplicateString  : Tạo một xâu ký tự với số lượng ký tự như quy định. 4InStr  : Tìm một xâu ký tự trong một xâu ký tự (từ trái sang phải). 4InStrRev  : Tìm một xâu ký tự trong một xâu ký tự (từ phải sang trái). 4StrCmp  : So sánh hai xâu ký tự. Các hàm chuyển đổi: 4CBool  : Chuyển dữ liệu về dạng Boolean. 4CCur  : Chuyển dữ liệu về dạng Currency. 4CStr  : Chuyển dữ liệu về dạng String. Các hàm khác: 4Picture: Định dạng dữ liệu (định dạng xâu ký tự). 4LooksLike: Tìm xâu ký tự (giống) trong xâu ký tự. PHẦN IV: HƯỚNG DẪN CÀI ĐẶT VÀ SỬ DỤNG CHƯƠNG TRÌNH HƯỚNG DẪN CÀI ĐẶT CSDL: 1. Chuẩn bị Gói cài đặt chương trình: - Đĩa cài Visual Basic 6.0 - Đĩa cài đặt SQL Server - Đĩa cài đặt Crystal Report 8.5(Trở lên) - ứnng dụng “Quản lý tiết kiệm tích luỹ” 2. Cài đặt môi trường - Cài đặt Visual Basic 6.0 - Cài đặt SQL Server - Cài đặt Crystal Report 8.5(Trở lên) - Backup CSDL 3. Cài đặt DataBase - Tạo DataBase có tên là: Tietkiembaca - Trong trường hợp cài đặt mới CSDL thì thực hiện Restore tệp dữ liệu trên thư mục cài đặt. Nếu trong trường hợp nâng cấp máy đang chạy thì thực hiện Restore tệp dữ liệu được Backup sau cùng - Giao diện: Sau đó nhấn phím phải chuột lên cơ sở dữ liệu vừa tạo ra và chọn Alltasks à Restore:à chọn From device à nhấn Select devices..à Add.. à chọn tệp Tietkiembaca.bak rồi nhấn OK HƯỚNG DẪN SỬ DỤNG CHƯƠNG TRÌNH: 1. Giao diện chính: Sau khi đăng nhập vào hệ thống thì màn hình chính của chương trình như sau: 2. Giao diện thêm mới khách hàng: + Bước 1: Vào màn hình chính, chọn “Bảng mã”, chọn “Thông Tin khách hàng”, giao diện bảng thông tin cá nhân khách hàng xuất hiện. Giao diện + Bước 2: Khi chọn “Thêm mới” thì màn hình xuất hiện Khi mở giao diện, danh sách khách hàng được đưa ra bảng trên màn hình để người nhập biết được những mã khách hàng đã nhập, tránh được tình trạng nhập trùng hoặc bỏ sót. Thông tin thêm mới khách hàng được nhập từ bàn phím, khi chọn nút chấp nhận, thông tin khách hàng sẽ được nạp vào cơ sở dữ liệu và hiển thị ra bảng dữ liệu trên màn hình. MãKH: Nhập Mã khách hàng mới đến giao dịch Họ tên: Nhập họ tên khách hàng mới đến giao dịch Địa chỉ: Nhập địa chỉ của khách hàng mới đến giao dịch Số CMND: Nhập số CMND của khách hàng mới đến giao dịch Nơi cấp: Nơi cấp CMND của khách hàng mới đến giao dịch Ngày cấp: Ngày cấp CMND của khách hàng mới đến giao dịch Điện thoại: Số điện thoại liên lac của khách hàng mới đến giao dịch 3.Giao diện lập mới sổ tiết kiệm: Hàng ngày giao dịch viên được phát một số lượng sổ tiết kiệm trên đó in sẵn số sổ dùng để lập mới sổ tiết kiệm cho khách hàng. khi có yêu cầu lập mới sổ tiết kiệm, giao dịch viên nhập số sổ in sẵn trên sổ tiết kiệm vào giao diện mở sổ tiết kiệm. Sau đó giao dịch viên nhập số CMND của khách hàng, nếu số CMND đã có trong kho dữ liệu thì thông tin về khách hàng sẽ tự động hiển thị trên màn hình. Nếu chưa có sẽ xuất hiện màn hình thêm mới khách hàng. Khi giao dịch viên điền đủ các thông tin về số tiền gửi, loại tiền gửi sẽ được chọn lãi suất tương ứng ở ô mã SP. Các thông tin còn lại trong mục thông tin sổ tiết kiệm sẽ tự động nạp vào. Số tiền phải nộp hàng tháng có thể điều chỉnh được. Phần còn lại có giá trị mặc định. Khi nhấn nút chấp nhận, thông tin sổ tiết kiệm sẽ đồng thời lưu vào hai kho sổ tiết kiệm, giao dịch và thông tin sổ hiển thị ra bảng dữ liệu trên màn hình. Sổ TK: Nhập số sổ tiết kiệm được in sẵn trên mỗi sổ dùng để lập mới sổ tiết kiệm cho khách hàng. Số CMND: Nhập số CMND của khách hàng đến mở sổ tiết kiệm Mã KH: Hiển thị mã khách hàng có số CMND sau khi nhập dữ liệu ở ô số CMND Tên KH: Hiển thị tên khách hàng có Số CMND sau khi nhập dữ liệu ở ô số CMND Ngày cấp: Hiển thị ngày cấp của số CMND sau khi nhập dữ liệu ở ô số CMND Nơi cấp: Hiển thị nơi cấp của số CMND sau khi nhập dữ liệu ở ô số CMND Ngày Gửi: Mặc định là ngày hiện tại Loại tiền gửi: Nhấn F2 để chọn loại tiền gửi có sẵn trong cơ sở dữ liệu Số tiền gửi: Nhập số tiền gửi của khách Mã SP: Nhấn F2 để chọn loại lãi suất tương ứng với loại tiền và số tiền gửi của khách hàng Loại kỳ hạn: Hiển thị loại kỳ hạn của loại lãi suất đã chọn Lãi suất trước hạn: Hiển thị lãi suất đúng hạn của loại lãI suất đã chọn Kỳ lãi suất: Hiển thị kỳ lãi suất là ngày hoặc tháng hoặc năm của loại lãi suất Phải gửi thêm …: Nhập số tiền phải nộp theo định kỳ được quy định Ngày đến hạn: Tự động hiển thị căn cứ vào ngày gửi và kỳ hạn gửi Ngày tính lãi đến: Tự động hiển thị căn cứ vào ngày gửi và kỳ rút lãi 4.Giao diện tính lãi: Thông tin số TK là số sổ được nhập từ bàn phím. Giá trị đến ngày mặc định là ngày hiện tại, căn cứ vào ngày đến hạn của sổ, lãi suất sẽ tự động nạp vào ô lãi suất trên màn hình. Khi chọn nút phân bổ, chương trình sẽ tự phân bổ các món tiền từ ngày đến ngày, tính số dư, số ngày và đưa ra bảng trên màn hình. Khi chọn nút tính, chương trình sẽ tính số tiền lãi cho từng món tiền từ ngày đến ngày của sổ. Khi chọn lưu số liệu tính được sẽ nạp vào cơ sở dữ liệu. Sổ TK: Nhập số sổ tiết kiệm cần tính lãi Từ ngày: Nhập ngày bắt đầu cần tính lãi, mặc định là ngày mở sổ Đến ngày: Nhập ngày cuối cần tính lãi, mặc định là ngày hiện tại 5.Giao diện rút tiền: Khi chọn số sổ trong danh sách và nhấn nút chọn, thông tin về sổ tiết kiệm sẽ xuất hiện trong bảng thông tin chi tiết. Khi chọn nút chi gốc hoặc nút chi lãi sẽ xuất hiện cửa sổ rút gốc hoặc rút lãi để nhập số tiền cần rút. Nhấn chấp nhận để lưu giao dịch vào cơ sở dữ liệu. Rút Lãi: Nhập số tiền lãi cần rút của khách hàng Còn lại: Hiển thị số tiền lãi còn lại sau khi nhập số tiền gốc cần rút Ngày: Nhập ngày rút, mặc định là ngày hiện tại 6.Giao diện gửi thêm: Khi chọn số sổ trong danh sách và nhấn nút chọn, thông tin về sổ tiết kiệm sẽ xuất hiện trong bảng thông tin chi tiết. Khi chọn nút gửi thêm sẽ xuất hiện cửa sổ gửi thêm để nhập số tiền gửi thêm. Nhấn chấp nhận để lưu giao dịch vào cơ sở dữ liệu. Gửi thêm: Nhập vào số tiền gửi thêm của khách hàng Số dư mới: Hiển thị số dư mới sau khi nhập số tiền gửi thêm Ngày: Nhập ngày gửi thêm mặc định là ngày hiện tại 7.Giao diện chuyển kỳ hạn: Nhập ngày vào ô ngày chuyển rồi nhấn chọn, hệ thống sẽ lọc các sổ có ngày đến hạn trước hoặc bằng ngày chuyển. Khi nhấn nút chấp nhận, tất cả các sổ được chọn sẽ chuyển lên một kỳ mới và nạp vào cơ sở dữ liệu. Ngày chuyển: Mặc định là ngày hiện tại 8.Các báo cáo: 8.1 Báo cáo tổng hợp 7.2 Báo cáo danh sách khách hàng 7.3 Báo cáo các giao dịch TÀI LIỆU THAM KHẢO Lập trình nhanh với Visual Basic Tác giả: Nguyễn Ái Dân Phân tích và thiết kế hệ thống thông tin Tác giả: Đào Thanh Tĩnh Nhà xuất bản quân đội nhân dân Phân tích và thiết kế hệ thống thông tin Tác giả: Nguyễn Văn Ba Nhà xuất bản Đại học quốc gia Hà Nội 4. Microsoft Visual Basic 6.0 và lập trình cơ sở dữ liệu Tác giả: Nguyễn Hữu Anh Nhà xuất bản lao động xã hội

Các file đính kèm theo tài liệu này:

  • doc48657 .doc
Tài liệu liên quan