KẾT QUẢ THU ĐƯỢC SAU KH

Một phần của tài liệu Bổ sung thêm 1 Modul vào hệ thống quản lý thu cước phí để tính phần dư nợ của các khách hàng khi họ chưa nộp đủ cước phí (Trang 50 - 79)

II. THIẾT KẾ HỆ THỐNG.

i.KẾT QUẢ THU ĐƯỢC SAU KH

ĐƯỢC SAU KHI HOÀN THÀNH ĐỀ TÀI

9. Kết quả thử nghiệm chương trình.

Chương trình đã được hoàn thiện sau một thời gian dài phân tích và thiết kế, khi chương trình đã được hoàn thành thì công đoạn thử nghiệm là rất quan trọng, nó cho thấy rõ được chương trình có chạy chính xác không, nếu không chính xác thì có sai sót ở chỗ nào và từ đó có thể sửa chữa, thay đổi cho phù hợp. Kết quả thử nghiệm chương trình sau khi hoàn thành đề tài khá tốt, các số liệu được đưa vào đã được lưu trữ lại và kết quả sau khi xử lý đưa ra rất chính xác. Với modul chương trình này thì người quản lý thu cước phí Internet sẽ không còn phải lo vấn đề sai sót trong việc tính cước cho khách hàng, còn khách hàng yên tâm và luôn tin tưởng vào nhà cung cấp. Trong thực tế rất khó nếu như không muốn nói là không có trường hợp khách hàng trả thiếu hay trả chậm tiền cước phí nhưng nếu có trường hợp ấy sảy ra thì chương trình sẽ có những thông báo tới nhắc nhở khách hàng của mình.

Trong thực tế đây là modul dự phòng trường hợp khách hàng trả thiếu xảy ra nên em cũng rất mong modul được áp dụng nhưng đồng thời em cũng không muốn một khách hàng nào có thể để xảy ra trường hợp này đối với công ty. Do trình độ còn có hạn, hơn nữa với một thời gian hạn chế, modul được thiết kế còn khá nhiều những yếu điểm, em rất mong thầy cô góp ý và lượng thứ.

10.Một số giao diện màn hình tiêu biểu.

Để bắt đầu thực hiện, chương trình sẽ chạy form chính đây là một MDI Form, từ form này ta có thể gọi được các form còn lại của modul và có một hệ thống menu giúp người sử dụng có thể lựa chọn các thao tác khác nhau.

Form ch ính của chương trình

Công việc xử lý của hệ thống sẽ bắt đầu từ việc nhập dữ liệu vào hệ thống do vậy mà form nhập sẽ được gọi và người sử dụng sẽ nhập vào một số thông tin cần thiết để hệ thống có thể xử lý và cho ra kết quả.

Form nhập dữ liệu được thiết kế như sau:

Trong quá trình nhập dữ liệu rất có thể người sử dụng sẽ gặp phải những nhầm lẫn về thông tin của khách hàng do đó việc nhu cầu sửa dữ liệu đã được lưu là một điều tất yếu khách quan. Để đáp ứng nhu cầu này, form sửa dữ liệu sẽ giúp người sử dụng sửa chữa những sai sót do mình nhập vào.

Form Sửa dữ liệu được thiết kế như sau:

Để phục vụ mục đích quản lý, nhà quản lý sẽ có thể có yêu cầu muốn xem về dữ liệu đã được lưu trữ như thế nào ? Vấn đề này sẽ được đáp ứng với form xem dữ liệu của hệ thống. Trong Form này dữ liệu sẽ được hiển thị dưới dạng bảng để nhà quản lý sẽ dễ dàng xen xét.

Form xem đã được thiết kế như sau:

Trong quá trình quản lý, nhà quản lý sẽ phải thêm vào những khách hàng mới, khi đó sẽ phải có một giao diện vào để nhà quản lý thêm các khách hàng mới. Form nhập của hệ thống sẽ đáp ứng nhu cầu này.

Form thêm dữ liệu đã được thiết kế như sau:

Để chọn lựa khách hàng mà người quản lý cần gửi những giấy thông báo về tình hình nợ cũng như tình hình sử dụng Internet của khách hàng thì chương trình sẽ có các form giúp nhà quản lý lựa chọn khách hàng cần gửi và cũng từ đó để các report cần thiết lên phục vụ cho mục đích của nhà quản lý.

Form gọi report đã được thiết kế như sau.

Báo cáo gửi tới khách hàng thông báo cho khách hàng biết tình hình sử dụng Internet của họ.

Báo cáo đã được thiết kế như sau:

Báo cáo tổng hợp của chương trình sẽ cung cấp toàn bộ thông tin về khách hàng cũng như tình hình sử dụng cước phí của họ.

