vb课程设计报告书

时间:2024.8.12

Visual Basic 课程设计报告

题目:基于VB的宾馆信息管理系统

             

               院(系):        经济管理学院       

专业:          信息管理与信息系统  

班级:                      

  姓名:                        

  学号:         

          

目录

第1章 课设概述

               .................................................3

1.1宾馆管理系统开发背景介绍

                            .....................................3

1.2 课程设计的目的和意义

                         ........................................3

1.3 本课设的具体研究工作

                          .......................................4

第2章 系统的设计与实现

                        .........................................5

2.1 系统开发及运行环境

                       ..........................................5                                            2.2 系统需求分析

                .................................................6

2.3 系统分析设计

                .................................................7

2.4 课设的结果与讨论

                   ..............................................8

第3章 课设总结和展望

                     ...........................................10

第1章 课设概述

 

1.1宾馆管理系统开发背景介绍

     随着经济的发展和人民生活水平的提高,人们不再局限于自己的小生活圈里,开始外出。于是,出差,旅游,变成越来越普遍的话题。也因此,给旅游业,服务业带来了很大的契机。期中,最受益的当属宾馆服务。当然,这亦给宾馆的管理造成了困扰。

目前很多宾馆酒店在这方面的工作还是靠人工进行管理,在这种管理方式中,前台负责人将入住宾馆的客人信息,房间信息逐一进行登记,最后再进行相关的统计分析。而客人在入住宾馆时只能盲目进入,无法真正了解和比较那一家宾馆更适合自己。传统的宾馆管理模式已经暴露出种种弊端,随着计算机应用的普及与深入,利用计算机能够对所有宾馆基本信息进行统一管理,并进行分析,大大减少前台负责人的工作量,提高工作效率同时更加方便了游客的选择,为宾馆管理带来了极大的方便。

1.2课程设计的目的和意义

    建立宾馆信息管理系统,采用计算机对宾馆基本信息进行管理,帮助更多服务行业提高工作效率,避免输入错误信息及未信息输入不完全,实现宾馆信息管理工作流程的系统化、规范化和自动化。 

    今天,计算机的价格已经十分低廉,性能却有了很大的进步。很多宾馆,酒店运用计算机来管理信息,资料。开发一个简单、实用的宾馆管理系统有许多重要性,有以下几点好处:可以存大量的宾馆基本信息,安全,高效。节省大量时间,精力,为房客提供充足的信息和快捷的查询手段,可以便于他们了解宾馆概况并提前预定。因此开发宾馆管理系统,以适应现行工作的要求,提高工作效率很有意义。

1.3本课设的具体研究工作

本课设采用Visual Basic6.0 + Access2003实现单机数据库管理,首先用Access 建立关系数据库,设计了用户表,宾馆概况表,房间信息表。其中用户表管理登陆信息以及用户权限,宾馆概况表用来存放宾馆基本信息,房间信息表在管理传统的房间基本信息外加入了房间标准,。

然后用 Visual Basic 建立客户端,实现简单易懂的图形用户界面,并完成以   下几个功能:

(1)用户管理:该功能包括添加、修改、删除用户的功能,并实现用户权限的管理。

(2)宾馆管理:该功能包括添加宾馆名称,宾馆所属地域,宾馆标准等,将所有添加的信息统一整理,归类,以及对添加的信息进行修改和查询和删除宾馆信息。

                第2章 系统的设计与实现

2.1系统开发及运行环境

   (1)运行平台:Microsoft Windows XP /Windows Vista/Windows 7 

虽然目前国内的主流操作系统已经由 Windows XP 向Windows 7 过渡,但是由于学校的硬件设施更新速度慢,而且仅仅为了教育教学使用配置普遍偏低,在短期内校园的多媒体教室操作系统仍然以Windows XP 为主,所以软件运行测试都是在Windows XP中进行

   (2)系统开发平台:Visual Basic 6.0

  (3)后台数据库系统软件:Access 2003

2.2系统需求分析

    根据实际情况,我们使用原型法(Rapid Prototyping)即以少量代价快速地构造一个可执行的软件系统模型。使用户和开发人员可以较快地确定需求,然后采用循环进化的开发方式,对系统模型作连续的精化,将系统需具备的性质逐渐增加上去,直到所有的性质全部满足。此时模块也发展成为最终产品了。

由于本系统是入住宾馆旅客使用,管理人员是按照宾馆各方面的信息来进行组织,而房客则按照自己的要求输入相关信息,选择更加适宜的宾馆入住,提前预定,基于这些特点,确定管理系统的工作流程如下:

