2022年管理信息系统论文3000字(完整)

来源:优秀文章 发布时间:2022-08-10 点击:

下面是小编为大家整理的2022年管理信息系统论文3000字(完整),供大家参考。希望对大家写作有帮助!

2022年管理信息系统论文3000字(完整)

管理信息系统论文3000字4篇

管理信息系统论文3000字篇1

酒店管理信息系统

系统平台:Windows 2000

数据库服务器:Microsoft SQL Server 2000

开发工具:Visual Basic 6.0

系统开发人员:

⒈编写目的

酒店在正常的运营中需要对客房资源、顾客信息、结算信息进行管理,利用宾馆管理信息系统及时了解各个环节中信息的变更,有利于提高管理效率。

⒉系统功能分析

系统开发的总体任务是实现宾馆各种信息的系统化、规范化和自动化。

主要完成功能:

● 有关客房标准的制定、标准信息的输入,包括标准编号、标准名称、房间面积、床位数量、住房单价、是否有空调、电视机、电话以及单独卫生间等。

● 客房标准信息的修改、查询等。

● 客房基本信息的输入,包括客房编号、客房类型、客房位置、客房单价、备注等。

● 客房基本信息的查询、修改,包括客房编号、客房类型、客房位置、客房单价、备注等。

● 剩余客房信息的查询等。

● 订房信息的输入,包括客房编号、客房种类、客房位置、客房单价、顾客姓名、顾客身份证号码、入住日期、折扣、备注信息等。

● 订房信息的修改和查询,包括客房编号、客房种类、客房位置、客房单价、顾客姓名、顾客身份证号码、入住日期、折扣、备注信息等。

● 结算信息的输入,包括客房编号、客房种类、位置、客房单价、顾客姓名、顾客身份证号码、入住日期、折扣、结算日期、备注信息等。

● 结算信息的修改和查询,包括客房编号、客房种类、客房位置、客房单价、顾客姓名、顾客身份证号码、入住日期、折扣、结日期、备注信息等。

⒊系统功能模块设计

按结构化程序设计思想,分析得出如下系统功能模块图

图Ⅰ系统功能模块图

⒋数据库设计

数据库设计步骤:

●数据库需求分析

●数据库概念结构设计

●数据库逻辑结构设计

①数据库需求分析

分析调查有关宾馆管理信息需求的基础上得本系统所处理的数据流程

图Ⅱ 宾馆管理信息系统数据流程图

针对一般宾馆管理信息系统的需求,通过对宾馆管理过程的内容和流程分析,设计如下面所示的数据项和数据结构:

●客房标准信息,包括的数据项有:标准编号、标准名称、房间面积、床位数量、住房单价、是否有空调、电视、电话、单独卫生间等。

●客房信息,包括的数据项有:客房编号、客房种类、客房位置、客房单价、备注等。

●订房信息,包括的数据项有:订房编号、客房编号、客房种类、客房位置、客房备注信息、顾客姓名、顾客身份证号码、入住时间、折扣、备注等。

●结算信息,包括的数据项有:订房编号、客房编号、客房种类、客房位置、客房备注信息、顾客姓名、顾客身份证号码、入住时间、折扣、结算时间、备注等。

②数据库概念结构设计

本系统根据以上的设计规划出的实体有:客房标准信息实体、客房信息实体、订房信息实体、结算信息实体。各个实体具体的描述E-R图如下:

客房标准信息实体E-R图

客房信息实体E-R图

订房信息实体E-R图

结算信息实体E-R图

实体之间关系E-R图

③数据库逻辑结构设计

首先将宾馆管理信息系统的数据库概念结构转化为SQL 2000数据库系统所支持的实际数据模型,即:数据库的逻辑结构。其各个表格的设计结果如下

Roomtype 客房标准信息表

Rooms 客房信息表

Bookin 订房信息表

⒌数据库结构的实现

利用SQL 2000数据库系统中的查询分析实现数据库的逻辑结构,其表格如下:

创建系统用户表格 user_Info

CREATE TABLE [dbo].[user_Info1](

[user_ID][char](10) COLLATE Chinese_PRC_CI_AS NOT NULL,

[user_PWD] [char] (10) COLLATE Chinese_PRC_CI_AS NULL,

[user_Des] [char](10) COLLATE Chinese_PRC_CI_AS NULL

) ON [PRIMARY]

创建客房标准信息表格 roomtype

CREATE TABLE [dbo].[roomtype](

[typeid][char](10) COLLATE Chinese_PRC_CI_AS NOT NULL,

[typename][char](10) COLLATE Chinese_PRC_CI_AS NOT NULL,

[area][numeric](5,0) NULL,

[bednum][numeric](2,0) NULL,

[haircondition][char](2) COLLATE Chinese_PRC_CI_AS NULL,

[htelephone][char](2) COLLATE Chinese_PRC_CI_AS NULL,

[htelevision][char](2) COLLATE Chinese_PRC_CI_AS NULL,

[htoilet][char](2) COLLATE Chinese_PRC_CI_AS NULL,

[price][numeric](10,2)NULL

) ON [PRIMARY]

创建客房信息表格 rooms

CREATE TABLE [dbo].[rooms](

[roomNO][char](10) COLLATE Chinese_PRC_CI_AS NOT NULL,

[roomtype][char](10) COLLATE Chinese_PRC_CI_AS NOT NULL,

[roomposition][char](20) COLLATE Chinese_PRC_CI_AS NULL,

[roomprice][numeric](10,2) NULL,

[putup][char](2) COLLATE Chinese_PRC_CI_AS NOT NULL,

[roommemo][text] COLLATE Chinese_PRC_CI_AS NULL

) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]

创建订房信息表bookin

CREATE TABLE [dbo].[bookin](

[bookno][char](14) COLLATE Chinese_PRC_CI_AS NOT NULL,

[customname][char](10) COLLATE Chinese_PRC_CI_AS NOT NULL,

[customID][char](18) COLLATE Chinese_PRC_CI_AS NOT NULL,

[roomno][char](10) COLLATE Chinese_PRC_CI_AS NOT NULL,

[indate][datetime] NULL,

[discount][numeric](2,0) NULL,

[inmemo][text] COLLATE Chinese_PRC_CI_AS NULL,

[checkdate][datetime] NULL,

[ammount][numeric](10,2) NULL

) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]

⒍宾馆管理信息系统具体程序实现

⑴创建公用模块 Module1.bas

添加公共数据操作函数,用以执行各种SQL语句。添加函数ExecuteSQL,代码如下:

Public Function ExecuteSQL(ByValSQL As String,MsgString AsString)_ As ADODB.Recordset

‘执行SQL语句,并返回记录集对象

Dim cnn As ADODB.Connection

Dim rst As ADODB.Recordset

Dim sTokens() As String

‘异常处理

On Error GoTo ExecuteSQL_Error’

‘用Split函数产生一个包含各个子串的数组

sTokens=Split(SQL)

Set cnn=NEW ADODB.Connection

‘打开连接

cnn.Open ConnectString

If InStr(“INSERT,DELETE,UPDATE”,UCase$(sTokens(0))) Then

Cnn.Execute SQL

MsgString=sTokens(0)&”query successful”

Else

Set rst=NEW ADODO.Recordset

rst.Open Trim$(SQL),cnn,adOpenKeyset,adLockOptimistic

rst.MoveLast

get RecordCount

‘返回记录集对象

Set ExecuteSQL=rst

MsgString=”查询到”&rst.RecordCount&”条记录”

End If

ExecuteSQL_Exit:

Set rst=Nothing

Set cnn=Nothing

Exit Function

ExecuteSQL_Error:

MsgString=”查询错误:”&Err.Description

Resume ExecuteSQL_Exit

End Function

Public Sub EnterToTab(Keyasc As Integer)

‘判断是否为回车键

If Keyasc=13 Then ‘ Keyasc用来保存当前按键

‘转换成Tab键

SendKeys”{TAB}”

End If

End sub

‘添加全局变量,用来记录各个窗口的读写状态,代码如下:

Public flagTedit As Boolean ‘ 标示是否进入修改的窗体

Public flagRedit As Boolean

Public flagBedit As Boolean

Public flagCedit As Boolean

Public gintCmode As Integer

Public gintTmode As Integer ’记录是添加还是修改状态,1为添加,2为修改

Public gintRmode As Integer

Public gintBmode As Integer

Public flagSedit As Boolean

⑵系统用户管理模块的创建

用户管理模块主要实现:

·用户登陆。

·添加用户。

·修改用户

具体客房标准添加代码:

Private Sub Form_Load() ‘载入窗体后,判断所处状态

Dim intCount As Integer

Dim MsgText As String

Dim i As Integer

If gintTmode=1 Then ‘判断是否属于添加状态

Me.Caption=Me.Caption & ”添加”

For i=0 To 3

Combo1(i).AddItem ”否”

Combo1(i).AddItem ”是”

Combo1(i).ListIndex=0

Next i

ElseIf gintTmode=2 Then ‘判断是否处于修改状态

Set mrc=ExecuteSql(txtSQL,MsgText)

If mrc.EOF=false Then

With mrc

For intCount=0 To 3

txtItem(intCount)=.Fields(intCount)

Next intCount

txtItem(4)=.Fileds(8)

For i=0 To 3

Combo1(i).Additem ”否”

Combo1(i).Additem ”是”

Combo1(i).ListIndex=0

Next i

End With

txtItem(0).Enabled=False

End If

Me.Caption=Me.caption&”修改”

End If

mblChang=False

End Sub

Private Sub cmd_Click()’用户输入内容完毕后,单击cmdSave按钮触发Click事件

Dim intCount As Integer

Dim sMeg As String

Dim MsgText As String

For intCount=0 To 4 ‘判断是否输入内容

If Trim(txtItem(intCount)&””)=”” Then

Select Case intCount

Case 0

sMeg=”标准编号”

Case 1

sMeg=”标准名称”

Case 2

sMeg=”房间面积”

Case 3

sMeg=”床位数量”

Case 4

sMeg=”床位单价”

End Select

sMeg=sMeg&”不能为空!”

MsgBox sMeg,vbOkOnly+vbExclamation,”警告”

txtItem(intCount).SetFocus

Exit Sub

End if

Next intCount ‘判断输入内容是否为数字

For intCount=2 To 4

If Not IsNumeric(Trim(txtItem(intCount))) Then

Select Case intCount

Case 2

sMeg=”房间面积”

