IV. THIẾT KẾ CƠ SỞ DỮ LIỆU
IV.1. Thiết kế cỏc bảng dữ liệu quan hệ
a. Sơ đồ quan hệ thực thể [2][8][10]
IV.2. Cỏc bảng dữ liệu phục vụ việc quản trị hệ thống, tổ chức lƣu trữ, quản lý, khai thỏc cỏc thụng tin ngoài hệ thống Corebanking.
a. Users
Tờn bảng: Users
Nội dung:Lưu thụng tin về cỏc user và mức độ phõn quyền đến từng chức năng của bỏo cỏo
Tờn trƣờng Mụ tả Kiểu dữ liệu Not Null Giỏ trị
cho phộp
PkId Thứ tự user int Unchecked
UserID Mó user nvarchar(50) Unchecked Password Mật khẩu binary(24) Checked UserName Tờn user nvarchar(255) Checked AccessLevel mức truy cập nvarchar(2) Checked BranchCode Mó chi nhỏnh nvarchar(3) Checked Department
Name
Phũng ban nvarchar(255) Checked
Title Tiờu đề nvarchar(255) Checked Phone Điện thoại nvarchar(255) Checked Email Địa chỉ email nvarchar(255) Checked CategoryDet
ailsOption
Mó cỏc bỏo cỏo phõn quyền
nvarchar(4000) Checked
CategoryList Danh sỏch mó cỏc bỏo cỏo phõn quyền nvarchar(4000) Checked SIBSID Mó truy cập hệ thống core varchar(50) Checked Bảng 15: Mụ tả bảng user
a. Tờn bảng: Userlog
Nội dung:Lưu thụng tin về cỏc user đăng nhập hệ thống
Tờn trƣờng Mụ tả Kiểu dữ liệu Not Null Giỏ trị cho phộp
PkId Số thứ tự int Unchecked
UserId Mó user nvarchar(50) Unchecked IPAddress Địa chỉ đăng nhập nvarchar(50) Checked ActionName Tờn hành động nvarchar(512) Checked ActionTime Thời gian hành động datetime Unchecked
Bảng 16: Mụ tả bảng userlog
b. Tờn bảng: AdminID
Nội dung:Lưu thụng tin về cỏc mó chức năng trong hệ thống
Tờn trƣờng Mụ tả Kiểu dữ liệu Not Null Giỏ trị cho phộp
CategoryID Mó thứ tự nvarchar(50) Unchecked AdminID Mó chức năng nvarchar(50) Unchecked ObjectName Tờn đối tƣợng nvarchar(255) Checked LinkAddress Địa chỉ link .asp nvarchar(255) Checked
Bảng 17: Mụ tả bảng AdminID
c. Tờn bảng: AutoImportBall
Nội dung:Lưu dữ liệu kế toỏn nội bộ của Ngõn hàng
Tờn trƣờng Kiểu dữ liệu Not Null
DATADATE datetime Checked
GLFBRN nvarchar(3) Checked
GLFACC nvarchar(9) Checked
GLFPRD nvarchar(6) Checked
GLFCTP nvarchar(3) Checked
GLFFYR nvarchar(3) Checked
GLFDEC decimal(18, 2) Checked
CD00 nvarchar(1) Checked
GLFBAL decimal(18, 2) Checked
CD01 nvarchar(1) Checked
GCHTDY decimal(18, 2) Checked
CD02 nvarchar(1) Checked
GDATDY decimal(18, 2) Checked
CD03 nvarchar(1) Checked
GCATDY decimal(18, 2) Checked
CD04 nvarchar(1) Checked
GDAMTD decimal(18, 2) Checked
CD05 nvarchar(1) Checked
GCAMTD decimal(18, 2) Checked
CD06 nvarchar(1) Checked
GDAYTD decimal(18, 2) Checked
CD07 nvarchar(1) Checked
GCAYTD decimal(18, 2) Checked
CD08 nvarchar(1) Checked
GLFCDE nvarchar(10) Checked
Bảng 18: Mụ tả bảng AutoImportBall
d. Tờn bảng: BranchArea
Nội dung:Lưu thụng tin về cỏc khu vực của chi nhỏnh trong hệ thống
Tờn trƣờng Mụ tả Kiểu dữ liệu Not Null Giỏ trị
cho phộp
MaKhuVuc Mó khu vực nvarchar(5) Unchecked TenKhuVuc Tờn khu vực nvarchar(50) Checked SapXep Thứ tự sắp xếp int Checked Bảng 19: Mụ tả bảng BranchArea
e. Tờn bảng: Branch
Nội dung:Lưu thụng tin về cỏc chi nhỏnh trong hệ thống
Tờn trƣờng
Mụ tả
Kiểu dữ liệu
Not Null Giỏ trị
cho phộp
PkId Thứ tự chi nhỏnh int Unchecked brn_code Mó chi nhỏnh nvarchar(3) Unchecked brn_name Tờn chi nhỏnh nvarchar(255) Checked brn_address Địa chỉ nvarchar(255) Checked brn_phone Số điện thoại nvarchar(255) Checked Province tỉnh nvarchar(255) Checked brn_area Khu vực nvarchar(2) Checked
Bảng 20: Mụ tả bảng Branch
f. Tờn bảng: Category
Nội dung:Lưu thụng tin về cỏc loại bỏo cỏo trong hệ thống
Tờn trƣờng Mụ tả Kiểu dữ liệu Not Null Giỏ trị
cho phộp
CategoryCode Mó bỏo cỏo nvarchar(20) Unchecked CategoryName Tờn bỏo cỏo nvarchar(255) Unchecked Category
TableDefine
Bỏo cỏo định nghĩa nvarchar(100) Checked PrimaryKey trƣờng khoỏ nvarchar(50) Checked DisplayField Trƣờng hiển thị nvarchar(50) Checked LinkAddress Địa chỉ link .aspx nvarchar(250) Checked InUse Trạng thỏi sử dụng bit Checked StoreProcedure Store tổng hợp
bỏo cỏo
nvarchar(50) Checked
PeriodCombo Lựa chọn trạng thỏi bit Checked CurrencyCombo Lựa chọn tiền tệ bit Checked BranchCombo Lựa chọn chi nhỏnh bit Checked
g. Tờn bảng: ReportData
Nội dung:Lưu thụng tin về cỏc loại bỏo cỏo trong hệ thống
Tờn trƣờng Mụ tả Kiểu dữ liệu Not Null Giỏ trị cho phộp
ReportID Mó bỏo cỏo nvarchar(50) Unchecked
ItemID nvarchar(50) Unchecked
Branch Mó chi nhỏnh nvarchar(3) Checked DataDate Ngày thỏng datetime Checked CurrCode Mó tiền tệ nvarchar(3) Checked Value1 Giỏ trị hiển thị
trờn cột bỏo cỏo dạng số
decimal(20, 4) Checked
Value2 decimal(20, 4) Checked
Value3 decimal(20, 4) Checked
Value4 decimal(20, 4) Checked
Value5 decimal(20, 4) Checked
Value6 decimal(20, 4) Checked
Value7 decimal(20, 4) Checked
Value8 decimal(20, 4) Checked
Value9 decimal(20, 4) Checked
.......
CharValue1 Giỏ trị hiển thị trờn cột bỏo cỏo dạng ký tự
nvarchar(500) Checked
CharValue2 nvarchar(500) Checked
CharValue3 nvarchar(500) Checked
CharValue4 nvarchar(500) Checked
CharValue5 nvarchar(500) Checked
.......
h. Tờn bảng: ReportDataTEMP
Nội dung:Lưu thụng tin về cỏc loại bỏo cỏo trong hệ thống
Tờn trƣờng Mụ tả Kiểu dữ liệu Not Null Giỏ trị
cho phộp
ReportID Mó bỏo cỏo nvarchar(50) Unchecked
ItemID nvarchar(50) Unchecked
Branch Mó chi nhỏnh nvarchar(3) Checked DataDate Ngày thỏng datetime Checked CurrCode Mó tiền tệ nvarchar(3) Checked Value1 Giỏ trị hiển thị
trờn cột bỏo cỏo dạng số
decimal(20, 4) Checked Value2 decimal(20, 4) Checked Value3 decimal(20, 4) Checked Value4 decimal(20, 4) Checked Value5 decimal(20, 4) Checked Value6 decimal(20, 4) Checked Value7 decimal(20, 4) Checked Value8 decimal(20, 4) Checked Value9 decimal(20, 4) Checked ............ ......... .......... CharValue1 Giỏ trị hiển thị
trờn cột bỏo cỏo dạng ký tự
nvarchar(500) Checked CharValue2 nvarchar(500) Checked CharValue3 nvarchar(500) Checked CharValue4 nvarchar(500) Checked CharValue5 nvarchar(500) Checked ............ ........... ..........
i. Tờn bảng: ReportID
Nội dung:Lưu thụng tin về cỏc tiờu chớ bỏo cỏo trong hệ thống
Tờn trƣờng Mụ tả Kiểu dữ liệu Not Null
Giỏ trị cho phộp
CategoryID Mó lớp bỏo cỏo nvarchar(50) Unchecked ReportID Mó bỏo cỏo nvarchar(50) Unchecked ReportName Tờn bỏo cỏo nvarchar(255) Checked CaptionWidth Độ rộng đầu để
bỏo cỏo
smallint Checked
ReportWidth Độ rộng bỏo cỏo int Checked ReportFont Độ rộng phụng
chữ
nvarchar(255) Checked
ReportHeader Tiờu đề đầu bỏo cỏo
ntext Checked
ReportFooter Tiờu đề cuối bỏo cỏo
ntext Checked
CurrencyTitle Tờn loại tiền tệ nvarchar(255) Checked ReportRate Tỷ lệ bỏo cỏo varchar(50) Checked RoundPosition Giỏ trị làm trũn varchar(3) Checked LinkAddress địa chỉ link nvarchar(255) Checked FirstColumnCaption Độ rộng tiờu đề
cột bỏo cỏo
nvarchar(255) Checked
DisplayEmptyItem Cú hiển thị giỏ trị rỗng khụng
bit Checked
ReportType Kiếu bỏo cỏo nvarchar(2) Checked ReportMasterTitle Tiờu đề chung cho
bỏo cỏo
nvarchar(4000) Checked
ReportMasterFooter Tiờu đề cuối chung cho bỏo cỏo
nvarchar(4000) Checked
j. Tờn bảng: ReportDetail
Nội dung:Lưu thụng tin về chi tiết cỏc tiờu chớ của cỏc loại bỏo cỏo trong hệ thống
Tờn trƣờng Mụ tả Kiểu dữ liệu Not Null
Giỏ trị cho phộp
ReportID Mó bỏo cỏo nvarchar(50) Unchecked ItemID Mó dũng bỏo cỏo nvarchar(50) Unchecked ItemParent Quan hệ cha con
trong mó dũng bỏo cỏo
nvarchar(50) Checked
ItemDescription Dũng bỏo cỏo hiển thị
nvarchar(500) Checked
Prefix Mục lục dũng nvarchar(255) Checked
Suffix nvarchar(255) Checked
CaptionFormat Định dạng tiờu đề dũng nvarchar(255) Checked ColDisable Cú hay khụng hiển thị cột bit Checked
AccountList Danh sỏch tài khoản cần hiển thị
nvarchar(255) Checked
GL DS TK kế toỏn char(1) Checked SQLStatement Cõu lệnh query
dữ liệu
ntext Checked
Note Ghi chỳ nvarchar(255) Checked
k. Tờn bảng: ReportFieldPosition
Nội dung:Lưu thụng tin về vị trớ dữ liệu cỏc tiờu chớ của cỏc loại bỏo cỏo trong hệ thống
Tờn trƣờng Mụ tả Kiểu dữ liệu Not Null
Giỏ trị cho phộp
PkId Mó thứ tự int Unchecked
ReportID Mó bỏo cỏo nvarchar(50) Unchecked ItemPosition Vị trớ mó trƣờng smallint Unchecked FieldName Tờn trƣờng nvarchar(50) Unchecked ItemDescription Liệt kờ mó nvarchar(255) Checked ItemWidth Độ rộng trƣờng int Checked DataType Kiểu dữ liệu
của trƣờng char(1) Checked FieldRateEnabled Tỷ lệ trƣờng hiển thị bit Checked Bảng 26: Mụ tả bảng ReportFieldPosition
V. THIẾT KẾ CÁC THỦ TỤC LƢU SẴN VÀ CÁC GểI V.1. Gúi tiện ớch (package) V.1. Gúi tiện ớch (package)
BAOCAONHANH_pkg[2]
Nguồn:
- AutoImportBall: Lấy dữ liệu từ hệ thống kế toỏn nội bộ Ngõn hàng - Cỏc bảng dữ liệu thụ của hệ thống Corebanking của Ngõn hàng - CDMAST: Bảng dữ liệu tiền gửi cú kỳ hạn
- DDMAST: Bảng dữ liệu tiền gửi khụng kỳ hạn - RMMAST: Bảng dữ liệu phõn hệ chuyển tiền
Đớch:
- ReportDataTemp: Dữ liệu cỏc loại bỏo cỏo sau khi tổng hợp xong từ hệ thống.
Xử lý:
- Từ bảng AutoImportBall, lấy cỏc dữ liệu cõn đối của hệ thống kế toỏn nội bộ Ngõn hàng theo từng chi nhỏnh con và toàn hàng,
- Từ bảng DDMAST, RMMAST và CDMAST lấy thụng tin về số CIF, tài khoản khỏch hàng, loại tài khoản, cỏc dữ liệu số dƣ tài khoản, cỏc mún chuyển tiền của khỏch hàng trong hệ thống. Đõy là thụng tin về cỏc sổ SA: Sổ tiết kiệm khụng kỳ hạn thụng thƣờng, ổ trứng vàng, tiết kiệm tớch lũy, rỳt dần…
- Xử lý: Đầu ngày, gúi Tổng hợp và Chiết xuất dữ liệu đƣợc đặt lịch tự động chạy. Gúi sẽ kiểm tra và xúa cỏc dữ liệu ngày cũ trong cỏc bảng lƣu trữ tại CSDL. Sau đú gúi sẽ kết nối lờn CoreBanking để lấy dữ liệu về theo cỏc điều kiện đƣợc viết trong gúi.
- Sau khi đó lấy đầy đủ cỏc dữ liệu cần thiết cho việc chiết xuất bỏo cỏo, gúi sẽ thực hiện việc cập nhật lại dữ liệu vừa đƣợc lấy về một số nội dung cho phự hợp với việc tổng hợp bỏo cỏo
- Tiếp theo gúi sẽ thực hiện gọi đến thủ tục tổng hợp dữ liệu (store procedure), thủ tục này sẽ tự động gọi đến cỏc thủ tục con nằm trong nú để lần lƣợt chiết xuất, tổng hợp dữ liệu cho tất cả cỏc bỏo cỏo trong hệ thống. Cỏc dữ liệu của bỏo cỏo sau khi hỡnh thành sẽ đƣợc lƣu trữ trong một bảng dữ liệu chung của hệ thống. Việc này cú ý nghĩa rất lớn trong việc tạo dữ liệu bỏo cỏo, ngƣời sử dụng chỉ việc xem bỏo cỏo mà khụng cần phải đợi thời gian tổng hợp bỏo cỏo.
- Ngƣời sử dụng khi chọn bỏo cỏo để xem, hệ thống sẽ tự động tạo ra một bảng dữ liệu tạm thời và đẩy cỏc dữ liệu của bỏo cỏo mà ngƣời sử dụng muốn xem vào bảng này. Khi ngƣời sử dụng thoỏt khỏi chƣơng trỡnh, hệ thống tự động xúa bảng dữ liệu này đi. Việc này cú ý nghĩa trong việc ngƣời sử dụng khi xem bỏo cỏo từ lần thứ 2 trở đi khụng phải mất thời gian chờ đợi việc lựa chọn dữ liệu của hệ thống mà hệ thống sẽ hiển thị lại dữ liệu đƣợc xem trƣớc đú trong bảng tạm.
- Việc thực cỏch thức xử lý dữ liệu nhƣ trờn cú những ƣu điểm sau: + Nếu gúi khụng lấy đƣợc dữ liệu thụ từ hệ thống sẽ bỏo lỗi
+ Nếu gúi khụng gọi đƣợc cỏc thủ tục tổng hợp dữ liệu cũng sẽ bỏo lỗi
+ Do việc chiết xuất, tổng hợp dữ liệu bỏo cỏo hệ thống tự động thực hiện, nờn ngƣời sử dụng khụng mất thời gian chờ đợi việc tổng hợp bỏo cỏo từ hệ thống
+ Dữ liệu bỏo cỏo của ngƣời sử dụng lần đầu đƣợc lƣu trữ trờn bảng tạm, Cỏc lần xem sau ngƣời sử dụng sẽ view dữ liệu từ bảng tạm này, bảng tạm sẽ tự động xúa đi khi ngƣời dựng thoỏt khỏi hệ thống. Việc này giỳp giảm thiểu xử lý tại hệ thống do hệ thống cú rất nhiều cỏc bỏo cỏo và rất nhiều ngƣời sử dụng.
V.2. Mụ hỡnh thiết kế lấy dữ liệu từ CoreBanking phục vụ cho chƣơng trỡnh bỏo cỏo: bỏo cỏo:
Hỡnh 24: Mụ hỡnh thiết kế lấy dữ liệu từ CoreBanking phục vụ cho chương trỡnh bỏo cỏo cho chương trỡnh bỏo cỏo
VI. THIẾT KẾ MÀN HèNH VI.1. Màn hỡnh Quản trị hệ thống VI.1. Màn hỡnh Quản trị hệ thống
Những thụng tin cần hiển thị:
+) Khai bỏo ngƣời sử dụng +) Khai bỏo mó chi nhỏnh
+) Khai bỏo một bỏo cỏo mới
VI.2. Màn hỡnh lựa chọn lớp bỏo cỏo
Những thụng tin cần hiển thị: +) Danh sỏch lớp cỏc bỏo cỏo;
+) Danh sỏch cỏc bỏo cỏo cú trong lớp
VI.3. Màn hỡnh Xem bỏo cỏo
Những thụng tin cần hiển thị: + Chọn bỏo cỏo cần xem
+ Nhập cỏc thụng số của bỏo cỏo
VI.4. Màn hỡnh Xuất bỏo cỏo
Những thụng tin cần hiển thị: + Chọn phƣơng thức xuất bỏo cỏo + Thực hiện xuất bỏo cỏo
VI.5. Màn hỡnh quản lý User
a. Thờm mới:
Những thụng tin cần hiển thị: Mó User: Nhập tay.
Tờn User: Nhập tay. Mật khẩu: Nhập tay.
Vai trũ: Chọn trong danh sỏch. Mó trờn BDS tƣơng ứng: Nhập tay.
Chi nhỏnh: Chọn trong danh sỏch kết xuất từ CSDL Cỏc nỳt chức năng: Thờm mới, Thoỏt
Khi bấm nỳt Thờm mới: Chƣơng trỡnh sẽ kiểm tra xem đó tồn tại User này chƣa, nếu chƣa tồn tại, chƣơng trỡnh sẽ lƣu cỏc thụng tin ngƣời sử dụng vào trong bảng User. b. Cập nhật: Những thụng tin cần hiển thị: Mó User: Tự động. Tờn User: Tự động. Mật khẩu: Để trắng
Vai trũ: Tự động, để dƣới dạng danh sỏch kết xuất từ cơ sở dữ liệu để dễ dàng cập nhật.
Mó trờn BDS tƣơng ứng: Tự động.
Chi nhỏnh: Tự động, để dƣới dạng danh sỏch kết xuất từ cơ sở dữ liệu để dễ dàng cập nhật.
Cỏc nỳt chức năng: Cập nhật, Thoỏt
Khi bấm nỳt Cập nhật: Chƣơng trỡnh sẽ kiểm tra xem đó tồn tại User này chƣa, nếu chƣa tồn tại, chƣơng trỡnh sẽ lƣu cỏc thụng tin ngƣời sử dụng vào trong bảng User.
VII. PHÂN TÍCH THIẾT KẾ TÍCH HỢP LỚP DỰ BÁO LÃI SUẤT VII.1. Phõn tớch yờu cầu VII.1. Phõn tớch yờu cầu
Từ yờu cầu bài toỏn đó nờu trờn lớp này cú:
VII.1.1. Chức năng
Chƣơng trỡnh gồm cú 4 chức năng chớnh:
- Nhập hạn mức giỏ trị chịu rủi ro lói suất.
- Nhập giới hạn khe hở tài sản nhạy cảm lói suất. Kết xuất 5 bỏo cỏo:
- Bỏo cỏo khe hở tài sản nhạy cảm lói suất.
- Bỏo cỏo tuõn thủ giới hạn khe hở tài sản nhạy cảm lói suất. - Bỏo cỏo thực trạng Var lói suất.
- Bỏo cỏo tũn thủ hạn mức Var lói suất. - Bỏo cỏo tổng hợp lói suất.
- Tiện ớch bỏo cỏo: Phõn trang và Kết xuất ra file Excel
VII.1.2. Hướng giải quyết
Căn cứ vào cỏc tài liệu tham khảo và liờn quan, gồm: - Yờu cầu ngƣời sử dụng lớp dự bỏo lói suất.
- Tài liệu phõn tớch thiết kế chƣơng trỡnh bỏo cỏo nhanh.
Lớp dự bỏo lói suất hồn tồn cú thể đƣợc bổ sung vào Hệ thống Bỏo cỏo nhanh đó đƣợc phỏt triển trờn nền Web. Do đú cỏc bỏo cỏo vẫn dựa theo mụ hỡnh kiến trỳc của hệ thống Bỏo cỏo nhanh.
a. Giải phỏp kỹ thuật Lớp dự bỏo lói suất
Thờm Lớp Quản lý giỏ trị chịu rủi ro lói suất vào Hệ thống Bỏo cỏo nhanh, bao gồm:
b. Thiết kế dữ liệu
Bổ sung Bảng dữ liệu
Dữ liệu của hệ thống gồm cú dữ liệu đồng bộ hàng ngày và cỏc dữ liệu nhập tay khỏc của hệ thống. Dữ liệu đồng bộ hàng ngày đƣợc lƣu trữ theo cấu trỳc dữ liệu sẵn cú của bỏo cỏo nhanh. Cũn dữ liệu nhập tay của hệ thống sẽ đƣợc lƣu trữ tại cỏc bảng tạo thờm trờn cựng CSDL của hệ thống bỏo cỏo nhanh. Chƣơng trỡnh này phải thờm Bảng RRLS_Currency, RRLS_GioiHanNCLS, RRLS_VarLimited.
Bảng RRLS_Currency dựng để lƣu trữ cỏc loại tiền tệ đƣợc sử dụng trong hệ thống, bảng RRLS_Currency cú cấu trỳc:
STT Tờn trƣờng Kiểu dữ liệu Kớch thức Mụ tả
1. CurrCode Char 3 Loại tiền tệ
2. Description Nvarchar 50 Mụ tả
Bảng 27: Mụ tả bảng RRLS_Currency
Bảng RRLS_GioiHanNCLS dựng để lấy lƣu trữ cỏc giới hạn khe hở tài sản nhạy cảm lói suất do ngƣời dựng nhập vào, bảng RRLS_GioiHanNCLS cú cấu trỳc nhƣ sau:
STT Tờn trƣờng Kiểu dữ liệu Kớch thƣớc Mụ tả
1. ID INT 4 Mó tự tăng
2. NgayDL Datetime 8 Ngày dữ liệu
3. KhongKH Int 4 Giới hạn khụng kỳ hạn
5. Den2thang Int 4 Giới hạn đến 2 thỏng 6. Den3thang Int 4 Giới hạn đến 3 thỏng 7. Den6thang Int 4 Giới hạn đến 6 thỏng 8. Den9thang Int 4 Giới hạn đến 9 thỏng 9. Den12thang Int 4 Giới hạn đến 12 thỏng 10. Den24thang Int 4 Giới hạn đến 24 thỏng 11. Den36thang Int 4 Giới hạn đến 36 thỏng 12. Den60thang Int 4 Giới hạn đến 60 thỏng 13. Tren60thang Int 4 Giới hạn trờn 60 thỏng
Bảng 28: Mụ tả bảng RRLS_GioiHanNCLS
Bảng RRLS_VarLimited dựng để lƣu hạn mức Var lói suất đối với USD, VND, và giỏ tiền tệ, bảng RRLS_VarLimited cú cấu trỳc nhƣ sau.
STT Tờn trƣờng Kiểu dữ liệu Kớch thƣớc Mụ tả
1. DataDate Datetime 3 Ngày trong thỏng 2. CurrCode char 200 Loại tiền tệ 3. LimitedValue Decimal 9(18,2) Hạn mức
Bảng 29: Mụ tả bảng RRLS_VarLimited
Bổ sung cỏc thủ tục lƣu trữ sẵn (Store Procedure) tạo số liệu