Báo cáo được thiết kế như sau:

B

11.Code của chương trình.

Code của form chính(MDI Form)

Private Sub mnuCanhan_Click() frmcanhan.Show

End Sub

Private Sub mnugiay_Click() frmthongbao.Show

End Sub

Private Sub mnuInan_Click() rp1.Show

End Sub

Private Sub mnuThang_Click() frmnothang.Show (adsbygoogle = window.adsbygoogle || []).push({});

End Sub

Private Sub mnuSua_Click() Frmsua.Show

End Sub

Private Sub mnuThem_Click() frmthem.Show

End Sub

If MsgBox(" Bạn có chắc chắn thoát ?", vbYesNo, "Thông báo") <> vbYes Then Exit Sub End If End End Sub

Private Sub mnuthongbao_Click() frmcanhan.Show

End Sub

Private Sub mnuThutien_Click() frmnhap.Show

End Sub

Private Sub mnuVung_Click() frmvung.Show

End Sub

Private Sub mnuXem_Click() Frmxem.Show

End Sub

Private Sub mnuXoa_Click() Frmxoa.Show

Code form Nhập Tiền cước phí

Private Sub Cmdluu_Click() Data2.Refresh

While Not Data2.Recordset.EOF With Data2.Recordset

If (!makh = UID.Text) Then .Edit

!datra = Val(Txttong.Text) - Val(Txtno.Text) !no = Val(Txtno.Text) .Update End If .MoveNext End With Wend

MsgBox "Dữ liệu đã được lưu!", , "Thông báo" Cmdluu.Enabled = False

Cmdmoi.SetFocus End Sub

Private Sub Cmdmoi_Click() Cmdluu.Enabled = False UID.Text = "" Txttong.Text = "" Txttra.Text = "" Txtuser.Text = "" Txtno.Text = ""

Txtdatra.Text = "" UID.SetFocus End Sub

Private Sub cmdthoat_Click() Unload frmnhap

End Sub

Private Sub Form_Load() Dim mySQL As String

mySQL = "SELECT MAKH FROM BANGNO GROUP BY MAKH" data1.RecordSource = mySQL

data1.Refresh

While Not data1.Recordset.EOF With data1.Recordset (adsbygoogle = window.adsbygoogle || []).push({});

If (Not IsNull(!makh)) Then UID.AddItem !makh End If .MoveNext End With Wend Cmdluu.Enabled = False End Sub

Private Sub Txttra_KeyPress(KeyAscii As Integer) Dim s As Double

On Error GoTo Err_Txttra_Click If KeyAscii = 13 Then

If s < 0 Then

MsgBox "Đã trả thừa " & -s & "!", , "Thông báo" Txttra.SetFocus Else Txtno.Text = s Cmdluu.Enabled = True Cmdluu.SetFocus End If End If Exit_Txttra_Click: Exit Sub Err_Txttra_Click:

MsgBox "Nhập sai dữ liệu!", , "Thông báo" Cmdluu.Enabled = False

Resume Exit_Txttra_Click End Sub

Private Sub UID_Click() Dim s As Long Cmdluu.Enabled = False Txttong.Text = "" Txttra.Text = "" Txtuser.Text = "" Txtno.Text = "" Txtdura.Text = "" Txtdatra.Text = "" Data2.Refresh

If (!makh = UID.Text) Then Txtdura.Text = !Duration Txttong.Text = !tongtien Txtuser.Text = !UserName If Not (IsNull(!datra)) Then Txtdatra.Text = !datra

Txtno.Text = Val(Txttong.Text) - Val(Txtdatra.Text) Else Txtdatra.Text = 0 Txtno.Text = Txttong.Text End If End If .MoveNext End With Wend Txttra.SetFocus End Sub

Code form thêm khách hàng

Private Sub Command1_Click() With Data2.Recordset .AddNew !UserName = Text2.Text !Duration = Val(Text3.Text) !tongtien = Val(Text6.Text) !datra = 0

.Update End With

MsgBox "Dữ liệu đã được lưu!", , "Thông báo" Command1.Enabled = False

Command2.SetFocus End Sub

Private Sub Command2_Click() Text2.Text = "" Text3.Text = "" Text4.Text = "" Text5.Text = "" Text6.Text = "" Text2.SetFocus Command1.Enabled = False End Sub

Private Sub Command3_Click() Unload frmthem

End Sub

Private Sub Form_Load() Command1.Enabled = False End Sub

Private Sub Text2_KeyPress(KeyAscii As Integer) If KeyAscii = 13 Then

Else

Text2.SetFocus End If

End If End Sub

Private Sub Text3_KeyPress(KeyAscii As Integer) On Error GoTo Err_Text3_Click

If KeyAscii = 13 Then