Case 3

sMeg=”床位数量”

Case 4

sMeg=”床位单价”

End Select

sMeg=sMeg&”请输入数字!”

MsgBox sMeg,vbOKOnly+vbExclamation,”警告”

txtItem(intCount).SeFocus

Exit Sub

End If

Next intCount

If gintTmode=1 Then ‘判断是否有相同ID记录

txtSQL=”select*from roomtype where typeid_ =’”&Trim(txtItem(0))&”’”

Set mrc=ExecuteSQL(txtSQL,MsgText)

If mrc.EOF=False Then

MsgBox “已经存在此标准编号的记录!”,vbOKOnly+vbExclamation,”警告”

txtItem(0).SetFocus

Exit Sub

End If

Mrc.Close

End If

txtSQL=”select * from roomtype where typeid’”&Trim(txtItem(0))&”’and typename=’”&Trim(txtItem(1))&”’”

Set mrc=ExecuteSQL(txtSQL,MsgText)

If mrc.EOF=False Then

MsgBox”已经存在相同客房标准的记录!”,vbOKOnly+vbExclamation,“警告”

txtItem(1).Setfocus

Exit Sub

End If

txtSQL=”delete from roomtype where typeid=’”&Trim(txtItem(0))&”’”‘删除已有记录

Set mrc=ExecuteSQL(txtSQL,MsgText)

txtSQL=”select *from roottype”‘添加新记录

Set mrc=ExecuteSQL(txtSQL,MsgText)

mrc.AddNew

For intCount=0 To 3

mrc.Fields(intCount)=Trim(txtItem(intCount))

Next intCount

For intCount=0 To 3

mrc.Fields(intCount+4)=Trim(Combo1(intCount))

Next intCount

mrc.Fields(8)=Trim(txtItem(4))

mrc.Update ‘更新数据库

mrc.Close

if gintTmode=1 Then ‘判断是否属于添加状态

MsgBox “添加纪录成功!”,vbOKOnly+vbExclamtion,“添加记录”

For intCount=0 To 4

txtItem(intCount)=”” ‘清除已经输入的内容

Next intCount

For intCount=0 To 3

Combo1(intCount).ListIndex=0

Next intCount

mblChange=False’判断是否打开窗口

if flagTedit Then

Unload frmRoomtype

frmRoomtype.txtSQL=“select *from roomtype”

frmRoomtype.Show

End If

ElseIf gintTmode=2 Then ‘判断是否处于修改状态

Unload Me

If flagTedit Then

Unload frmRoomtype

EndIf

frmRoomtype.txtSQL=”select *from roomtype”

frmRoomtype.Show

End If

End Sub

Private Sub txtItem_GotFocus(Index As Integer)’文本框获得焦点时触发该事件,即自动选中输入的内容,便于修改

txtItem(Index).SelStart=0

txtItem(Index).SelLength=Len(txtItem(Index))

End Sub

Private Sub cmdExit_Click()’单击按钮cmdExit取消添加信息

If mblChange And cmdSave.Enabled Then

If MsgBox(“保存当前记录的变化吗?”,vbOKCancel+vbExclamation,”警告”)=vbOK Then ‘保存

Call cmdSave_Click

End If

End If

Unload Me

End Sub

Private Sub txtItem_KeyDown(Index As Integer,KeyCode As Integer,Shift_ As Integer)‘输入完内容,单击回车键将自动进入下一个文本框,触发文本框的Keydown事件

EnterToTab KeyCode

End Sub

⑶修改客房标准窗体的创建

Private Sub From_Load()

ShowTitle

ShowData

flagTedit=True

End Sub

Private Sub ShowTitle()‘调用showTitle函数,显示表头

Dim i As Integer

With msgList

.Cols=10

.TextMatrix(0,1)=”标准编号”

.TextMatrix(0,2)=”标准名称”

.TextMatrix(0,3)=”房间面积”

.TextMatrix(0,4)=”床位数量”

.TextMatrix(0,5)=”是否有空调”

.TextMatrix(0,6)=”是否有电话”

.TextMatrix(0,7)=”是否有电视”

.TextMatrix(0,8)=”是否有卫生间”

.TextMatrix(0,9)=”房间单价”

.FixedRows=1‘固定表头

For i=0 To 9 ‘设置各列的对齐方式

.ColAlignment(i)=0

Next i

.FillStyle=flexFillRepeat‘表头项居中

.Col=0

.Row=0

.RowSel=1

.ColSel=.Cols-1

.CellAlignment=4

.ColWidth(0)=300‘设置单元大小

.ColWidth(1)=1000

.ColWidth(2)=2000

.ColWidth(3)=2000

.ColWidth(4)=1000

.ColWidth(5)=1000

.ColWidth(6)=1000

.ColWidth(7)=1000

.ColWidth(8)=1000

.ColWidth(9)=1000

.Row=1

End With

End Sub

Private Sub ShowData()‘调用showData函数,显示记录列表

Dim i As Integer

Set mrc=ExecuteSQL(txtSQL,MsgText)‘根据需要设置SQL语句,显示需要的记录

With msgList

.Rows=1

Do While Not mrc.EOF

.Rows=Rows+1

For i=1 To mrc.Fields.Count

Select Case mrc.Fields(i-1).Type

Case adDBDate

.TextMatrix(.Rows-1,i)=Format(mrc.Fields(i-1)&””,”yyyy-mm-dd”)

Case Else

.TextMatrix(.Rows-1,i)=mrc.Fields(i-1)&””

End Select

Next i

Mrc.MoveNext

Loop

End With

mrc.Close

End Sub

Private Sub msgList_MouseUp(Button As Integer,Shift As Integer,x As Single,y As Single)‘选择记录,然后单击鼠标右键,触发MouseUp事件

If Button=2 And Shift=0 Then

PopupMenu fMainFrom.menuRoomtype

End If

End Sub

Private Sub menuModifyroomtype_Click()

Dim intCount As Integer

If flagTedit Then ‘判断是否打开记录窗体

If frmRoomtype.msgList.Rows>1 Then

fintTmode=2‘设置为修改状态

intCount=frmRoomtype.msgList.Row‘记下选择记录

frmRoomtype1.txtSQL=”select*from roomtype where typeid’”&Trim(frmRoomtype.msgList.TextMatrix(intCount,1))&”’”

frmRoomtype1.Show

Else

Call menuAddroomtype_Click

End If

Else

frmRoomtype.txtSQL=”select*from roomtype”

frmRoomtype.Show

End If

End Sub

Private Sub From_Resize()‘窗体变化时,调整标签和表格位置,使标签处于窗体的最上方,而表格始终处于标签下方

If Me.WindowStatevbMinimized And fMainFrom.WindowStatevbMinimized Then‘边界处理

If Me.Scaleheight

管理信息系统论文3000字篇2

毕业 设 计

设计题目:
图书管理系统

学 院:
成人教育学院

专 业:
计算机科学与技术

年 级:
2009

学生姓名:
杨洋

学 号:
0931*******

指导教师:
赵晓侠

日 期:
2010.12.1

教 务 处 制

目录

摘要

关键字

1系统设计

1.1系统目标设计

1.2开发设计思想

1.3开发和运行环境选择

1.4系统功能分析

1.5系统功能模块设计

2数据库设计

2.1数据库需求分析

2.2数据库逻辑结构设计

3数据库结构的实现

4各个功能模块的创建

6:41系统主界面的设计

4.2系统用户管理模块的设计

614.3读者种类管理模块的设计

4.4读者信息管理模块的设计

6:4书籍种类信息模块的设计

4.6书籍信息管理模块的设计

4.7借阅信息管理模块的设计

6:48帮助文档的设计

5开发中的难点和解决技巧

5.1在Visual FoxPro 0中添加和修改删除记录

5.2在Visual FoxPro 0中编程的技巧

6系统的编译和发行

1设置主文件

2构造主文件

3在.app和.exe文件中包含和排除文件

7运行结果

8总结

9参考文献

摘要

图书馆在正常运营中总是面对大量的读者信息、书籍信息以及两者相互作用产生的借书信息、还书信息。因此需要对读者资源、书籍资源、借书信息、还书信息进行管理,及时了解各个环节中信息的变更,有利于提高管理效率。

我们将以一个图书馆管理信息系统为例子,来讲述如何建立一个图书馆管理信息系统。因为Visual FoxPro6.0具有强大的数据库管理功能,我们选定Visual FoxPro6.0实现图书馆管理信息系统中的各项功能。

1系统设计

1.1系统目标设计

通过一个图书馆管理信息系统,使图书馆的信息管理工作系统化、规范化、自动化,从而达到提高企业人事管理效率的目的。

1.2开发设计思想

本系统的开发设计思想:

.系统应符合图书馆信息管理的规定,满足图书馆日常管理的工作需要,并达到操作过程中的直观、方便、实用、安全等要求;

.系统采用模块化程序设计方法,既便于系统功能的各种组合和修改,又便于未参与开发的技术维护人员补充、维护;

.系统应具备数据库维护功能,及时根据用户需求进行数据的添加、删除、修改、备份等操作。

1.3开发和运行环境选择

开发工具:Visual FoxPro6.0。

运行环境:Windows 9x、Windows NT或Windows 2000。

1.4系统功能分析

.有关读者种类标准的制定、种类信息的输入,包括种类编号、种类名称、借书数量、借书期限、有效期限、备注等。

.读者种类信息的修改、查询等。

.读者基本信息的输入,包括读者编号、读者姓名、读者种类、读者性别、工作单位、家庭住址、电话号码、电子邮件地址、办证日期、备注等。

.读者基本信息的查询、修改,包括读者编号、读者姓名、读者种类、读者性别、工作单位、家庭住址、电话号码、电子邮件地址、办证日期、备注等等。

.书籍类别标准的制定、类别信息的输入,包括类别编号、类别名称、关键词、备注信息等。

.书籍类别信息的查询、修改,包括类别编号、类别名称、关键词、备注信息等。

.书籍信息的输入,包括书籍编号、书籍名称、书籍类别、作者姓名、出版社名称、出版日期、书籍页书、关键词、登记日期、备注信息等。

.书籍信息的查询、修改,包括书籍编号、书籍名称、书籍类别、作者姓名、出版社名称、出版日期、书籍页书、关键词、登记日期、备注信息等。

.借书信息的输入,包括借书信息编号、读者编号、读者姓名、书籍编号、书籍名称、借书日期、备注信息等。

