II. CÀI ĐẶT CHƯƠNG TRÌNH
1. Cài đặt chương trình đọc file
Mục đích của chương trình đọc file là biến đối dữ liệu từ file dữ liệu thành cơ sở dữ liệu trong hệ thống cơ sở dữ liệu.
1.1. Sàn giao dịch HOSE
Chương trình đọc file sẽ đọc dữ liệu và Insert hoặc update vào cơ sở dữ liệu.
Một số thĩng số sẽ đẩy ra file cấu hình app.config như sau:
<add key="Path" value="D:\source\Bang gia truc tuyen\tailieu\HOSTC_IS"></add>
<add key="MaxRecord" value="1000"></add>
<add key="FinishCourse1Time" value="90000"></add> <add key="FinishCourse2Time" value="945000"></add> <add key="FinishCourse3Time" value="103000"></add> <add key="FinishTime" value="120000"></add>
Trong đó:
• Path: Đường dẫn đến thư mục chứa cỏc mục BACKUPx
• MaxRecord: Số bản ghi tối đa cú thể ghi vào cơ sở dữ liệu của bảng Le.dat.
• FinishCourse1Time: Thời gian kết thúc phiân giao dịch thứ nhất • FinishCourse2Time: Thời gian kết thúc phiân giao dịch thứ hai. • FinishCourse3Time: Thời gian kết thúc phiân giao dịch thứ ba. • FinishTime: Thời gian kết thúc giao dịch.
• TimeDelay: Biân độ thời gian.
Theo lớ thuyết, cứ đến 9h là hết giao dịch đợt một, nhưng dữ liệu từ Sở giao dịch chứng khoán về được đến sàn giao dịch chứng khoán cũng phải mất một thời gian. TimeDelay được đưa vào để tính độ trễ này.
Chương trình đọc file DAT đã được cài đặt thành công. Giao diện khi chạy chương trình như sau:
Hình 3. 3 Giao diện chương trình dọc File DA
1.2. Sàn giao dịch HAST
Chư
ơng trình đọc file XML của sàn giao dịch HASTC có khác với chương trình đọc file DAT của sàn giao dịch HOSE. Số lượng chỉ gồm có 3 file, và thời gian đọc loại file XML cũng nhanh hơn nhiều so với file dạng DA. Các file này được đặt trong cùng một thư mục, nên không cần cơ chế xử lí để tìm ra thư mục chứa file mới nhất như ở sàn giao dịch HOSE.
Việc đẩy các thông số cấu hình của chương trình đọc file của sàn HASTC cũng tương tự như của sàn HOSE. Dựa vào bản thiết kế chi tiết em đã cài đặt thành công chương trình này
Hình 3.4 Giao diện chương trình đọc File XML 2. Cài đặt phần hiển thị
Ở phần này, chơng ta áp dụng các cơng nghệ đã giới thiệu ở trờn, đó là cơng nghệ Ajax và cơng nghệ WebService.
Phần WebService sẽ kết nối với cơ sở dữ liệu và cung cấp cho phía client thĩng qua các phương thức hàm.
ấy ột ớ ụ à m "GetLi e ecurityTemp" tả ề ất ả ác cỉ ố ủa ất ả ác ó c ứ g kh án n êm ết t n ở giao ịch TP ồ Cớ Minh.
Hình 3.6 Giao diện khi thực hiện một hàm trên WebService
Sau bước xây dựng các hàm WebService, chúng ta sẽ sử dụng cụng nghệ ajax để kết nối lấy dữ liệu về. Để lấy dữ liệu từ WebService, em dùng một ứng dụng trung gian để gọi hàm từ WebService. Ứng dụng này được giới thiệu và cung cấp miễn phí tại địa chỉ http://www.mathertel.d .
Sau khi y ữ l ệu t ành ng ừ ebServic , dữ liệu có được là dạng Text, không phải dạng HTML. Vì vậy ta p i ử ớ ữ l ệu để hiện thị ra dạng HTML ng Ja a cripts. ng v c ử ớ y bao ồm ẽ ừng o , cell ủa ng . Mỗi cell của bảng sẽ chứa chỉ số chứng khoán nào đó. au đ , mỗi lần lấy dữ liệu về ta phải tính toán dựa trên các chỉ số này đềĩ u ợp ớ cho ng cel .
Tuy nh n khi dựng á h y ẽ ú t n ư c m, đó à ử ớ ữ l ệu ại áy client ẽ ặng n. ớ do à ởi c ư ng t ình ẽ p iẽ à ĩ u ng cell t ( ếu c ọn ất ả kh ng 150 ó c ứ g kh n, ú ất ả 26 t tì ú ới 150x26 cell n ). ếu áy client ú u ình qá t ấp tì ẽ ặp ấn đề khi c ạy c ư ng t ình y.
Để k ắc p ục ối a ấn đề y, tì ỗi n i ữ l ệu , ếu ú sai k ác ữ l ệu ủa ỗi cell tì ới ử .
setInterval 'TotalSecData() , 30000)
ác ụng ủa m y à sau ột kh ng t ời gian ẽ t c h ện ọi lại hàm
'TotalSecData()' , hàm sẽ thực h ện ết ối ất đồng ộ à ấy ữ l ệu ề ừ ebService
Giao d ện ủa ác Check ox ựa c ọn
Hình 3.7 Giao diện chức năng lựa chọn mã chứng khoán để hiển thị
Giao diện chính của chương trình:
Hình 3. 8 Giao diện chính khi chạy chương trìn