首先用户登录系统,登录后系统将记录用户信息,并读取用户权限信息。然后用户可以进入用户管理模块,这是可选操作,在这里用户只有修改密码的权限,其他权限是超级用户所具有的。接着用户可以进行宾馆的管理,如果具有权限可以进行相应的操作,超级用户可以添加、删除、显示宾馆信息。宾馆存在之后可以向宾馆中添加其他相关信息,同时可以进行修改删除等操作针对系统的要求设计了如下数据字段与表:

(1)用户信息表,包括的数据字段有:用户名,用户密码,用户权限。其中用户名是关键字。

(2)宾馆信息表,包括的数据字段有:宾馆名称,宾馆电话,房间报价,宾馆地址等。

2.3系统分析设计

    C/S结构就是“客户端/服务器端”的一种工作模式。一般来说,这种模式都会要求安装一个客户端程序,由这个程序和服务器进行协同工作,因为由客户端来专门处理一些工作,所以C/S 结构的程序一般都功能强大、界面漂亮,又由于任务分散在服务器端和客户端分别进行,因此提高了硬件的利用效率,对于开发人员开说也更加容易。基于上速原因本系统采用两层的C/S结构。

    模块是Access中实现数据库复杂管理功能的有效工具,它由VisualBasic编制的过程和函数组成。为了清晰、全面的介绍宾馆各个方面管理系统的功能,以及各个功能模块间的关系,下图以结构图的形式给出了系统的功能,如图 3.1  所示。

   (1)用户管理模块:输入用户名和密码,如果用户名和密码正确,进入主控制平台;否则提示用户明确的错误信息。管理员可以进行用户权限设置包括新用户添加,删除用户,修改用户的密码,显示所有用户信息。

   (2)宾馆管理模块:该模块主要对宾馆信息进行输入,查询,修改。包括对宾馆名称,宾馆所属地域,宾馆地址和联系人的基本信息。

      当用户想要查找想要的宾馆信息时,可输入相应的信息,系统自动显示符合要求的宾馆供用户选择,比较。此过程也包括查询,修改等功能

 

                            

 图2-1   系统功能结构图

2.4课设的结果与讨论

     (1)系统的实现与运行结果

      登陆界面可实现用户的登陆,进入系统。

                   

图2-2  登陆界面

设置登录窗体为启动窗体,运行程序,出现如图 2-2 对话框,输入用户名、密码后进入系统,出现如图 2-3 主界面。

                                  

                      

                           图2-3   主界面

在图2-3的界面中输入相应信息,也可对界面内容进行添加,修改,查询,删除等功能。在图2-4中添加信息,点击确定按钮,在图2-5中可显示2-3中的相应信息。用户可根据提供的信息进行选择。

 

图2-4  输入信息界面


                                

                      图2-5   添加修改界面

在图2-5中用户可以得到宾馆的信息,也可以进行添加,修改,查询数据库中其他宾馆信息。 

总结和展望

   本宾馆信息管理系统是使用Visual Basic6.0 + Access2003做为开发工具,基于C/S(客户端/服务器端)模式下的小型管理系统。其功能特点都是针对当前旅游或出差过程中游客入住宾馆时根据各人要求不同而提前选择宾馆,以及了解价格提前预定而设计,界面友好便于操作。与宾馆信息管理系统相比针对性更强,便于移植修改。不足是功能上可以更加完善,安全性、保密性有待加强。用户在选择宾馆之前可以先输入用户名和密码,进入登陆界面。然后根据界面中输入的信息,用户可以选择相应的宾馆,也可以多家宾馆进行比较,择优选择。通过宾馆提供的信息,提前预定。

信息通讯技术在信息管理领域的快速发展,,传统管理系统正面临着革命性的变化。基于C/S 结构的宾馆信息管理系统使用方便,维护简单,不仅大大节省了人力资源,提高了工作效率,更有利于房客在入住方面更多的了解,比较,尤其在旅游的高峰期提前预定房间也给游客提供了极大地便利,具有一定的推广前景使用价值。

 附源代码

Public PasswordKey As String

Public NameKey As String

Public Try_times As Integer

Private Sub Cmd_Cancel_Click()

  End

End Sub