.借书信息的查询、修改,包括借书信息编号、读者编号、读者姓名、书籍编号、书籍名称、借书日期、备注信息等。

.还书信息的输入,包括还书信息编号、读者编号、读者姓名、书籍编号、书籍名称、借书日期、还书日期、备注信息等。

.还书信息的查询和修改,包括还书信息编号、读者编号、读者姓名、书籍编号、书籍名称、借书日期、还书日期、备注信息等。

1.5系统功能模块设计

在系统功能分析的基础上,考虑Visual FoxPro6.0程序编制的特点,得到如图6-1所示的系统功能模块图。

图6-1系统功能模块图

2数据库设计

设计数据库系统时应该首先充分了解用户各个方面的需求,包括现有的以及将来可能增加的需求。数据库设计一般包括如下几个步骤:

.数据库需要分析。

.数据库逻辑结构设计。

2.1数据库需求分析

用户的需求具体体现在各种信息的提供、保存、更新和查询,这就要求数据库结构能充分满足各种信息的输出和输入。收集基本数据、数据结构以及数据处理的流程,组成一份详尽的数据字典,为后面的具体设计打下基础。

仔细分析调查有关图书馆管理信息需求的基础上,将得到如图6-2所示的本系统所处理的数据流程。

图6-2图书馆管理信息系统数据流程图

针对一般图书馆管理信息系统的需求,通过对图书馆管理工作过程的内容和数据流程分析,设计如下面所示的数据项和数据结构:

.读者种类信息,包括的数据项有:种类编号、种类名称、借书数量、借书期限、有效期限、备注等。

.读者信息,包括的数据项有:读者编号、读者姓名、读者种类、读者性别、工作单位、家庭住址、电话号码、电子邮件地址、办证日期、备注等。

.书籍类别信息,包括的数据项有:类别编号、类别名称、关键词、备注信息等。

.书籍信息,包括的数据项有:书籍编号、书籍名称、书籍类别、作者姓名、出版社名称、出版日期、书籍页数、关键词、登记日期、备注信息等。

.借阅信息,包括的数据项有:借阅信息编号、读者编号、读者姓名、书籍编号、书籍名称、借书日期、还书日期、备注信息等。

有了上面的数据结构、数据项和数据流程,我们就能进行下面的数据库设计。

2.2数据库逻辑结构设计

现在需要将上面的数据库概念结构转化为Visual FoxPro数据库系统所支持的实际数据模型,也就是数据库的逻辑结构。

图书馆管理信息系统数据库中各个表格的设计结果如下面表格所示。每个表格表示在数据库中的一个表。

表6-1为读者基本信息表。

3数据库结构的实现

首先建立建立一个“图书馆管理信息系统”的项目,以便管理本系统中所有数据,打开的“图书馆信息管理系统”项目后,用鼠标选中数据库,单击右侧的“新建” 按钮,在弹出的对话框中将该数据库文件存储为c:\图书馆管理信息系绷图书馆管理.dbca.

在弹出的如图6-4所示的数据库设计器中单击鼠标右键,选择“新建表”,为数据库添加数据表(表的内容见表6-1至表6-5)。下面以表6-1为例来介绍表的建立过程。

图6-4新建数据表

选择“新建表”,在弹出的对话框中将表存储为c:\图书馆管理信息系统、读者信息种

类.曲f.在弹出的如图6-5所示的表设计器中填写表的内容。

图6-5设计表的内容

请读者将其与表6-l比较,可以发现表的字段名就是列名。由于在以后编写的程序中对数据库数据的操作通常是引用表的字段,因此读者在设计字段名时要挑选容易理解的名称。

字段设置完成后,单击“确定”按钮后为表输入数据,如不想现在输入,可以先“取消”, 以后再输入。具体方法如下:

(1)如图6-6所示,选中要输入数据的表,单击“浏览”按钮。

Visual FoxPro6.0也提供了菜单的实现方法,以建立一个类似于Windows风格的操作界面。下面就利用菜单选项制作如图

6-8所示的界面。

图6-8系统主界面

打开“图书馆信息管理系统”项目后,在项目管理器中展开“其他”文件夹,如图6-9所示。用鼠标选中菜单,单击右侧的“新建”按钮,在弹出的对话框中将该数据库文件存储为。C:\图书馆管理信息系绑系统菜单。

图6-9创建系统菜单

然后单击右侧的“插入”按钮,在左侧填入菜单第一项的名称,将“结果”设为“子菜单”,再单击“创建”按钮,如图6-10所示。

图6-6为表输入数据

(2)弹出无数据的表,在Visual FoxPro的主窗口中选择“表”,选择“追加新记录” 后,就可以在表中输入数据了,如图6-7所示。不过这种方法只能一次输入一条记录,要输入第二条记录时,需再次选择追加新记录。如果有一个已有数据的表,可以使用“使用追加记录”将这个有数据的表追加到当前表中,不过执行该操作要求这两个表的结构完全相同。

图6-7追加新记录

4各个功能模块的创建

下面的操作均在图书馆管理信息系统的项目管理器中进行,以下所有表单的“桌面”属性全部设为“.T.一真”。

4.1系统主界面的设计

这一模块的主要功能是作为系统主界面为进入本系统不同功能界面选择提供一个接口, 像上面介绍的一样再次添加菜单项,名称为“修改密码”,结果设为“过程”,再单击“创 建”按钮。

*将程序的资源路径设为当前程序所在文件夹

screen.windowstate=2

screen.width=625

screen.height=550

*设定原始窗口大小

。-screen. autocenter=.T.

*将窗口定义在屏幕中间显示

push menu rnsysmenu

*保存原来的系统菜单

do系统菜单.mpr

*执行系统菜单

do form用户登录

*运行登录界面

on shutdown quit

*这行代码的作用是为窗口提供关闭功能

read events

*等待事件

pop menu msysmenu

*还原系统菜单

注:(1)如果不添加on shutdown quit这段代码,则当关闭有可能出现“Can not Exit from

FoxPro”。(2)read events表示现在系统初始化完毕,等待下一个事件的发生。Visual FoxPro6.0

以事件为驱动,最后以clear events结束。(3)在“系统菜单”的二级菜单“退出”里,创建

代码“clear event".

保存菜单。保存“主程序.prg”后,继续在“代码”文件夹下面,鼠标选中“主程序.prg”,

右键单击,在出现的菜单中选择“设置为主文件”,如图6-14所示。

图6-14设置主程序

这样就把“主程序.Prg”设置成为主文件,由它调用其他的功能模块。

4.2系统用户管理模块的设计

系统用户管理模块主要实现:

.用户登录。

.添加用户。

.修改用户密码。

这个功能模块和第1章的一样,这里就不再详细介绍了。需要值得注意的是,当完成了表单和程序的设计后,应当在其功能菜单内添加相应的过程,使得菜单能正确调用表单。图6-15显示了用户登录的界面运行结果,该模块的其他功能希望读者自行完成。

图6-15用户登录界面

4.3读者种类管理模块的设计

图书馆需要管理不同种类的读者,并且不同读者享受的服务不同。读者种类管理模块主要实现如下功能:

.添加读者种类。

.修改读者种类。

.删除读者种类。

在前面的几章的例子中已经详细介绍了关于如何定制具有标准查询并修改功能的表单, 其实Visual FoxPro6.0本身也具有生成具有上述功能表单的功能。下面就介绍如何通过表单向导完成读者种类管理表单的设计,设计的最终结果将如图6-16所示。

图6-16读者种类信息表

首先在项目管理器的文档视图下单击“新建”按钮,然后选择“表单向导”. 在接下来的向导中,“数据库和表”选择“图书馆管理”以及“读者种类信息表”,这是 前面定义好的数据库和表。由于设备入库需要显示所有的字段,因此我们将可用字段全部移 至选定字段。

在表单样式中,选择“阴影式”以及“文本按钮”。左上角的窗口提供了表单样式的预览功能,图片按钮和文本按钮的区别在于显示的时候是以图片来表达功能还是用文字来表示, 实现功能的函数没有区别。而不用的表单样式的区别在于选用不用风格的文本框和标签。选择“上一步”按钮可以跳回上一步对表单中所要显示的字段进行修改。设置好表单样式后,单击“下一步”按钮。单击“下一步”后,向导进行到步骤3一排序次序。选择“种类编号”为 索引,并选择升序排列。最后预览表单,核对每项的设置,完成表单向导,如图6-23所示。值得注意的是,在结束表单向导前,可选择“保存表单以备将来使用”,“保存并运行表单”,或者“保存表单并用表单设计器修改表单”。由于Visual FoxPro6.0向导生成的表单只具有普遍性,对于当前设计的读者种类管理信息表还需要一定的改变,所以我们选择“保存表单并用表设计器修改表单”,单击“完成”按钮。

图6-24根据表单向导生成的表单

需要提醒读者,表单向导生成的表单中的按钮都是继承自标准的按钮类,并集合成一个ButtonSet类型。如果要修改内部按钮的属性,可以通过表单属性的下拉列表选中所用的按钮,进而修改其属性。

以上就结束了读者种类管理表单的设计。可以看见Visual FoxPro6.0提供的强大的向导功能。读者可以通过“工具”菜单下的“向导”选项,选择不同的向导。这里就不一一介绍各个向导的步骤了,同时也可以参阅Visual FoxPro6.0自带的帮助文件。

6.4.4读者信息管理模块的设计

读者信息管理模块主要实现如下功能:

.添加读者信息。

.修改读者信息。

.删除读者信息。

.查询读者信息。

由于读者信息管理模块设计也同样采用表单向导生成,这里就不再叙述详细步骤了。最后运行的界面如图6一27所示。

6:45书籍种类信息模块的设计

书籍类别管理模块主要实现如下功能:

.添加书籍类别。

.修改书籍类别。

.删除订房信息。

由于读者信息管理模块设计也同样采用表单向导生成,这里就不再叙述详细步骤了。

6.4.6书籍信息管理模块的设计

书籍信息管理模块主要实现如下功能:

.添加书籍信息。

.修改书籍信息。

.删除书籍信息。

.查询书籍信息。

由于读者信息管理模块设计也同样采用表单向导生成,这里就不再叙述详细步骤了。

6.4.7借阅信息管理模块的设计

借书信息管理模块主要实现如下功能:

.添加借书信息。

.修改借书信息。

.删除借书信息。

.查询借书信息。