Text4.Text = CLng(Text3.Text) * 4 / 3 Text5.Text = CLng(Text3.Text) * 4 / 30

Text6.Text = Val(Text4.Text) + Val(Text5.Text) If Not (Text2.Text = "") Then

Command1.Enabled = True Command1.SetFocus Else Text3.SetFocus Command1.Enabled = False End If End If Exit_Text3_Click: Exit Sub Err_Text3_Click:

MsgBox "Nhập sai dữ liệu!", , "Thông báo" Text3.SetFocus

Command1.Enabled = False Resume Exit_Text3_Click End Sub (adsbygoogle = window.adsbygoogle || []).push({});

Code form Sửa khách hàng.

Private Sub Command1_Click() Data2.Refresh

While Not Data2.Recordset.EOF With Data2.Recordset

If (!makh = UID.Text) Then .Edit

!no = Val(txttong.Text) - Val(txtda.Text) !no = Val(txtcon.Text) .Update End If .MoveNext End With Wend

MsgBox "Dữ liệu đã được cập nhật!", , "Thông báo" End Sub

Private Sub Command2_Click() Unload Frmsua

End Sub

Private Sub Form_Load() Dim mySQL As String

Data1.Refresh

While Not Data1.Recordset.EOF With Data1.Recordset

If (Not IsNull(!makh)) Then UID.AddItem !makh End If .MoveNext End With Wend End Sub

Private Sub UID_Click() Dim s As Long Dim sql As String

sql = "SELECT * FROM BANGNO " Data2.RecordSource = sql txttong.Text = "" Txtuser.Text = "" txtcon.Text = "" txtdur.Text = "" txtda.Text = "" Data2.Refresh

While Not Data2.Recordset.EOF With Data2.Recordset

If (!makh = UID.Text) Then txtdur.Text = !Duration

Txtuser.Text = !UserName If Not (IsNull(!datra)) Then txtda.Text = " "

txtcon.Text = Val(txttong.Text) - Val(txtda.Text) Else txtda.Text = " " Txtno.Text = txttong.Text End If End If .MoveNext End With Wend txtda.SetFocus End Sub

Code form gọi thông báo.

Private Sub Cmb1_Click() Dim s As Long

Dim sql As String

sql = "SELECT * FROM BANGNO " Data2.RecordSource = sql

Text1.Text = "" Data2.Refresh

While Not Data2.Recordset.EOF With Data2.Recordset

Text1.Text = !UserName End If .MoveNext End With Wend End Sub

Private Sub cmdthoat_Click() Unload frmthongbao

End Sub

Private Sub Form_Load() Dim mySQL As String

mySQL = "SELECT MAKH FROM BANGNO GROUP BY MAKH" Data1.RecordSource = mySQL (adsbygoogle = window.adsbygoogle || []).push({});

Data1.Refresh

While Not Data1.Recordset.EOF With Data1.Recordset

If (Not IsNull(!makh)) Then Cmb1.AddItem !makh End If .MoveNext End With Wend End Sub

Code form thông báo nợ

Private Sub cmdthoat_Click() Unload frmcanhan

End Sub

Private Sub Command1_Click() DataSQL.SQLBCCN (UID.Text)

rptDN.Title = "Thông báo sử dụng internet của khách hàng số " + UID.Text rptDN.Show

End Sub

Private Sub Form_Load() Dim mySQL As String

mySQL = "SELECT MAKH FROM BANGNO GROUP BY MAKH" Data1.RecordSource = mySQL

Data1.Refresh

While Not Data1.Recordset.EOF With Data1.Recordset

If (Not IsNull(!makh)) Then UID.AddItem !makh End If .MoveNext End With Wend End Sub

Private Sub UID_Click() Dim s As Long

txtuser.Text = "" Data2.Refresh

While Not Data2.Recordset.EOF With Data2.Recordset

If (!makh = UID.Text) Then txtuser.Text = !UserName End If .MoveNext End With Wend End Sub

Code của form Xem dữ liệu.

Option Explicit

Private Sub Form_Load() Dim s As Integer MSFGXem.Row = 0 MSFGXem.ColWidth(0) = 0 MSFGXem.Col = 1 MSFGXem.ColWidth(1) = 510 MSFGXem.Text = "STT" MSFGXem.Col = 2 MSFGXem.ColWidth(2) = 2000 MSFGXem.Text = "User Name" MSFGXem.Col = 3

MSFGXem.Text = "Duration" MSFGXem.Col = 4 MSFGXem.ColWidth(4) = 2000 MSFGXem.Text = "Tổng trả" MSFGXem.Col = 5 MSFGXem.ColWidth(5) = 2000 MSFGXem.Text = "Đã trả" MSFGXem.Col = 6 MSFGXem.ColWidth(6) = 2000 MSFGXem.Text = "Còn nợ" Data1.Refresh s = 0