Private Sub Cmd_OK_Click()

  Dim j As Single

  '数据有效性检查

  If txtUser = "" Then

    MsgBox "请输入用户名"

    txtUser.SetFocus

    Exit Sub

  End If

  If txtPwd = "" Then

    MsgBox "请输入密码"

    txtPwd.SetFocus

    Exit Sub

  End If

  将用户输入赋值到变量中

  NameKey = MakeStr(txtUser)

  PasswordKey = MakeStr(txtPwd)

  '判断用户是否存在

  If MyUser.In_DB(NameKey) = False Then

    MsgBox "用户名不存在"

    Try_times = Try_times + 1

    If Try_times >= 3 Then

      MsgBox "您已经三次尝试进入本系统,均不成功,系统将关闭"

      DBapi_Disconnect

      End

    Else

      Exit Sub

    End If

  End If

  '判断密码是否正确

  MyUser.GetInfo (NameKey)

  If MyUser.Pwd <> PasswordKey Then

    MsgBox "密码错误"

    Try_times = Try_times + 1

    If Try_times >= 3 Then

      MsgBox "您已经三次尝试进入本系统,均不成功,系统将关闭"

      DBapi_Disconnect

      End

    Else

      Exit Sub

    End If

  End If

  '登录成功,将当前用户的信息保存在CurUser中

  CurUser.GetInfo (MyUser.UserName)

  '关闭自己

  Unload Me

End Sub

Public Modify As Boolean

Public OriId As Long

Public OriAreaName, OriHotelName As String

Public OriType As Integer

Private Function Check() As Boolean

  If Trim(txtHotel) = "" Then

    MsgBox "请输入地域名称"

    txtHotel.SetFocus

    Check = False

    Exit Function

  End If

  If Trim(txtHotel) = "" Then

    MsgBox "请输入宾馆名称"

    txtHotel.SetFocus

    Check = False

    Exit Function

  End If

 

  Check = True

End Function

Private Sub Cmd_OK_Click()

 ‘检查用户输入的地域数据是否有效

  If Check = False Then

    Exit Sub

  End If

 

  With MyHotel

   ‘把用户输入的地域数据赋值到MyHotel对象的成员变量中

  .Hname = MakeStr(txtHotel)

  .Hlevel = ComboLevel.Text

  .Contact = MakeStr(txtContact)

  .Phone = MakeStr(txtPhone)

  .Address = MakeStr(txtAddress)

  .Postcode = MakeStr(txtCode)

  .Price1 = Val(txtPrice1)

  .Price2 = Val(txtPrice2)

  .Price3 = Val(txtPrice3)

  .Price4 = Val(txtPrice4)

  .AreaId = MyArea.GetId(ComboName)

 

  '判断宾馆名称是否存在

  If Modify = False Or OriHotelName <> Trim(txtHotel) Then

    If .In_DB(MakeStr(txtHotel)) = True Then

      MsgBox "宾馆名称已经存在,请重新输入"

      txtHotel.SetFocus

      txtHotel.SelStart = 0

      txtHotel.SelLength = Len(txtHotel)

      Exit Sub

    End If

  End If

‘根据变量Modify的值,决定是插入新数据,还是修改已有的数据

  If Modify = False Then

    .Insert

  Else

    .Update (OriId)

  End If

   

  End With

  Unload Me

End Sub

Private Sub Cmd_Cancel_Click()

  Unload Me

End Sub

Private Sub ComboType_Click()

  Call Loadarea(ComboType.ListIndex + 1, ComboName)

  If ComboName.ListCount > 0 Then

    ComboName.ListIndex = 0

  End If

End Sub

Private Sub Form_Load()

 ‘根据当前宾馆的地域数据OriType和OriAreaName装入地域,设置地域信息

  ComboType.ListIndex = OriType - 1

  Call Loadarea(OriType, ComboName)

  If InCombo(OriAreaName, ComboName) = True Then

    ComboName.Text = OriAreaName

  End If

End Sub

Private Sub txtAddress_KeyPress(KeyAscii As Integer)

  EnterTAB (KeyAscii)

End Sub

Private Sub txtPrice1_KeyPress(KeyAscii As Integer)

  EnterTAB (KeyAscii)

  If In_Single(KeyAscii) = False Then

    KeyAscii = 0

  End If

End Sub

Private Sub txtPrice2_KeyPress(KeyAscii As Integer)

  EnterTAB (KeyAscii)

  If In_Single(KeyAscii) = False Then

    KeyAscii = 0

  End If

End Sub

Private Sub txtPrice3_KeyPress(KeyAscii As Integer)

  EnterTAB (KeyAscii)

  If In_Single(KeyAscii) = False Then

    KeyAscii = 0

  End If

End Sub

Private Sub txtPrice4_KeyPress(KeyAscii As Integer)

  EnterTAB (KeyAscii)

  If In_Single(KeyAscii) = False Then

    KeyAscii = 0

  End If