还书信息管理模块主要实现如下功能:

.添加还书信息。

浏览/修改借书信.息模块设计

该表单主要完成浏览所有借阅信息,同时也允许管理员修改借阅信息的功能,所以我们利用一个表格控件来实现,并将其ReadOnly属性设为“.T.一真”,表单界面如图6-33所示。

图6-33浏览借阅信息表运行结果

新建空表单,命名为“浏览借书信息’,,为其添加数据环境借阅信息表后保存。根据表6-7在表单中加入相应控件并更改其属性。

保存修改后的表单就完成了对表单的设计工作。

下面为该表单Load事件的代码:

pack

*Visual FoxPro6.0在删除数据库中的记录时往往是先做上己删除的标签。

*而如果需要彻底删除记录,则还需要执行一条Pack命令。本按钮就是执行这个功能·

重新运行借阅信息表,达到刷新的效果。

3.添加还书信息模块设计

主要功能为添加还书信息,由于借阅编号即是借阅信息的主键,因此通过选择借阅编号就可以得到其他借阅信息,按照需求设计添加还书信息表单如图6-35所示:

新建空表单,命名为“添加还书信息”,为其添加数据环境借阅信息表后保存。根据表6-8在表单中加入相应控件并更改其属性。

图6-35添加还书信息的界面

表“添加还书信息表”控件的主要属性

下面为表单填写事件代码:

在Combol的Init事件中添加代码,以显示所袒借图书。

this.clear

local aCountries,cCountry

dimension aCountries[1]-

select distinct借阅编号from借阅信息表into array aCountries

for each n i.cCountry in aCountries

if !empty(m.cCountry)

this.additem(m.cCountry)一

endif

endfor

在Combo l的InteractiveChange事件中添加代码,以显示图书相关信息:

thisform.读者编号.caption=result(1)

thisform.书籍名称.caption=result(2)

thisform.书籍编号.caption=result(3)

thisform.读者姓名.Caption--result(4)

thisform.出借日期.caption=dtoc(result(5))

thisform.还书日期.caption=dtoc(result(6))

thisform.备注信息.Caption--result(7)

在Connnandl的Click事件中添加代码,完成还书功能:

delete from借阅信息表where借阅编号=thisform.Combo l.value

pack

thisformselease

在Command2的Click事件中添加代码,完成取消功能:

thisformselease

现在就完成了对还书信早的添加功能如6-36所示。

.图6-36选择借阅编号后的界面

通过借阅信息管理模块的设计,可以看到数据流都是在借阅信息表中完成,无论是添加借书信息、修改删除借书信息以及添加还书信息管理都是对借阅信息表的操作。这样可以达到对数据库进行完整性约束的目的。而所有的图书和作者又都是通过读者信息表和书籍信息表得到的,使得数据库中各个表之间完成了关联,达到了数据库的一致性。哈华

读者可以通过以上的学习添加对还书日期的限制,如果当前时间超过了还书时间,则应当显示图书过期信息。因此就应该在Commandl中加入判断条件的代码。这里就留给读者自行完成,最后在系统菜单中添加借阅信息管理的功能。

4.8帮助文档的设计.

图6-37帮助界面

为帮助表单添加Click事件代码:

thisform.release

5开发中的难点和解决技巧

5.1在Visual FoxPro6.0中添加和修改删除记录

在建立数据表时,所输入的数据记录不会是永久不变的,随着时间的推移,新的数据记录需要添加,不需要的记录应当删除。

为了在一张表中加入数据记录,可以按照以下的步骤:

(1)从“显示”下拉菜单中选择“追加方式”命令。在“浏览窗口”中的最后一行记录后将增加一新记录,但各字段中的值都为“空”值。

(2)在“浏览窗口”中输入新的记录。

操作时,可以如同前面建立表后输入数据记录那样,将新的数据记录附加在此表后,如果需要,还可同时在各字段中分别输入新的值。

注:上面的操作发生在“浏览“方式下的“浏览窗口”中。此时只能追加一行数据记录。

若要追加一行以上的记录,可以在追加一行数据记录后,从“显示”下拉菜单中选择“编辑”命令,进入“编辑”方式后进行操作。或者在每编辑完一行后,按“Ctrl+Y”继续添加记录。

以上就完成了对记录编辑和添加的操作,接下来介绍如何删除表中的记录。对于己经存在于表中的记录,可以在任何一个时候移出并且删除它们,但删除任何一行记录都需要分两步进行处理:

(1)单击将要删除的记录。

这一步操作仅对所要删除的记录行作上一个标记。单击处是位于该行记录左端的“标记 框”,把它填充为黑色即可,这时,该记录还不会被删除,仅是为删除建立了一个标记而已。

可以将多行记录都做上此标记,然后通过下一步操作将所有做标记的记录删除。若要取消删除标记,单击它即可。

(2)从“表”下拉菜单中选择“彻底删除”命令,并在“确认”对话框中单击“是”按钮。

若真的要删除记录,就可以执行“彻底删除”命令。此命令将删除所有在“浏览窗口”中作上删除标记的记录,并重新构造表中的记录。

需要注意:这种删除是不可恢复的,所以要慎重。假如误删除了某些记录,只能重新录入。

5.2在Visual FOxPro 6.0中编程的技巧

1.复制

在一个软件中会有许多代码是重复,我们可以不用重复地录入,而使用菜单中的“复制” “粘贴”等命令来复制重复的内容。

与此同时,表单中的控件也是能复制的,而且可以一次复制多个控件。比如在制做图书馆管理信息的借书表单时,设计好第一个(编号的)标签和文本框,接着做姓名的标签和文本框时,就可以采用复制的办法。

用鼠标同时选择编号的标签和文本框,方法是用鼠标画一框将以上两个控件框住,框住 每个控件的一部分也可以,这样我们可以看到每个控件四周都有6个黑点,表示它们都被选择了。然后与复制文字一样,调用菜单上的“复制”命令或工具栏上相应按钮,然后再用鼠标按“粘贴”,就会出现两个同样的控件,用鼠标把它们移到适当的位置(可以一起移),再将caption、controls~e以及大小等属性做相应改动即可。

注意:控件的n~属性在粘贴时已自动做了改动,比如原来的文本框叫textl,复制出来的文本框会自动叫textZ(再复制就会叫text3),在一个表单中是不允许出现两个同名的控件,系统会自动遵守这一点,故我们可以不用去修改n~了。当然也可以根据程序开发的需要,把它改为一个有实际含义的名称。

另外在复制控件时不光属性会被复制,其中的事件代码也会被复制。可以把一个表单中的控件复制到另一个或更多的表单中。比如很多时候退出或取消按钮都是一样的,其中的click事件中都是“thisform.release”语句,通过复制就可以把份个表单中的按钮复制到另一个表单中,有时可能会需要改一下caption或在click事件中加减一两条语句。还有向上移动记录和向下移动记录的按钮,其中的事件程序也都差不多,也可以复制,然后将不同的地方修改一下。

但是复制粘贴后的控件往往就会被复制在鼠标停留的地方。这样就应影响了整个表单的外观,这时应当通过鼠标粗调控件的位置,或者通过键盘上的方向键细调控件的位置。

2.缩格及空行

标准的程序编写具备良好的风格。合理恰当的缩格和空行都会使程序结构清晰易懂。

Visual FoxPro6.0中有很多语句是成对的,比如if和endif, do while和enddo,为了把成对语句之间的语句和之外的语句区别开来以利于程序的阅读和理解,有经验的程序员往往都是把成对语句之间的语句往里缩。

此外,一个良好的程序还应当有良好的注释,即使是程序的功能很简明,往往也会用空行分开,以表示此功能已经实现‘这就是粼7所说的空行。这就有点像写文章分段,一段相对完整的意思做为一段,编程时也把一段相对完整功能的程序做为一段,一段完了可以空上一行,也是便于程序的阅读。

3.在程序中插入对象名称

在编写面向对象的程序时,经常要引用一个对象的名称,而且要用这个对象的全名,比如thisform.textl o如果控件数目过多,就很难记住表单中每个控件的名字。所以在编程的时候应注意给主要的控件的。~属性赋值,这里再介绍一种方法可以看到所有该表单中的控件名,方便编码人员查找、在要插入一个对象引用名称的位置上单击鼠标右键,在弹出的菜单中选择“对象列表”在出现的对象列表中选择所要的对象,单击插入之后插入的名称会以大写字母开头。

4.精确调整对象位置

在编程序时可以发现当移动一个控件时它是跳着走的,而且是按照表单上的虚线格跳,这主要是为了我们的控件都能对整齐。但有时候如果不需要对整齐,而要做一些小小的调整,即不按格跳,就可以采取以下的步骤。

选择菜单上的“格式”,再选择其中的“对齐格线”。将其左边的钩去掉,然后再移动控件的时候,将会发现控件可以移动自如。如要恢复原来的状态,再把钩加上。

5.为文件写说明

在开发一个较大的软件时,在项目管理器中会有很多的文件,当文件多到一定数目的时候,可能都搞不清这些文件的功能是什么,为了防止这一点,应该为每个文件写上说明方便随时了解每个文件的作用。

具体方法如下:

用鼠标右键单击一个文件名,在弹出的菜单中选择编辑说明,在出规的表单中写入该文件的说明文字,单击“确定”按钮。之后当用鼠标选中这个文件时,相应的说明就会显示在项目管理器的底部。事实证明,这样可以大大减少修改文件的时.

重命名文件

在编软件时免不了有时要改文件名,方法是在项目管理器中用鼠标右键单击一个文件名,在弹出的菜单中选择“重命名”,在弹出的对话框中重新输入新的文件名。

7.修改数据表时调整字段位置

当我们需要调整数据表中的字段位置,可在表设计器中很方便地移动。进入表设计器, 用鼠标按住字段移动钮,然后上下移动到所需的位置即可。

8.调用表格中各列的位置

在表格生成器中移动,用鼠标按住选定字段中的字段移动钮上下移动,与上面移动数据表的字段一样。

在表单中移动,在属性窗口中选择表格的任一列,然后在表格上抓住要移动列的表头左右移动到所需位置即可。

在程序运行时移动,直接抓住要移动列的表头左右移动到所需位置。

9.设置控件的tabindex位置

一般说来,进入一个表单后,希望光标停在第一个输入位置,按回车则光标依次向后跳,但是有时可能会发现,光标不依这个顺序走,这是因为在设计和创建这些控件时没有按照所需的顺序,也就是在表单上先创建的控件,光标就先到。下面就如何更改光标在每次回车后的顺序。