While Not Data1.Recordset.EOF With Data1.Recordset

If (Not IsNull(!makh)) Then s = s + 1 MSFGXem.Row = s MSFGXem.Col = 1 MSFGXem.Text = !makh MSFGXem.Col = 2 MSFGXem.Text = !UserName MSFGXem.Col = 3 MSFGXem.Text = !Duration MSFGXem.Col = 4 MSFGXem.Text = !tongtien MSFGXem.Col = 5

Else

MSFGXem.Text = 0 End If

MSFGXem.Col = 6

If (Not IsNull(!datra)) Then

MSFGXem.Text = !tongtien - !datra Else MSFGXem.Text = !tongtien End If End If .MoveNext End With Wend End Sub KẾT LUẬN

Như vậy, đề tài đã được hoàn thiện và được trình bày khá đầy đủ thông qua phần nội dung của bản chuyên đề, tuy modul có thể là nhỏ nhưng đây chính là đề tài được cơ quan nơi thực tập đưa ra nên việc thực hiện đề tài này cũng có một ý nghĩa thiết thực với công ty. Thông qua phần trình bày trên ta thấy được kết quả của đề tài là có thể đưa vào hoạt động và ứng dụng trong thực tế của hệ thống tính cước phí Internet của VIETEL, modul này sẽ giúp tính toán và in ra danh sách nợ của khách hàng đồng thời chương trình có thể tổng hợp đưa ra những báo cáo khá thú vị về tình hình nợ của khách hàng theo từng tháng hay theo từng vùng của lãnh thổ Việt (adsbygoogle = window.adsbygoogle || []).push({});

Nam và rất có thể từ đó ban lãnh đạo sẽ có những quyết định thú vị để quản lý các khách hàng của mình.

Với thời gian hoàn thiện đề tài cũng không nhiều do đó đề tài rất có thể có những điểm yếu và những bất cập so với thực tế vì vậy khi đề tài được ứng dụng trong thực tế sẽ cần được khắc phục các nhược điểm này. Đây là một modul dự phòng trường hợp khách hàng có thể nộp thiếu tiền cước nhưng trong thực tế mọi trường hợp có thể xảy ra và khi khách hàng rơi vào trường hợp này thì với modul này, nhà quản lý hệ thống sẽ không gặp những bối rối trong việc quản lý hệ thống của mình.

Công ty Điện tử viễn thông quân đội (VIETEL) hoạt động trên phạm vi cả nước nên việc cung cấp các dịch vụ và thuê bao Internet cũng được thực hiện trong hầu hết các tỉnh thành trong cả nước do đó việc quản lý cước phí Internet sẽ không thể quản lý tập trung được, một phương hướng để hoàn thiện đề tài sẽ không thể bỏ qua việc chia sẻ cơ sở dữ liệu trên mạng để việc quản lý cước phí Internet của VIETEL sẽ được thuận lợi giữa các vùng, giữa các tỉnh thành với nhau trong cả nước.

Với thời gian thực tập là 15 tuần. Sau 8 tuần thực tập, tìm hiểu về cơ quan thực tập và hệ thống tính cước phí Internet báo cáo thực tập tổng hợp đã trình bày sơ qua về tình hình cơ quan thực tập và cũng đã giới thiệu tổng quát về hệ thống tính cước phí Internet của VIETEL . Sau 7 tuần thực tập tiếp theo, chuyên đề đã được hoàn thành. Trong chuyên đề này đã trình bày khá chi tiết và đầy đủ thông tin về cơ quan thực tập và toàn bộ quá trình phân tích, thiết kế cũng như các kết quả đạt được sau khi hoàn thành đề án. Với kinh nghiệm thực tế còn non nớt, trong chuyên đề còn có những vấn đề trình bày chưa thực sự được khoa học, em kính mong các thầy cô chỉ bảo và lượng thứ.

Một lần nữa em xin chân thành cảm ơn cô Nguyễn Bạch Tuyết, anh Vũ Trường Giang cùng toàn thể các thầy cô giáo trong Khoa tin học kinh tế, trường Đại học Kinh tế quốc dân đã hướng dẫn và cung cấp cho em những phương pháp để hoàn thiện chuyên đề này.

PHỤ LỤC

Lời nói đầu: ---Trang 1 Nội dung:---Trang 3 Chương I Các vấn đề tổng quan:---Trang 3 I. Tổng quan về cơ sở thực tập---Trang 3 1. Giới thiệu chung

Một phần của tài liệu Bổ sung thêm 1 Modul vào hệ thống quản lý thu cước phí để tính phần dư nợ của các khách hàng khi họ chưa nộp đủ cước phí (Trang 50 - 79)