End Sub

Private Sub txtCode_KeyPress(KeyAscii As Integer)

  EnterTAB (KeyAscii)

End Sub

Private Sub txtContact_KeyPress(KeyAscii As Integer)

  EnterTAB (KeyAscii)

End Sub

Private Sub txtPhone_KeyPress(KeyAscii As Integer)

  EnterTAB (KeyAscii)

End Sub

Private Sub txtHotel_KeyPress(KeyAscii As Integer)

  EnterTAB (KeyAscii)

End Sub

Private Sub Refresh_Hotel()

 ‘为Adodc1控件设置数据源

  Adodc1.RecordSource = "SELECT a.AreaName 所在地域, h.Hname As 宾馆名称," _

        + " h.Hlevel As 宾馆标准, h.Contact As 联系人, h.Phone As 联系电话," _

        + " h.Address As 通信地址, h.Postcode As 邮政编码, h.Price1 As 经济间报价," _

        + " h.Price2 As 双人间报价, h.Price3 As 三人间报价, h.Price4 As 四人间报价," _

        + " h.Input_time As 录入时间 FROM Hotel h, Area a WHERE h.AreaId=a.AreaId" _

        + " And a.AreaName='" + Trim(ComboName.Text) + "'"

  Adodc1.Refresh

End Sub

Private Sub Cmd_Add_Click()

  FrmHotelEdit.Modify = False

  FrmHotelEdit.OriAreaName = ComboName.Text

  FrmHotelEdit.OriType = ComboType.ListIndex + 1

  FrmHotelEdit.OriId = 0

 

  FrmHotelEdit.Show 1

  Refresh_Hotel

End Sub

Private Sub Cmd_Del_Click()

  Dim TmpId As Long

   ‘判断是否选择了要删除的记录

  If Adodc1.Recordset.EOF = True Then

    MsgBox "请选择记录"

    Exit Sub

  End If

   ‘确定当前选择记录的位置

  p = Adodc1.Recordset.AbsolutePosition

   ‘要删除的宾馆编号

  TmpId = MyHotel.GetId(Trim(Adodc1.Recordset.Fields(1)))

  '判断当前记录是否出现在线路中

  If Mylhotel.HotelInLine(TmpId) > 0 Then

    MsgBox "此宾馆在线路中使用,不能删除"

    Exit Sub

  End If

  '确认删除

  If MsgBox("是否删除当前行?", vbYesNo, "确认") = vbYes Then

    MyHotel.Delete (TmpId)

    Refresh_Hotel

    If p - 1 > 0 Then

      Adodc1.Recordset.Move p - 1

    End If

  End If

End Sub

Private Sub Cmd_Modi_Click()

  If Adodc1.Recordset.EOF = True Then

    MsgBox "请选择记录"

    Exit Sub

  End If

    ‘确定当前选择记录的位置

  p = Adodc1.Recordset.AbsolutePosition

  '宾馆编号

  FrmHotelEdit.OriId = MyHotel.GetId(Adodc1.Recordset.Fields(1))

  '地域信息

  FrmHotelEdit.OriAreaName = ComboName.Text

  FrmHotelEdit.OriType = ComboType.ListIndex + 1

  '宾馆名称

  FrmHotelEdit.OriHotelName = Trim(Adodc1.Recordset.Fields(1))

  FrmHotelEdit.txtHotel = Trim(Adodc1.Recordset.Fields(1))

  '宾馆级别

  FrmHotelEdit.ComboLevel = Trim(Adodc1.Recordset.Fields(2))

  '联系人

  FrmHotelEdit.txtContact = Trim(Adodc1.Recordset.Fields(3))

  '联系电话

  FrmHotelEdit.txtPhone = Trim(Adodc1.Recordset.Fields(4))

  '通信地址

  FrmHotelEdit.txtAddress = Trim(Adodc1.Recordset.Fields(5))

  '邮政编码

  FrmHotelEdit.txtCode = Trim(Adodc1.Recordset.Fields(6))

  '经济间报价

  FrmHotelEdit.txtPrice1 = Adodc1.Recordset.Fields(7)

  '双人间报价

  FrmHotelEdit.txtPrice2 = Adodc1.Recordset.Fields(8)

  '三人间报价

  FrmHotelEdit.txtPrice3 = Adodc1.Recordset.Fields(9)

  '四人间报价

  FrmHotelEdit.txtPrice4 = Adodc1.Recordset.Fields(10)

   ‘把变量Modify设置为True,表示当前状态为修改已有记录

  FrmHotelEdit.Modify = True

  FrmHotelEdit.Show 1

  ‘修改完成,刷新显示内容

  Refresh_Hotel

  Adodc1.Recordset.Move p