设置控件的tabindex属性可以改变这个顺序,但直接改变tabindex属性很麻烦.Visual FoxPro6.0提供了很方便的改变方法0用鼠标按下表单设计器工具栏上的按钮攀,每个控件的tabindex顺序即会标示出来,如图6-45所示,如果顺序不对,用鼠标按顺序将所有控件点一遍就行了,点完后在表单空白地方按一下,tabindex显示消失。

10.改程序前应先改系统分析

.当要对程序做功能上的修改(不是修改语句中的错误),应先看看系统分析,因为一个程序的各个部分是有着千丝万缕的联系的,当改了一个地方,可能导致另一个地方出问题,所以我们应先对系统分析修改,并平衡各方面关系,觉得系统分析上没有逻辑上的冲突和错误后,再按照新的系统分析去修改程序。

这样修改永远都可以保持有一个清晰的思路,而不会把程序改来改去,到最后自己都不知道改成什么样了,如果这时需要别人来帮忙修改更是不可想象。.

11.删除项目管理器中的文件

如果不想要项目管理器中的某个文件,可用“移去”按钮将这个文件从项目管理器中移出去。当调用移去功能时,系统会问是移去还是删除,移去一个文件并没有从磁盘上将其真正删除,如要真正删除,则应选择“删除”。

当然移去后的文件可用其它方式删除,但千万不要用其它方式删除一个在项目管理器中存在的文件,这样会造成项目管理器打开出错。一旦出现这种情况,在打开项目管理器时会出现提示找不到某个文件,这时选择“忽略”,然后进入项目管理器,再将这个文件移去,这时不要用删除,因为这个文件己不存在,删除则又会出错。

6 系统的编译和发行

1设里主文件

用主图标(以黑体的文件表示)标记的文件是客户在启动.app或者是.e职时被调用的文件。它可以是一个表单。菜单李程序,建议使用程序作为主文件。

2构造主文件,

如果主文件是一个程序,它将调用应用程序框架中的各个功能组件。然后由这些组件调用应用程序的其余部分。..

如果要建立一个简单的主程序,可以按下列步骤进行。

(1)现设置应用环境界面。

(2)确定初始用户界面。

(3)建立事件循环。

(4)恢复环境,退出应用程序。

为了避免无限循环,必须在READ EVENTS命令之前安排CLEAR EVENTS命令。可以在主菜单或主表单中添加一个呵退出”项,该项发出CLEAR EVENTS命令。

3在.app和.exe文件中包含和排除文件.

如果在发布的应用程序中不想再更改这些文件,可把它们放在项目中并设置为“包含”。

那么这些文件变成只读的,不能修改。如果想修改这些文件,把它们放到项目中并设置为“排除”,然后作为独立文件随着应用程序一起发布。

.在默认情况下,Visual FoxPro在嵌放的过程中排除了数据库、表格·称为.ff的“库文件和.app文件。建议用户除了一些特定的表格,最好不要包含这类文件:数据库和表格需要变化和添加,而如果编译后包含自:exe或者是-app文件中,由于这两个文件被创建后都是静态的,所以被包含的文件也是静态的和只读的。把数据库和表格包含在这些文件中很明显会带来问题。

由于这些文件不能被包含在文件.app和.exe中,所以要在发布一个应用程序之前为这些文件做好准备。若要排除可修改的文件,首先在项目管理器中,选择可修改的文件,然后从“项目”菜单中选择“排除”命令。在一个文件被排除后,则在文件的左方加入一个排除符号。

7运行结果

图书馆管理信息系统各模块运行结果如图6-46到图6-53所示,以下所列为几个重要的.

图6-46读者种类信息界面图6-47书籍类别信息界面

图6一49书籍信息界面图6一50添加借书信息界面

图6一51修改借阅信息图6一52添加还书信息

总 结

一个完整的图书馆管理信息系统到此就制作完成了。通过这次毕业设计,使我受到了一次用专业知识、专业技能分析和解决问题的全面系统的锻炼。使我在综合知识的选用方面,在应用软件开发的基本思想、方法方面,以及在常用编程设计思路技巧的掌握方面都能向前迈了一大步。为日后成为合格的应用型人才打下良好的基础。这次在指导老师的帮助下,在同学的帮助下,基本上完成了设计任务,在软件的设计方面也有了一定的提高,熟练掌握了VISUAL FOXPRO命令和编程技巧,为今后走上工作岗位打下了专业基础。

在这次的毕业设计中,让我深深地体现到进行软件开发不是一件简单的事情,它需要设计者具有全面的专业知识、缜密的思维、严谨的工作态度以及较高的分析问题、解决问题的能力,而我在很多方面还有欠缺。最后,我要衷心感谢老师在我的设计过程中给予我的极大帮助,使我能够及时、顺利地完成此次的毕业设计。同时,也要感谢我的老师和同学们及实习企业在本系统的设计过程中给予我的支持和帮助。

参考文献

1.李加福《Visual FoxPro6.0》·清华大学出版社·1999.6

2.何磊等《Visual FoxPro 6.0开发实例》·清华大学出版社·1999.5

3.王晶莹等《Visual FoxPro数据库开发实例解析》·机械工业出版社·2003.9

4.张琦等《Visual FoxPro面向对象编程指南》·清华大学出版社·1999.3

5.白永军《Visual FoxPro程序开发项目案例》·清华大学出版社·2004.5

6.郝锋等《Visual FoxPro6.0/7.0命令与函数大全》·电子工业出版社·2002.3

7.邵洋 顾宇 何旭洪《Visual FoxPro6.0数据库系统开发实例导航》·人民邮电出版社·2002.5

8.谭翀《Visual FoxPro 6.0程序设计实验指导与实训》·中国水利水电出版社·2004.5

9.张庆 崔竞 康祥顺《Visual FoxPro案例开发集锦》·电子工业出版社·2005.10

10.李春葆《中文Visual FoxPro 6.0应用设计100例》·科学出版社·北京科海电子出版社·2001.2

欢迎光临本站,我们将竭诚为您服务!

毕业设计论文联盟一家专业的毕业设计辅导网站,是国内较为大型的毕业设计(论文)服务机构.是专业的毕业设计(论文)服务平台,网站拥有一支实力雄厚的毕业设计(论文)队伍,为客户提供精湛,快速,专业,全面的毕业设计(论文)服务.
本站所有工作人员均为研究生团队,不同于网上的个人,经验丰富,信誉保证,售后服务完善,团队合作,分工开发,速度快,质量优,服务全国每个城市,案例众多。(主要从事网站,软件,信息系统开发等业务,毕业设计是旗下分支业务)

本站拥有原创毕业设计(论文)共10000多套(包含各专业各学科),我们多年的努力已帮助大量毕业生顺利通过了毕业答辩,获得了"优秀毕业设计"的好成绩.

本站的制作水平就可以体现出本站的实力,大网站,重信誉,并且本站服务器托管在中国电信,现有全职员工8人,并且拥有兼职工作人员15多人,所以我们投资这么大,不会轻易损害我们的信誉,请大家放心。(信誉评价)

选择我们的理由:
① 技术实力雄厚
我们拥有专业的研究生团队,信誉保证,有着多年的代做毕业设计经验,分工合作,速度快,质量优,通过率100%。
② 良好的信誉保证
我们本身是正规网站,有固定办公场所,不同于网上的个人,团队合作,分工开发,每年都做。服务学生很多。我们相信没有诚信的人永远做不长久,他们也许短暂的骗取学生的信任,但是永远做不成真正的事业。我们本着“诚信做人,良心做事”的理念,认真对待每一个学生,对每一个学生负责,让你们顺利通过答辩,顺利毕业,走向社会。
③ 售后服务完善
我们本身是正规网站,有固定办公场所,常年做这个行业,所以不会出现售后找不到人的情况,请大家放心,我们承诺:所有在我们网站定做的毕业设计全部包修改,包通过,免费为您调试系统,辅导和讲解相关代码及答辩知识,售后服务全部免费,直到您通过为止。

在如今的金融危机局势下,学生不仅面临找工作的压力,又要面临毕业答辩的压力,确实很不容易,我们为您做的就是解除您的毕业设计烦恼,让你放心的去找工作,顺利通过答辩,顺利毕业,找到一份好工作,开心走向社会。
毕业设计论文联盟唯一的官方网站:>

管理信息系统论文3000字篇3

目 录

摘要

第一章图书馆管理信息系统概述………………………..4

1.系统目标设计………………………………………………..4

2.开发设计思想………………………………………………..4

3.开发/运行环境选择…………………………………………..4

4.系统功能分析…………………………………………………4

5.系统功能模块分析…………………………………………….5

第二章图书馆管理系统开发工具简介……………………6

系统开发工具简介 VISUAL FOXPRO 6.0…………………………6

第三章图书馆管理系统需求分析…………………………7

1.数据库需求分析………………………………………………7

2.数据库逻辑结构设计………………………………………….9

3.图书馆管理信息系统数据流图……………………………….11

第四章图书馆管理系统总体设计………………………..12

1.功能模块的划分…………………………………………….12

1.1系统功能主界面的设计…………………………………….13

1.2系统用户管理模块的划分……………………………………15

1.3读者种类管理模块的划分……………………………………15

1.4读者信息管理模块的划分……………………………………15

1.5书籍种类信息模块的划分……………………………………16

1.6书籍信息管理模块的划分……………………………………16

1.7借阅信息管理模块的划分……………………………………16

2.数据库的结构设计………………………………………….16

第五章 图书馆管理信息系统模块设计…………………..17

1.借阅信息管理模块流程图…………………………………….17

2.书籍信息管理模块流程图…………………………………….18

3.读者信息管理模块流程图…………………………………….18

第六章 图书馆管理信息系统程序设计……………………18

1.系统用户管理模块的设计………………………………….18

1.1用户登录……………………………………………………18

1.2添加系统用户………………………………………………20

2.借阅信息管理模块的设计………………………………….21

2.1添加借阅信息模块的设计……………………………………21

2.2浏览/修改借书信息模块的设计…………………………….26

2.3添加还书信息模块的设计…………………………………..27

第七章 图书馆信息管理系统调试及运行………………….30

1.设置主文件………………………………………………….30

2.构造主文件………………………………………………….30

3.在.app和.exe文件中包含和排除文件……………………….31