End Sub

Private Sub Cmd_Close_Click()

  Unload Me

End Sub

Private Sub ComboName_Click()

  Refresh_Hotel

End Sub

Private Sub ComboType_Click()

  Call Loadarea(ComboType.ListIndex + 1, ComboName)

  If ComboName.ListCount > 0 Then

    ComboName.ListIndex = 0

  End If

  Refresh_Hotel

End Sub

Private Sub DataGrid1_Click()

 ‘显示数据

End Sub

Private Sub Form_Load()

 ‘对输入地域数据进行初始化

  ComboType.ListIndex = 0

  Call Loadarea(1, ComboName)

  If ComboName.ListCount > 0 Then

    ComboName.ListIndex = 0

  End If

  Refresh_Hotel

End Sub

更多相关推荐:
VB课程设计报告 (32)

沈阳航空航天大学课程设计任务书学院机电工程专业机械设计制造及其自动化班级04060101学号20xx040601011题目选择教师系统一课程设计时间20xx年3月59日第1周共计1周20学时二课程设计内容有5位...

VB课程设计报告

课程设计题目个人收支管理难度:☆☆☆姓名:刘泽禄学号:913103860633随着社会生活步调的不断加快,人们越来越繁忙。也因此各项收入和支出名目繁多,如果不善于管理常会出现入不敷出,工资感觉没怎么用到月底就已…

VB课程设计报告(实例样本)1

VB程序设计报告学院土木工程专业工程管理班级1102学号20xx02938姓名若笔奇诺一课程设计题目成绩计算模拟系统二课程设计工作自20xx年5月15日起至20xx年6月1日止三课程设计地点兰州交通大学四课程设...

VB课程设计实验报告

VB课程设计实验报告题目:超市销售管理系统任课教师:专业:姓名:学号:班级:一、目的:本次课程设计结合是实际应用的要求,使课程设计既覆盖VB的知识点,又接近工程实际需要。目的是通过课程设计的综合训练,培养我们学…

vb课程设计报告-仓库管理系统

VB程序设计实验报告姓名:班级:学号:专业:软件工程指导老师:20##年5月13日目录实验题目3实验要求3设计思路3实验流程图3源程序清单4运行界面6存在问题6解决思路6心得6教师评语6评分6内容摘要:仓库管理…

VB课程设计报告样例

南京理工大学能源与动力工程学院VB课程设计报告题目1贪吃蛇游戏题目2列车时刻查询指导老师张小兵学生姓名学号专业班级1008320120xx年3月20日VB程序设计课程设计报告VB程序设计课程设计任务书题目用VB...

VB课程设计报告

课程设计报告书课程设计名称VB程序设计报告书系部专业班级学生姓名XXX学号指导教师完成日期20xx年1月6日山东科技大学泰山科技学院12课程设计报告书一前言VisualBasic是可视化程序设计语言具有简单易学...

-VB课程设计报告

南京工程学院课程设计报告论文题目打字练习课程名称VisualBasic课程设计院系部中心班级集控111学生姓名周依琳学号20xx10408设计地点图书馆A304指导教师黄陈蓉设计起止时间20xx年6月06日至2...

VB课程设计报告模板

石家庄铁道学院课程设计Vb语言课程设计小型学生成绩管理系统单位分院系专业学号学生姓名指导教师完成日期年月日第1页共30页摘要成绩管理是学校管理中相当繁重的工作牵涉到学生成绩管理教师管理和课程管理等由于成绩记录的...

VB课程设计报告范例

VisualBasic课程设计报告题目学生信息管理难度指导教师袁红兵姓名谭鑫学号1101400114专业工业工程班级11014001学院机械工程学院日期20xx年3月1日26日VisualBasic课程设计报告...

饭店点菜系统-vb课程设计报告

饭店点菜系统课程设计报告指导老师作者学号班级完成日期20xx年7月6日摘要本系统是顾客与饭店沟通的桥梁顾客可以通过它实现对菜品酒水的浏览集点菜退菜留言抽奖于一体的vb多窗体应用程序本系统较多考虑人性化设计操作简...

软件专业的_vb课程设计报告

武汉理工大学华夏学院课程设计报告书课程名称可视化编程课程设计题目学生信息管理系统系名信息工程系专业班级软件1121姓名学号102128指导教师张玉蓉20xx年1月3日武汉理工大学华夏学院信息工程系课程设计任务书...

vb课程设计报告(36篇)