4.运行结果…………………………………………………….31

体会与收获…………………………………………………….36

致谢……………………………………………………………37

参考文献……………………………………………………….38

摘 要

图书馆管理系统是一些单位不可缺少的部分,书籍是人类不可缺少的精神食粮,尤其对一些学校来说,尤其重要。所以图书馆管理系统应该能够为用户提供充足的信息和快捷的查询手段。但一直以来人们使用传统人工的方式管理图书、期刊、试卷合订本等,这种管理方式存在着许多缺点,如:效率低、保密性差,另外时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少的困难。

随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。作为计算机应用的一部分,使用计算机对图书资源信息进行管理,具有着手工管理所无法比拟的优点.例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高图书馆管理的效率,也是企业、学校的科学化、正规化管理,与世界接轨的重要条件。

图书馆管理系统是典型的信息管理系统(MIS),其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。对于前者要求建立起数据一致性和完整性强.数据安全性好的库。而对于后者则要求应用程序功能完备,易使用等特点。

经过分析如此情况,我们使用微软公司的VISUAL FOXPRO 6.0开发工具,利用其提供的各种面向对象的开发工具,尤其是数据窗口这一能方便而简洁操纵数据库的智能化对象,首先在短时间内建立系统应用原型,然后,对初始原型系统进行需求迭代,不断修正和改进,直到形成用户满意的可行系统。

由于我们能力有限,所做的数据库也只能达到目前这种水平,希望能够得到老师的指导与帮助。

关键词:

数据库,SQL语言,数据库组件,图书管理,窗体

Summary

The administrative system of the library is an indispensable part of some units, the books are mankind"s indispensable nourishment for the mind, especially for some schools, it is especially important. So the administrative system of the library can offer sufficient information and swift inquiry means to user . But people use tradition artificial way manage books , periodical , paper bound volume ,etc. all the time, this kind of management style has a lot of shortcomings, for instance: Efficiency is low, privacy is bad, as time goes by in addition, a large number of file and data will emerge, this for looking for, be newer and maintain and all bring many difficultying. With the constant improvement of science and technology, computer science is ripe day by day, its strong function has already been people"s deep understanding, it has been already entering each field of the human society and playing a more and more important role. As a part that the computer used , use the computer to manage resource information of the books, have incomparable advantage of administrative institute of crafts. For example: Search helping , dependability high , storing amount great , privacy is good , longe-lived , cost low grade rapidly , find out. These advantages can improve the efficiency of management of the library greatly , is managed by scientific process , regularization of the enterprise , school too, important condition integrated with the world. The administrative system of the library is a typical information management system (MIS ), it develops two respects of main development including setting-up and maintenance and front application program of backstage supporter"s database . Demand to set up the consistency of the data and integrality to the former strongly. Storehouse of the data with good security . Require to the latter the function of the application program is complete , apt characteristic of using etc. . Through analysing such situation, we use VISUAL FOXPRO 6.0 developing instruments of Microsoft, utilize various kinds of target -oriented developing instrument that offer it, especially data window this can convenient succinct to handle intelligent target of the database, set up system use prototype , then go on demand change and take the place of to initial prototype system within short time at first, revise and improve constantly, until forming the feasible system that users are satisfied with. Because we have limited ability , the databases done can only reach this kind of level at present , hope to get the teacher"s guidance and help.

Keyword:

The database , SQL language, the package of the database , taking care of books, window body

第一章图书馆管理信息系统概述

1.系统目标设计

通过一个图书馆管理信息系统,使图书馆的信息管理工作系统化、规范化、自动化,从而达到提高企业人事管理效率的目的。

2.开发设计思想

本系统的开发设计思想:

●系统应符合图书馆信息管理的规定,满足图书馆日常管理的工作需要,并达到操作过程中的直观、方便、实用、安全等要求;

●系统采用模块化程序设计方法,既便于系统功能的各种组合和修改,又便于未参加开发的技术维护人员补充、维护;

●系统应具备数据库维护功能,及时根据用户需要进行数据的添加、删除、修改、备份等操作。

3.开发和运行环境选择

开发工具:Visual FoxPro 6.0

运行环境:Windows 9x、Windows NT 或Windows 2000

4.系统功能分析

●有关读者种类标准的制定、种类信息的输入,包括种类编号、种类名称、借书数量、借书期限、有效期限、备注等。

●读者种类信息的修改、查询等。

●读者基本信息的输入,包括读者编号、读者姓名、读者种类、读者性别、工作单位、家庭住址、电话号码、电子邮件地址、登记日期、备注等。

●读者基本信息的查询、修改,包括读者编号、读者姓名、读者种类、读者性别、工作单位、家庭住址、电话号码、电子邮件地址、登记日期、备注等等。

●书籍类别标准的制定、类别信息的输入,包括类别编号、类别名称、关键词、备注信息等。

●书籍类别信息的查询、修改,包括类别编号、类别名称、关键词、备注信息等。

●书籍信息的输入,包括书籍编号、书籍名称、书籍类别、作者姓名、出版社名称、出版日期、书籍页码、关键词、登记日期、是否被借出、备注信息等。

●书籍信息的查询、修改,包括书籍编号、书籍名称、书籍类别、作者姓名、出版社名称、出版日期、书籍页码、关键词、登记日期、是否被借出、备注信息等。

●借书信息的输入,包括借阅编号、读者编号、读者姓名、书籍编号、书籍名称、出借日期、还书日期、备注信息等。

●借书信息的查询、修改,包括借阅编号、读者编号、读者姓名、书籍编号、书籍名称、出借日期、还书日期、备注信息等。

●还书信息的输入,包括选择借阅编号、读者编号、书籍编号、书籍名称、借书日期、还书日期、备注信息等。

●还书信息的查询和修改,包括选择借阅编号、读者编号、书籍编号、书籍名称、借书日期、还书日期、备注信息等。

5.系统功能模块设计

在系统功能分析的基础上,考虑Visual FoxPro 6.0程序编制的特点,得到如图1-1所示的系统功能模块图。

图1-1 系统功能模块图

第二章图书馆管理系统开发工具简介

Visual FoxPro6.0是全球最大的软件生产商Microsoft公司开发的一个功能强大的数据库管理系统。为适应当今社会信息产业特别是Internet的飞速发展,Microsoft公司于1998年推出了最新的版本Visual FoxPro6.0,又称为Visual FoxPro98。

Visual FoxPro 6.0 是Microsoft公司推出的全新的PC平台关系型数据库管理系统。它具有强大的性能、完整而丰富的工具、极其友好的图形用户界面、简单的数据存取方式、良好的兼容性、独一无二的跨平台特性以及真正的可编译性。它不仅可以简化数据管理,而且使应用程序的开发流程更为合理。

Visual FoxPro 6.0 使组织数据、定义数据库规则和建立应用程序等工作变得简单易行。利用可视化的设计工具和向导,可以快速创建表单、查询和报表。Visual FoxPro 还提供了一个集成化的开发环境,不仅拥有面向对象程序设计工具以及客户/服务器功能,而且支持ActiveX,这些特点为快速开发功能全面的应用程序创造了良好的条件。这些都使Visual FoxPro 6.0成了目前较完美的数据库系统。

Visual FoxPro 6.0不但兼容早期的dBASE以及FoxBASE的各种版本,同时还提供了许多基于Windows 98的崭新功能。Visual FoxPro 6.0为计算机2000年问题提供了有效的解决方案。Visual FoxPro 6.0是一个32位的数据库开发系统,可运行于Windows 98和Windows NT操作系统。Visual FoxPro 6.0是一个既具有Visual 系列的功能强大、直观易用、面向对象的优点,又兼有Windows和FoxPro的长处,提供了向导、设计器和生成器等工具,使得数据库的管理工作变得十分容易,因此不再需要用户通过编写程序代码来完成任务。

第三章图书馆管理系统需求分析

1.数据库需求分析

用户的需求具体体现现在各种信息的提供、保存、更新和查询,这就要求数据库结构能充分满足各种信息的输出和输入。收集基本数据、数据结构以及数据处理的流程,组成一份详细的数据字典,为后面的具体设计打下基础。

仔细分析调查有关图书管理信息需求的基础上,将得到如图3-1所示的本系统所处理的数据流程

图3-1 图书馆管理信息系统数据流程图

针对一般图书馆管理信息系统的需求,通过对图书馆管理工作过程的内容和数据流程分析,设计如下面所示的数据项和数据结构:

●读者种类信息,包括的数据项有:种类编号、种类名称、借书数量、借书期限、有效期限、备注等。

●读者信息,包括的数据项有:读者编号、读者姓名、读者种类、读者性别、工作单位、家庭住址、电话号码、电子邮件地址、办证日期、备注等。

●书籍类别信息,包括的数据项有:类别编号、类别名称、关键词、备注信息等。

●书记信息,包括的数据项有:书籍编号、书籍名称、书籍类别、作者姓名、出版社名称、出版日期、书籍页数、关键词、登记日期、备注信息等。

●借阅信息,包括的数据项有:借阅信息编号、读者编号、读者姓名、书籍编号、书籍名称、借书日期、还书日期、备注信息等。

有了上面的数据结构、数据项和数据流程,我们就能进行下面的数据库设计。

2 数据库逻辑结构设计

现在需要将上面的数据库概念结构转化为Visual FoxPro 数据库系统所支持的实际数据模型,也就是数据库的逻辑结构。

图书馆管理信息系统数据库中各个表格的设计结果如下表格所示。每个表格表示在数据库中的一个表。

表3-1

读者种类信息表

列名

数据类型

可否为空

种类编号

字符型(4)

种类名称

字符型(10)

借书数量

字符型(4)

借书期限

字符型(4)

有效期限

字符型(4)

备注

字符型(20)

表3-2

读者信息表

列名

数据类型

可否为空

读者编号

字符型(10)

读者姓名

字符型(10)

读者性别

字符型(3)

读者种类

字符型(10)

工作单位

字符型(40)

家庭地址

字符型(40)

电话号码

字符型(10)

电子邮件地址

字符型(20)

登记日期

日期型(8)

备注

字符型(20)

表3-3

书籍类别信息表

列名

数据类型

可否为空

类别编号

字符型(10)

类别名称

字符型(20)

关键词

字符型(20)

备注

字符型(40)

表3-4

书籍信息表

列名

数据类型

可否为空

书籍编号

字符型(10)

书籍名称

字符型(40)

书籍类别

字符型(20)

书籍作者

字符型(20)

出版社名称

字符型(20)

出版日期

日期型(8)

书籍页码

整型(4)

关键词

字符型(20)

登记日期

日期型(8)

是否被借出

字符型(3)

备注

字符型(40)

表3-5

借阅信息表

列名

数据类型

可否为空

借阅编号

字符型(10)

读者编号

字符型(10)

读者姓名

字符型(20)

书籍编号

字符型(10)

书籍名称

字符型(20)

出借日期

日期型(8)

还书日期

日期型(8)

备注信息

字符型(40)

表3-6

系统用户表

列名

数据类型

可否为空

用户名称

字符型(10)

用户密码

字符型(10)

用户描述

字符型(10)

3.图书馆管理信息系统数据

记录单

凭证

密码

借阅凭证

借书记录 还书记录

借/ 借/还书报表

书籍清单

凭证

第四章 图书馆管理系统总体设计

1功能模块的划分

1.1系统功能主界面的设计

这一模块的主要功能是作为系统主界面为进入本系统不同功能界面选择提供一个接口。打开“图书馆信息管理系统”项目后,在项目管理器中展开“其他”文件夹,用鼠标选中菜单,单击右侧的“新建”按钮,在弹出的对话框中将该数据库文件存储为d:\毕业设计\菜单.mnx。然后单击右侧的“插入”按钮,在左侧填入菜单第一项的名称,将“结果”设为“子菜单”,再单击“创建”按钮;
象上面介绍的一样再次添加菜单项,名称为“添加用户”,结果设为“过程”,再单击“创建”按钮,在弹出的代码窗口中加入代码:

do form d:\毕业设计\添加系统用户.scx

反复进行上述操作,建立如下结构的菜单。

这样就完成了对系统菜单的设计,为了让程序在启动时候能够调用上面创建的菜单,还应当新建一个运行程序。

打开“图书馆信息管理系统”项目后,在项目管理器中展开“代码”文件夹,用鼠标选中菜单,单击右侧的“新建”按钮,在弹出的对话框中将该数据库文件存储为d:\毕业设计\主程序.prg

图4-1新建主程序

单击右侧的“修改”按钮,在主程序内加入如下代码:

set defa to d:\毕业设计

set directory to curdir()

*将程序的资源路径设为当前程序所在文件夹

_screen.windowstate=2

_screen.width=625

_screen.height=550

*设定原始窗口大小

_screen.autocenter=.T.

*将窗口定义在屏幕中间显示

push menu _msysmenu

*保存原来的系统菜单

do 菜单.mpr

*执行系统菜单

do form 系统登录

*运行系统登录

on shutdown quit

*这行代码的作用是为窗口提供关闭功能

read events

*等代事件

pop menu _msysmenu

*还原系统菜单

保存菜单。保存“主程序.prg”后,继续在“代码”文件夹下面,鼠标选中“主程序.prg”右键单击,在出现的菜单中选择“设置为主文件”,这样就把“主程序.prg”设置成为了主文件,由它调用其他的功能模块。

1.2系统用户管理模块

系统用户管理模块主要实现如下功能:

●用户登录

●添加用户

1.3读者种类管理模块

图书馆需要管理不同种类的读者,并且不同读者享受的服务不同。读者种类管理模块主要实现如下功能:

●添加读者种类

●修改读者种类

●删除读者种类

1.4读者信息管理模块

读者信息管理模块主要实习那如下功能:

●添加读者信息

●修改读者信息

●删除读者信息

●查询读者信息

1.5书籍种类信息模块

书籍类别管理模块主要实现如下功能:

●添加书籍类别

●修改书籍类别

●删除订书信息

1.6书籍信息管理模块

书籍信息管理模块主要实现如下功能:

●添加书籍信息

●修改书籍信息

●删除书籍信息

●查询书籍信息

1.7借阅信息管理模块

借书信息管理模块主要实现如下功能:

●添加借书信息

●修改借书信息

●删除借书信息

●查询借书信息

还书信息管理模块主要实现如下功能:

●添加还书信息

2.数据库的结构设计

首先建立一个“图书馆管理信息系统”的项目,以便管理本系统中所有的数据,用鼠标选中数据库,单击右侧的“新建”按钮,在弹出的对话框中将该数据库文件存储为D:\毕业设计\数据1.dbc。在弹出的数据库设计器中单击鼠标右键,选择“新建表”,为数据库添加数据表。将表存储为D:\毕业设计\读者信息种类.dbf。在弹出的表设计器中填写表的内容。

每个表的字段设置完成后,单击“确定”按钮后可以为表输入数据,如不想输入,可以先“取消”,以后再输入。具体方法如下:

(1)选中要输入数据的表,单击“浏览”按钮;

(2)弹出无数据的表,在Visual foxPro 的主窗口中选择“显示”,选择“编辑”,再选择“追加方式”就可以在表中输入数据了。

第五章图书馆管理信息系统模块设计

1.借阅信息管理模块流程图

记录单

借书记录 还书记录

2.书籍信息管理模块流程图

3.读者信息管理模块流程图

密码

第六章 图书馆管理信息系统程序设计

1.系统用户管理模块的设计

系统用户管理模块主要实现:

●用户登录

●添加用户

1.1用户登录

打开“图书馆管理信息系统”项目后,在项目管理器中展开“文档”文件夹。用鼠标选中表单,单击右侧的“新建”按钮,在弹出的对话框中将该数据库文件存储为D:\毕业设计\系统登录.scx。然后将新建的Form1的Caption属性改为登录,在登录表单中添加表6-1所示控件。

图6-1为用户登录运行界面。

控件名

控件类型

属性名称

属性值

Label1

标签

Caption

图书馆管理信息系统

Label2

标签

Caption

用户名

Label3

标签

Caption

用户密码

Text1

文本框

Name

用户名

Text2

文本框

Name

用户密码

Command1

命令按钮

Caption

确定

Command2

命令按钮

Caption

取消

表6-1

“用户登录”控件的主要属性

在Command1添加如下代码:

use d:\毕业设计\系统用户表.dbf

cname=alltrim(thisform.用户名.value)

ppassword=alltrim(thisform.用户密码.value)

set order to 用户名称

seek cname

if (系统用户表.用户密码)=ppassword

thisform.release

use

endif

在Command2添加如下代码:

thisform.release

图6-1 用户登录界面

1.2添加系统用户

打开“图书馆管理信息系统”项目后,在项目管理器中展开“文档”文件夹。用鼠标选中表单,单击右侧的“新建”按钮,在弹出的对话框中将该数据库文件存储为D:\毕业设计\添加系统用户.scx。然后将新建的Form1的Caption属性改为添加系统用户,在添加系统用户表单中添加表6-2所示控件,图6-2为添加系统用户运行界面。

表6-2

“添加系统用户”控件的主要属性

控件名

控件类型

属性名称

属性值

Label1

标签

Caption

用户名称

Label2

标签

Caption

用户密码

Label3

标签

Caption

用户描述

Text1

文本框

Name

用户名称

Text2

文本框

Name

用户密码

Text3

文本框

Name

用户描述

Command1

命令按钮

Caption

确定

Command2

命令按钮

Caption

取消

在Command1添加如下代码:

insert into 系统用户表(用户名称,用户密码,用户描述);

values(thisform.用户名称.value,thisform.用户密码.value,thisform.用户描述.value)

thisform.release

在Command2添加如下代码:

thisform.release

图6-2 添加系统用户

2.借阅信息管理模块的设计

借书信息管理模块主要实现如下功能:

●添加借书信息

●修改借书信息

●删除借书信息

●查询借书信息

还书信息管理模块主要实现如下功能:

●添加还书信息

2.1添加借阅信息模块的设计

首先新建一个空表单,命名为“添加借书信息表”,并为数据环境添加读者信息表和书籍信息表。设计表单界面,在表单中添加表6-3所示控件,并调整位置如图6-3所示

表6-3

“添加借阅信息表”控件的主要属性

控件名

控件类型

属性名称

属性值

借阅编号1

文本框

Value

读者编号1

组合框

Value

书籍名称1

文本框

ReadOnly

.T.-真

书籍编号1

组合框

Value

读者姓名1

文本框

ReadOnly

.T.-真

出借日期1

文本框

Value

还书日期1

文本框

Value

备注信息1

文本框

Value

Command1

命令按钮

Caption

确认添加

Commacd2

命令按钮

Caption

取消添加

Image1

图象

Form1

Caption

添加借阅信息表

图6-3 添加借阅信息表界面

由于在数据库中我们把读者编号和书籍编号作为主键,因此通过读者编号就能在读者信息表中找到对应的读者姓名,同样在书籍信息表中也能找到对应的书籍名称。此外表单中的组合框用来选择所用可用的书籍和读者。下面的代码将实现上述功能。

在组合框读者编号1的Init事件中添加代码如下:

this.clear

*清空组合框里的Item。在使用该表单前读者信息表已经存在记录。

local aCountries,country

*定义临时变量

dimension aCountries[1]

*定义变量数组用来存放不同的读者编号

select distinct 读者编号 from 读者信息表 into array aCountries

for each m.cCountry in aCountries

*将所选出的不同记录添加到组合框的选项中

if !empty(m.cCountry)

this.additem(m.cCountry)

endif

endfor

在组合框读者编号1的InteractiveChange事件中添加代码如下:

select 读者姓名 from 读者信息表;

where (读者编号=thisform.读者编号1.value) into array result

thisform.读者姓名1.value = result(1)

*根据选择的读者编号,把读者姓名回显到文本框中

在组合框书籍编号1的Init事件中添加代码如下:

this.clear

*清空组合框里的Item。在使用该表单前书籍信息表已经存在记录。

local aCountries,country

*定义临时变量

dimension aCountries[1]

*定义变量数组用来存放不同的书籍编号

select distinct 书籍编号 from 书籍信息表 into array aCountries

for each m.cCountry in aCountries

*将所选出的不同记录添加到组合框的选项中

if !empty(m.cCountry)

this.additem(m.cCountry)

endif

endfor

在组合框书籍编号1的InteractiveChange事件中添加代码如下:

select 书籍名称 from 书籍信息表;

where (书籍编号=thisform.书籍编号1.value) into array result

thisform.书籍名称1.value = result(1)

*根据选择的书籍编号,把书籍名称回显到文本框中

在命令按钮Command1的Click事件中添加代码如下:

insert into 借阅信息表 (借阅编号,读者编号,读者姓名,书籍编号,书籍名称,出借日期,还书日期,备注信息);

values(thisform.借阅编号1.value,thisform.读者编号1.value,thisform.读者姓名1.value,thisform.书籍编号1.value,thisform.书籍名称1.value,;ctod(thisform.出借日期1.value),ctod(thisform.还书日期1.value),thisform.备注信息1.value)

*将借书信息保存到借阅信息表中

thisform.release

*释放当前表单

在命令按钮Command2的Click事件中添加代码如下:

thisform.release

保存表单,并在系统菜单中添加调用该表单的过程,代码如下;

do form d:\毕业设计\添加借阅信息.scx

表单运行结果如图6-4所示

图6-4 添加借阅信息表运行结果

2.2浏览/修改借书信息模块的设计

该表单主要完成浏览所有借阅信息,同时也允许管理员修改借阅信息的功能,所以要利用一个表格控件来实现,并将其ReadOnly属性设为“.T.-真”。

新建空表单,命名为“浏览借书信息”,并为数据环境添加借阅信息表,在表单中加入相应控件并更改其属性。

表6-4

“浏览借书信息表”控件的主要属性

控件名

控件类型

属性名称

属性值

Grid1

表格

ColumCount

6

Grid1

表格

ReadOnly

.F.-假

Grid1

表格

Record Source

借阅信息表

Grid1.Column1

表格列

Record Source

借阅信息表.读者编号

Grid1.Column1.Header1

列标题

Caption

读者编号

Grid1.Column2

表格列

Record Source

借阅信息表.读者姓名

Grid1.Column1.Header2

列标题

Caption

读者姓名

Grid1.Column3

表格列

Record Source

借阅信息表.书籍编号

Grid1.Column1.Header3

列标题

Caption

书籍编号

Grid1.Column4

表格列

Record Source

借阅信息表.书籍名称

Grid1.Column1.Header4

列标题

Caption

书籍名称

Grid1.Column5

表格列

Record Source

借阅信息表.出借日期

Grid1.Column1.Header5

列标题

Caption

出借日期

Grid1.Column6

表格列

Record Source

借阅信息表.还书日期

Grid1.Column1.Header6

列标题

Caption

还书日期

Command1

命令按钮

Caption

刷新

保存修改后的表单就完成了对表单的设计工作。

下面为该表单Load事件添加代码:

pack

*Visual FoxPro 6.0在删除数据库中的记录时往往是先做上已删除的标签。

*如果需要彻底删除记录,则还需要执行一条pack命令。

*重新运行借阅信息表,达到刷新的效果。

保存表单,并在系统菜单中添加调用该表单的过程,代码如下;

do form d:\毕业设计\浏览借书信息表.scx

表单运行结果如图6-5所示

图6-5 浏览借阅信息表运行结果

2.3添加还书信息模块的设计

主要功能为添加还书信息,由于借阅编号既是借阅信息的主键,因此通过选择借阅编号就可以得到其他的借阅信息。

新建空表单,命名为“添加还书信息”,为其添加数据环境借阅信息表后保存。在表单中添加表6-5所示的控件。

表6-5

“添加还书信息表”控件的主要属性

控件名

控件类型

属性名称

属性值

Label1

标签

Caption

选择借阅编号

Label2

标签

Caption

读者编号

Label3

标签

Caption

书籍名称

Label5

标签

Caption

出借日期

Label6

标签

Caption

还书日期

Label7

标签

Caption

备注信息

Label8

标签

Caption

Label8

标签

Autosize

.T.-真

Label8

标签

Name

读者编号

Label9

标签

Caption

Label9

标签

Autosize

.T.-真

Label9

标签

Name

书籍名称

Label10

标签

Caption

Label10

标签

Autosize

.T.-真

Label10

标签

Name

书籍编号

Label12

标签

Caption

Label12

标签

Autosize

.T.-真

Label12

标签

Name

出借日期

Label13

标签

Caption

Label13

标签

Autosize

.T.-真

Label13

标签

Name

还书日期

Label14

标签

Caption

Label14

标签

Autosize

.T.-真

Label14

标签

Name

备注信息

Combo1

组合框

Command1

命令按钮

Caption

确定

Command2

命令按钮

Caption

取消

下面为表单填写事件代码:

在Combo1的Init事件中添加代码,以显示所有出借图书;

this.clear

*清空组合框里的Item

local aCountrise,country

*定义临时变量

dimension aCountries[1]

*定义变量数组用来存放不同的借阅编号

select distinct 借阅编号 from 借阅信息表 into array aCountries

for each m.cCountry in aCountries

*将所选出的不同记录添加到组合框选项中

if !empty(m.cCountry)

this.additem(m.cCountry)

endif

endfor

在Combo1的InteractiveChange事件中添加代码,以显示图书相关信息;

select 读者编号,书籍名称,书籍编号,读者姓名,出借日期,还书日期,备注信息 from 借阅信息表 where (借阅编号=thisform.combo1.value) into array result

*为表单中的标签赋值

thisform.读者编号.caption=result(1)

thisform.书籍名称.caption=result(2)

thisform.书籍编号.caption=result(3)

thisform.出借日期.caption=dtoc(result(5))

thisform.还书日期.caption=dtoc(result(6))

thisform.备注信息.caption=result(7)

在Command1的Click事件中添加代码,完成还书功能:

delete from 借阅信息表 where 借阅编号=thisform.Combo1.value

pack

thisform.release

在Command2的Click事件中添加代码,完成取消功能:

thisform.release

保存表单,并在系统菜单中添加调用该表单的过程,代码如下;

do form d:\毕业设计\添加还书信息.scx

表单运行结果如图6-6所示。

图6-6 选择借阅编号后的界面

第七章 图书馆信息管理系统调试及运行

1.设置主文件

用主图标(以黑体的文件表示)标记的文件是客户在启动.app或者是.exe时被调用的文件。它可以是一个表单,菜单或是程序,在这里我们将程序作为主文件。

2构造主文件

主文件是一个程序,它将调用应用程序框架中的各个功能组件。然后由这些组件调用应用程序的其余部分。

如果要建立一个简单的主程序,可以按下列步骤进行:

(2)现设置应用环境界面;

(3)确定初始用户界面;

(4)建立事件循环;

(5)恢复环境,退出应用程序。

为了避免无限循环,必须在READ EVENTS 命令之前安排CLEAR EVENTS命令。可以在主菜单中添加一个“退出”项,该项发出CLEAR EVENTS命令。本系统的主程序为主程序.prg。

3.在.app和.exe文件中包含和排除文件

如果在发布的应用程序中不想再更改这些文件,可把它们放在项目中并设置为“包含”。那么这些文件变成只读的,不能修改。如果想修改这些文件,把它们放到项目中并设置为“排除”,然后作为独立文件随着应用程序一起发布。

在默认情况下,Visual FoxPro在嵌放的过程中排除了数据库、表格、称为.ff的c库文件和.app文件。建议用户除了一些特定的表格,最好不要包括这类文件。数据库和表格需要变化和添加,而如果编译后包含自.exe或者是.app文件中,由于这两个文件被创建后都是静态的,所以被包含的文件也是静态的和只读的。

把数据库和表格包含在这些文件中很明显会带来问题。

由于这些文件不能被包含在文件.app和.exe中,所以要在发布一个应用程序之前为这些文件做好准备。

若要排除可修改的文件,首先在项目管理器中,选择可修改的文件,然后从“项目”菜单中选择“排除”命令。在一个文件被排除后,则在文件的左方加入一个排除符号。

4.运行结果

图书馆管理信息管理系统各个模块运行结果如图7-1到图7-5所示。

图7-1 读者种类信息表界面

图7-2 读者信息表界面

图7-3 书籍信息表界面

图7-4 书籍类别信息表界面

体会与收获:

经过一个多月的设计和开发,图书馆管理系统基本开发完毕。其功能基本符合需求,能够完成书籍录入,借阅,查询、修改。但是由于毕业设计时间较短,所以该系统还有许多不尽如人意的地方,比如用户界面不够美观、不够完善等多方面问题。这些都有待进一步改善。

一个月的毕业设计,使我提高了实际操作能力,从以前的理论上升到实践,从感性认识上升到理性认识,真正做到学有所用,虽然在设计过程中我也遇到一些困难,但在老师的帮助和自己的努力下,我都一一克服了,但由于时间关系,我并不能做到尽善尽美,应该说这是一大遗憾吧。

致谢:

 

在本次毕业设计中,我从指导老师身上学到了很多东西。他深厚的理论水平都使我收益匪浅。他无论在理论上还是在实践中,都给与我很大的帮助,使我得到不少的提高这对于我以后的工作和学习都有一种巨大的帮助。同时也感谢全体老师对我的教育和培养。

参考文献:

[1]宋斌.Visual FoxPro 6.0中文版开发指南.人民邮电出版社.1999.

[2] 张龙祥著 数据库原理与设计 人民邮电出版社 2001.

[3]李雁翎著 Visual Foxpro 6.0 使用与开发技术 清华大学出版社2001.

[4]郑刚著Visual Foxpro 6.0实效编程百例 机械工业出版社2002.

管理信息系统论文3000字篇4

管理信息系统论文题目


请在以下题目中任选一题作答,写清题号和题目,论述类题目字数不少于2000字,满分100分。
一、论述管理信息系统的未来发展趋势以及我们的应对策略。
二、论述如何运用管理信息系统有效提高组织管理效率。
三、论述电子商务的作用、功能以及为我们带来的生活的便利。
四、论述信息技术的诈骗活动有哪些种类,如何有效防止信息技术的诈骗活动。
五、论述大数据时代有效获取有价值信息的技术与防止数据泄密的方法。
六、论述美英联军在伊拉克战争中的信息技术的应用。
七、论述丰田公司的信息化供应链战略。
要求:
1、        独立完成,雷同文章按零分记;

2、        论文要求用方格信件纸手写上交。
3、        在论文首页注明中心、姓名、学号。

推荐访问:管理信息系统 论文 管理信息系统论文3000字 管理信息系统论文3000字 管理信息系统论文3000字电子商务
上一篇:2022年感动中国年度人物颁奖盛典观后感及心得启示范本五篇
下一篇:“学史崇德”,要“崇”哪些“德”?

Copyright @ 2013 - 2018 优秀啊教育网 All Rights Reserved

优秀啊教育网 版权所有