《设备管理设计.docx》由会员分享,可在线阅读,更多相关《设备管理设计.docx(85页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、编号:时间:2021年x月x日书山有路勤为径,学海无涯苦作舟页码:第85页 共85页用C+语言解决固定资产管理系统问题学生姓名:戴芳蓉 指导老师:乐晓波摘 要 本文通过用Visual C+ 6.0固定资产管理系统,利用软件工作原理,采用面向对象的编辑方法,并开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面,实现了固定资产管理的自动化和信息化。本文还简单介绍了Visual C+ 6.0软件的界面和操作方法。简单介绍了表单的制作过程,程序的编写,添加,最后的编译过程。并且叙述了作者在软件开发过程中的心得体会。关键词 固定资产管理,数据库,Visual C+ 6.01 引 言本软件使
2、用Microsoft Visual C+ 6.0进行编写。数据库技术的产生与发展源于对于数据的组织和管理。数据库技术是数据管理的技术,它随着数据管理任务的需要而产生于20世纪60年代中期。这是一门综合性技术,涉及操作系统,数据结构,算法设计和程序设计等知识。数据库技术的基本思想是对数据实行集中,统一,独立的管理,用户可以最大限度的共享数据资源。数据库系统实际上是一个应用系统,它是在计算机硬,软件系统支持下,由用户,数据库管理系统,存储在存储设备上的数据和数据库应用程序构成的数据处理系统。数据库系统是由数据,数据库管理系统,应用程序,用户组成。数据库的特点:1.实现数据共享 2.实现数据独立3.
3、减少了数据冗余度 4.避免了数据不一致性5.加强了对数据的保护。数据库应用系统(DATABASE APPLICATION SYSTEMS DBAS)管理信息系统开放式信息服务系统一个数据库应用系统通常是由数据库和应用程序两部分组成,它们是在数据库管理系统支持下设计和开发出来的。1.1 课程设计目的在程序设计中,可以用两种方法解决问题:一是传统的结构化程序设计方法,二是更先进的面向对象程序设计方法2。在结构化程序设计中关键是如何将问题域中的行为(即操作)抽取出来,作为C+程序中的函数。由于多个函数均需要访问某些数据,这些数据常被设计为全局变量。而在面向对象程序设计中关键是如何将问题域中的实体(即
4、日常所见的概念)抽取出来,作为C+程序中的类,而属性与行为作为类的两类要素通常是必不可少的,甚至还应考虑类必须满足的约束。1.2 课程设计的内容提要 固定资产是每个企业不可缺少的重要部分,加强固定资产管理,可以优化企业资源配置,本系统适用与中小型企业及政府机关、学校等。主要维护固定资产的登记、清理、借出和还入、维修、折旧等信息,实现设备的日常管理功能,通过一系列查询功能,可方便获知每一件固定资产的状态及当前所处位置,保证了企业中的每一件物品发挥其最大效力。1.3 课程设计的读者知识要求掌握Access的基本操作,了解基本的SQL语言,如添加、查询、修改和删除记录语言;熟练DAO数据访问接口。了
5、解4种常用的折旧算法;平均年限法、工作量法、双倍余额递减法、年数总和法。1.4 课程设计的系统组成模块主要有“档案设置”模块,管理资产类别、部门、存放地点、增加方式、保管人员以及清除方式等基本信息;“资产管理模块”,包括添加、变更固定资产,清理固定资产,借出、还入固定资产,修理固定资产等;“查询”模块,包括借出查询、还入查询、清理查询、送修查询、修回查询以及更灵活的模糊查询。2 数据库的设计根据固定资产管理系统的功能要求,本系统安排了10个表进行数据的存取。其中“部门”、“管理人员”、“存放地点”、“清理方式”、“增加方式”、“资产类别”、用与档案设置;“资产消息”、“借出还入资产”、“维修资
6、产”和“清理资产”用与资产管理和查询。42.1 主表的结构设计 表2-1至2-6所示为“档案设置”模块所用的6个表(“部门”、“管理人员”、“存放地点”、“清理方式”、“增加方式”、“资产类别” )的表结构,它们的结构基本相同。“部门”表,用与、于保存企业的各部门名称,如表2-1所示。5表2-1 “部门”表的结构字段名称字段类型主要属性作用部门ID自动编号递增,无重复用于与其他表进行关联部门名称文本(长度:20)必填字段,无重复用于存储企业各部门的名称备注备注非必填字段,可重复,可空用于存储该部门的备注信息“管理人员”表,用于保存企业中固定资产保管人员名单,如表2-2所示。表2-2 “管理人员
7、”表的结构字段名称字段类型主要属性作用管理人员ID自动编号递增,无重复用于与其他表进行关联管理人员文本(长度:10)必填字段,无重复用于存储资产保管人员名单备注备注非必填字段,可重复,可空用于存储保管人员备注信息 “存放地点”表,用于保存企业中固定资产存放固定资产的地点名称,如表2-3所示。表2-3 “存放地点”表的结构字段名称字段类型主要属性作用存放地点ID自动编号递增,无重复用于与其他表进行关联存放地点文本(长度:20)必填字段,无重复用于存储存放地点人员名单备注备注非必填字段,可重复,可空用于存储存放地点备注信息“清理方式”表,用于保存企业中队固定资产的清除方式,如表2-4所示。表2-4
8、 “清理方式”表的结构字段名称字段类型主要属性作用清除地点ID自动编号递增,无重复用于与其他表进行关联清除地方文本(长度:20)必填字段,无重复用于存储清理方式名称备注备注非必填字段,可重复,可空用于存储清理方式备注信息“增加方式”表,用于保存企业中固定资产的增加方式,如表2-5所示。表2-5 “增加方式”表的结构字段名称字段类型主要属性作用增加地点ID自动编号递增,无重复用于与其他表进行关联增加地方文本(长度:20)必填字段,无重复用于存储增加方式名称备注备注非必填字段,可重复,可空用于存储增加方式备注信息“资产类别”表,用于保存企业中固定资产的类别消息,如表2-6所示。表2-6 “资产列表
9、”表的结构字段名称字段类型主要属性作用资产类别ID自动编号递增,无重复用于与其他表进行关联资产类别文本(长度:20)必填字段,无重复用于存储资产类别名称备注备注非必填字段,可重复,可空用于存储资产类别备注信息“资产信息”表,本系统的核心部分,用于保存固定资产的基本信息,如表2-7所示。表2-7 “资产信息”表的结构字段名称字段类型主要属性作用资产ID自动编号递增,无重复用于与其他表进行关联资产编号文本(长度:20)必填字段,无重复用于存储资产编号值 资产名称文本(长度:20)必填字段,可重复,不可空用于存储固定资产名称资产类别ID数字(长整型)必填字段用于与“资产类别”表关联型号文本(长度:2
10、0)非必填字段,可空用于存储资产型号名称生产厂家文本(长度:20)必填字段,不可空用于存储生产厂家名称出厂日期日期/时间必填字段,不可空用于存储生产出产日期国际编号文本(长度:50)非必填字段,可空用于存储资产国际编号购买日期日期/时间必填字段,不可空用于存储资产购买日期净残值率数字(单精度型)必填字段,3位小数用于存储资产净残值率使用年限数字(长整型)必填字段 用于存储资产使用年限原值货币必填字段,2位小数用于存储资产原值净值货币必填字段,2位小数用于存储资产净值折旧方式文本(长度:20)必填字段,不可空用于存储资产折旧方式使用情况文本(长度:20)必填字段,不可空用于存储资产使用情况使用部
11、门ID数字(长整型)必填字段用于与“部门”表关联存放地点ID数字(长整型)必填字段用于与“存放地点”表关联增加方式ID数字(长整型)必填字段用于与“增加方式”表关联保管人员ID数字(长整型)必填字段用于与“管理人员”表关联备注备注非必填字段,可重复,可空用于存储资产信息备注信息字段“资产类别ID”、“使用部门ID”、“存放地点ID”、“增加方式ID”、“保管人间ID”、分别用于与表“资产部门”、“部门”、“存放地点”、“增加方式”、“保管人员”相关联。当系统从该表调用数据时,需要根据这5个字段的索引数字分别到5个表中寻找相信的信息。字段“资产ID”用语其他表与本表的关联,其他表中知识储存资产I
12、D值,根据该字段可以找到资产的其他信息。“借出还入资产”表,用于存储借出还入资产的信息,如表2-8所示。表2-8 “借出还入资产”表的结构字段名称字段类型主要属性作用借出还入ID自动编号递增,无重复用于与其他表进行关联资产ID数字(长整型)必填字段用于与“资产信息”表关联借用人文本(长度:10)非必填字段,可空用于存储借用人名单出借人文本(长度:10)非必填字段,可空用于存储出借人名单批复人文本(长度:10)非必填字段,可空用于存储批复人名单借用部门ID数字(长整型)非必填字段用于与“部门”表关联借用日期日期/时间非必填字段,可空用与存储借用日期预计归还时间日期/时间非必填字段,可空用与存储预
13、计归还日期借用理由文本(长度:20)非必填字段,可空用与存储借用理由还入时间日期/时间非必填字段,可空用与存储还入日期接收人文本(长度:10)非必填字段,可空用与存储接收人名单是否归还是/否非必填字段,可空用与存储物品是否归还备注备注非必填字段,可重复,可空用与存储借出还入备注信息模块“资产管理”的“借出”与“还入”功能共同使用该表,所以字段的属性均为非必填字段。字段“资产ID”用于与“资产信息”表相关联,通过该字段可以得到该资产的其他信息。“借用部门ID”用于与“部门”表相关联,用于得到借出部门的名称。字段“是否归还”用于标识该资产当前所属状态。“清理资产”表,用语存储清理资产时的一些基本信
14、息,如表2-9所示。8表2-9“清理资产”表的结构字段名称字段类型主要属性作用清理ID自动编号递增,无重复用于与其他表进行关联资产ID数字(长整型)必填字段用于与“资产信息”表关联清理理由文本(长度:20)必填字段,不可空用于存储清理理由清理方式ID数字(长整型)必填字段用于与“清理方式”表关联清理日期日期/时间必填字段,不可空用于存储清理日期清理人文本(长度:10)必填字段,不可空用于存储清理人名单备注备注非必填字段,可重复,可空用于存储清理资产备注信息字段“资产ID”用于表“资产信息”相关联,通过该字段可以得到该资产的其他信息。“清理方法ID”用于表“清理方法”相关联,用于得到清理的名称。
15、“维修资产”表,用语存储维修资产时的一些基本信息,如表2-10所示。表2-10“维修资产”表的结构字段名称字段类型主要属性作用维修记录ID自动编号递增,无重复用于与其他表进行关联资产ID数字(长整型)必填字段用于与“资产信息”表关联维修人文本(长度:10)非必填字段,可空用于存储维修人名单送修人文本(长度:10)非必填字段,可空用于存储送修人名单送修原因文本(长度:50)非必填字段,可空用于存储送修原因维修地点文本(长度:20)非必填字段,可空用于存储维修地点名称送修日期日期/时间非必填字段,可空用于存储送修日期故障原因文本(长度:50)非必填字段,可空用于存储故障原因维修日期日期/时间非必填
16、字段,可空用于存储维修日期维修状况文本(长度:50)非必填字段,可空用于存储维修后资产的状况配件名称文本(长度:20)非必填字段,可空用于存储所用的配件名称金额货币非必填字段,可空用于存储维修所用的费用数是否修完是/否非必填字段,可空用于存储资产是否修完备注备注非必填字段,可重复,可空用于存储修理备注信息 “资产管理”模块的“送修”与“修回”共同使用该表,所以字段均为非必填字段。字段“资产ID”用于与表“资产信息”相关联,通过该字段可以得到该资产的其他信息。字段“是否修完”用于标识资产当前所属状况。2. 2 主表间的关系设计数据库中各表不是互相独立的,他们之间通过字段进行关联。7 “资产信息”
17、表用于存储所有固定资产的基本信息,表中字段“资产类别ID”、“使用部门ID”、“存放地点ID”、“增加方式ID”、“保存人员ID”分别与表“资产类别”、“部门”、“存放地点”、“增加方式”、“保管人员”相关联。 “借出还入资产”、表的字段“资产ID”、“借用部门ID”分别与表“资产信息”、“部门”相关联。通过“资产ID”获得资产的详细信息,通过“借用部门ID”可以得到借用部门的名称。 “清理资产”表的字段“资产ID”、“清理方式ID”分别与表“资产信息”、“清理方式”相关联。通过“资产ID”获得资产的详细情况,通过“清理方式ID”可以得到资产的具体清除方式。 本系统主要有3个大的功能模块:档案
18、设置、资产管理、查询。其详细的模块组织结构如图1-1所示。3 系统功能的设计送 修资产管理固定资产管理系统查 询档案设置其他查询折旧查询修回查询送修查询清理查询还入查询借出查询归 还借 出清 理变 更增 加清除方式保管人员增加方式存放地点部 门资产类别修 回图1-1 模块组织结构3.1 档案设置本模块主要对企业的基本信息进行管理,包括资产类别、部门 、存放地点、增加方式、保管人员及清理方式。如图1-2、图1-3所示分别为“资产类别”以及“部门”数据窗口,“存放地点”、“增加方式”、“保管人员”和“清理方式”的数据窗口与两者基本相同。下面以“资产类别”窗口为体系介绍1。图1-2资产类别窗口图1-
19、3部门窗口 “资产类别”窗口中维护“资产类别”的名称和“备注”字段和内容,“资产类别ID”字段是系统自动编号,无需用户维护。 “资产类别”的名称不能重复,在系统中是唯一标识的。 当列表框控件中有记录被选中是,“添加”、“修理”、“删除”、“修改”变为可编辑状态。 对于“添加”、“修改”、“删除”3种操作分别会出现提示对话框,提示是否继续。 “保存”按钮只对“添加”、“修改”操作有用,数据填写完单击“保存”按钮即可将数据村入数据库。 “取消”按钮用于当取消当前操作,回到上一个状态。3.2 资产管理 本模块主要对固定资产的基本信息进行管理,包括添加、变更固定资产,清楚固定资产,借出、还入固定资产,
20、修理固定资产。 添加资产用于将企业新购入的固定资产的基本信息录入到数据库中,界面如图1-4所示。图1-4 添加固定资产在图1-4所示界面中除了“国际编号”和“备注”字段外,都是必要填的。“资产编号”是企业内部的惟一编号,不重复,如果出现重复,系统会自动提示要求重新填写。当用户所有的项都是正确填写后,单击“添加”按钮,用户所填的信息会存入数据库,并刷新列表框控件,使控件中的记录与数据一致。由于一件物品可能同时购入多个,而各个物品的信息除了“资产编号”外都是相同的,所以在单击“添加”按钮将记录添加进数据库后其界面中只有“资产编号”内的信息消失,而其他信息仍然存在以备用户继续添加。如果用户想添加不同
21、的资产,可以单击“刷新”按牛,该按钮的功能是将对话框变为图1-4所示的初始状态。 变更资产 用于修改固定资产的基本信息。2包括两部分内容:修改和删除。其界面如图1-5所示。图1-5 变更固定资产默认情况下所有的文本框、组合框及“修改”和“删除”按钮是不可能的。当用户用鼠标左键单击列表框控件中的一项记录,即一条记录被选中后,此时所有的控件变为可用状态,如图1-6所示 图1-6 选中固定资产当单击“删除”按钮时,出现提示对话框,询问是否删除当前记录,如果单击“确定”按钮,该记录将会被从数据库中删除,同时列表框控件将进行更新。为了方便用户,列表框控件中的一条记录被删除后,它的下一条记录将自动被标记为
22、选中状态。在键盘上的Shift键或Ctrl键的辅导下,可同时选择多条记录进行删除操作,并且在删除每条记录前都会出现提示对话框进行询问。 清理固定资产用于对无用的固定资产进行清理。清理方式有多种,如出售、盘亏、报废、清理残值等。用户可以根据实际情况对清理方法进行规定。使用界面如图1-7所示。图1-7 清理固定资产当列表框控件中的一项被选中之后,“清理”按钮,“备注”、“清理日期”、“清理方式”、“清理原因”、“清理人”控件变为可用,如图1-8。所有悬想全部填好后,单击“清理”按钮,出现提示对话框,提示用户是否继续清理工作,如果选择确定,将清除该资产,如果选“取消”将回到图1-7所示状态。清理固定
23、资产也可以对多个记录进行一次性清理。图1-8 清理固定资产 借出固定资产用于借出固定资产时记录信息,界面如图1-9。图1-9 借出固定资产列表框控件中列出了所有可以借用的物品,如果想借用某物品,只需要在列表中选中该物品,并填写下面的各项内容,然后单击“借用”按钮即可。界面如图1-10所示。图1-10选中固定资产因为一件物品被借出后,其他人不可以借用该物品,所以当一件物品借用成功后会自动从表框控件中消失。借出也可以实现多件物品同时借出。借出成功后,被借出项自动消失,其下一个可借出物品自动变为选中状态。 归还固定资产用于借出的资产使用完毕后,归还该固定资产时登记相关信息,界面如1-11所示。图1-
24、11归还固定资产初始状态下,列表框控件中列出了所有已经借出的物品,用户可以选中一个或者多个进行归还工作。当列表框控件中的一个或多个控件被选中后“还入时间”、“接收人”、“备注”控件变成可编辑状态。当一件或多件物品还入成功后,该物品会从列表控件中消失,表明该物品已经归还成功,同时已经归还的下一件物品被标识为选中状态。 送修固定资产用于将有问题的产品送去维修时的登记,界面如图7-12所示。图1-12送修固定资产 初始状态下列表框中列出除送修和借出以外的所有资产,可以选择有问题的一件或若干件物品,单击“送修”按钮即可进行送修登记,送修成功后该物品自动从列表框控件中消失。 修回固定资产用于将修好的固定
25、资产入库,入库前需要填写完整的维修信息,界面如图1-13所示。图1-13修回固定资产列表框控件中列出了所有送修的资产,用户可以选择其中一项或多项进行修回操作。完成修回操作的资产从列表框控件中自动消失。3.3 查询通过查询功能用户可以方便地了解各类固定资产的使用情况,如图1-14到1-20所示。分别为“借出查询”、“还入查询”、“清理查询”、“送修查询”、“修回查询”和“其他查询”界面。图1-14借出查询图1-15还入查询图1-16清理查询图1-17送修查询图1-18修回查询图1-19折旧查询图1-20其他查询初始情况下,列表框控件中列出所有符合条件的资产信息。用户可以根据自己的需要选择查询条件
26、,初始时所有的查询条件是不可用的,可以通过单击查询条件左侧的复选框使条件变为可用。各个条件间可以组合使用,所有想选择的项选择好后,单击“查询”按钮,列表框中即可列出想要查看的资产信息。如果用户选择了某一条件,但没有对该项中的内容进行填写,查询时该将忽略该项。4 档案设置模块本模块主要对企业的基本信息,包括资产类别、部门、存放地点、增加方式、保管人员及清楚方式进行管理。主要完成基本信息的增、删、改功能。4.1 创建模块窗体档案设置窗体界面如图1-21所示。3窗体及主要控件的属性设置,如表4-1所示。表4-1挡案设置窗体资源类型资源ID标题属性编辑键IDC_DOSS_NAMEDisabled编辑键
27、IDC_DOSS_REMARKDisabled按钮IDC_DOSS_ADD添加按钮IDC_DOSS_MODIFY修改Disabled按钮IDC_DOSS_DEL删除Disabled按钮IDC_DOSS_SAVE保存Disabled按钮IDC_DOSS_ABOLISH取消Disabled按钮IDCANCEL退出列表框IDC_DOSS_LISTReport,Single,Select,Show selection,Border标签IDC_DOSS_LABELStatic标签IDC_STATIC备注图1-21档案设置窗体4.2 编写功能代码 建立档案设置的CDossierDlg对话框类使用VC+的“
28、Insert-Resource”菜单命令,在“New Class”对话框中设置“Class Type”为“MFC Class”,NAME为“CDossierDlg”, “Base class”为“CDialog”, “Dialog ID”为“IDD_DOSSIER”。完成后单击“OK”按钮完成CDossierDlg类的创建。 创建与对话框相关的变量 创建与控件相关的控件变量,如表4-2所示。表4-2 CDossierDlg类控件变量名称类型关联的控件ID意义m_CtrlEditNameCEidtIDC_DOSS_NAME为了将光标定位到该编辑框m_strNameCStringIDC_DOSS_
29、NAME名称变量m_strRemarkCStringIDC_DOSS_REMARK备注变量m_CtrlListCListCtrlIDC_DOSS_LIST列表框控件变量m_strLableCStringIDC_DOSS_LABLE名称编辑框前的提示信息声明类的其他变量为了实现应用程序DAO数据库操作,需要在操作DAO的类声明DAO数据库对象,这些主要是CDaoDatabase对象和CDaoRecordset对象。代码声明如代码附录1-1。 以资产类别为例,变量m_strID表示数据库的“资产类别ID”字段,变量m_strField表示“资产类别”字段。变量m_strFlag用于标识当前的操作是
30、“添加”还是“修改”。变量nSeleceIndex为列表框控件所选中条目的牵引值,初始值设为-1。 创建菜单为“档案设置”模块创建菜单项。如表4-3所示。表4-3 档案设置菜单资源ID标题ID_DEPARTMENT部门(&P)ID_ASSETTYPE资产类别(&T)ID_DEPOSITARY存放地点(&D)ID_ADDMODE增加方式(&M)ID_KEEPER保管人员(&K)ID_CLEARTYPE清楚方式(&C) 主要代码 在主视窗类中为各菜单单项添加处理函数主视窗的处理函数主要为对话框类的变量m_strTable、m_strField和m_strLable传递初始化参数。这3个变量的意义分
31、别为应读取的数据表的名称、数据表中第二个字段的名称、名称编辑框前的提示标签值。表4-3所列6个菜单项对应的处理函数基本相同,下面以资产类别为例进行介绍,其余函数的代码如代码附录1-2。 重载对话框的OnIntitDialog函数在OnIntitDialog函数中主要完成数据库的连接、列表控件的数据刷新和编辑框控件清空操作,其后两项功能由一个字定义的函数Refresh完成,该函数代码如代码附录1-3。 重载DestroyWindow函数函数DestroyWindow在窗口关闭时自动被调用,在该函数中主要完成断开与数据库连接的操作。代码如代码附录1-4。 编写Refresh函数该函数用于根据数据库
32、刷新列表框控件,晴空编辑框控件。从数据库中读出的数据为CeloVaraint类型,需要将CeloVaraint转换成普通类型,本系统自定义了一个类CCrack用来完成类型的转换功能。起完整程序代码如代码附录1-5。 实现列表框控件的LVN_ITEMCHANGED消息函数当列表框发生变化(如列表框的条目被选中)时该函数自动被调用。作用当列表框中的一个条目被选中时,将该条目对应的信息显示到相应的编辑框控件中,使用“添加”、“修改”、“删除”按钮变为可用,“保存”、“取消”按钮不可用;当没有条目被选中时,只“添加”按钮可用,同时将编辑框控件内容清空并使其不可用。代码如代码附录1-6。 为添加按钮提供
33、实现函数 “添加”按钮只是完成添加的准备工作,当所有内容添加完毕后,单击“保存”按钮才能实现实际的保存工作。代码如代码附录1-7。 为修改按钮提供实现函数“修改”按钮只是完成修改的准备工作,当所有内容修改完毕后,单击“保存”按钮才能实现实际的保存工作。代码如代码附录1-8。 为保存按钮提供实现函数“保存:”按钮用于将新添加的条目或者修改后的条目存储到数据库中,并将列表框控件中的内容刷新,同时使新加的条目或修回后的条目在列表框控件中可见并处于选中状态。类CPromptDlg是本系统中专门用于提示的对话框,其程序代码如代码附录中的1-9。 为删除按钮提供实现函数在删除某一个条目前,应进行判断该条目
34、是否与其他表相关联,如果与其他表相关联,其他表存储的数据调用时会出现问题。如果该条目与其他信息有关联但用户还是将其删除了,在与该信息相联系的索引条目都将变为“!删除!”在该条目被删除后,该条目下一条将处于选中状态。其代码为代码附录中的1-10。为取消按钮提供实现函数单击“取消”按钮可以回到上一个状态,主要针对“添加”和“修改”两种功能设立。如果当前列表框中没有条目被选中,单击“取消”按钮后,“添加”、“退出”按钮为可用,其余按钮和两个编辑框都为不可用;如果列表框中有条目被选中,单击“取消”按钮后“添加”、“修改”、“删除”、“退出”按钮可用,其余按钮和两个编辑框都不可用。其代码如代码附录的1-
35、11。为名称编辑控件的EN_CHANGE消息提供现实函数该函数主要用于“添加”、“修改”功能,保证只有名称编辑框中不为空时“保存”按钮处于可用状态,无内容时处于不可用状态。代码如代码附录1-12。5 资产管理模块本模块主要完成固定资产的基本处理,包括资产的“添加”、“变更”、“清理”、“借出”、“还入”、“送修”和“修回”。105.1 创建模块窗体 添加、变更窗体添加、变更资产信息的装体设计如图1-22所示。窗体上方的列表框用于显示已有资产的信息,窗体下放的一系列文本框、列表框以及日期控件,用于添加新的资产信息或者变更已有的资产信息。图1-21 添加、变更窗体 清理资产窗体清理资产窗体的截面如
36、图1-22所示。窗体上方的列表框用于显示可清理资产的信息,窗体下放的一系列文本框、列表框以及日期控件,用于详细显示当前资产信息,并进行清理操作,如记录清理时间、执行清理人员等。图1-22 清理资产窗体 借出、还入、送修和修回资产资产借出、还入送修和修回的窗体截面与前面已经介绍的2个窗体都相似。5.2 编功能代码 建立各对话框类这里建立的类的方法和上节所说到的基本相同。 建立与对话框相关的变量添加、变更资产对话框 创建与控件相关的控件变量,如表5-1所示。表 5-1 添加、变更资产对话框控件变量名称类型关联的控件ID意义m_CtrlEditName CEidtIDC_AM_NAME为了将光标定位
37、到该编辑框m_strNameCStringIDC_AM_NAME资产名称m_CtrlEditAssetIDCEidtIDC_AM_AssetID为了将光标定位到该编辑框m_strAssetIDCStringIDC_AM_AssetID资产编号m_CtrlEditTypeCEidtIDC_AM_TYPE为了将光标定位到该编辑框m_strTypeCStringIDC_AM_TYPE资产型号m_strInterIDCStringIDC_AM_INTERID国际编号m_dLRatioDoubleIDC_AM_LRATIO残净值率m_nYearNumIntIDC_AM_YEARNUM预计使用年限m_dO
38、rigValueDoubleIDC_AM_ORIHVALUE原值m_dLeftValueDoubleIDC_AM_LEFTVALUE净值m_strRemarkCStringIDC_AM_REMARK备注m_CtrlCBDeprecaiationCComboBoxIDC_AM_DEPRECIATION折旧方式m_CtrlCBDepartmentCComboBoxIDC_AM_DEPARTMENT使用部门m_CtrlCBDepositaryCComboBoxIDC_AM_DEPOSITARY存放地点m_CtrlCBSortCComboBoxIDC_AM_SORT资产类别m_CtrlCBAddTyp
39、eCComboBoxIDC_AM_ADDTYPE增加方式m_CtrlCBKeeperCComboBoxIDC_AM_KEEPER保管人员m_CtrlCBFactoryCComboBoxIDC_AM_FACTORY生产厂家控件变量m_strFactoryCStringIDC_AM_FACTORY生产厂家名称m_CtrlCBUseInfoCComboBoxIDC_AM_FACTORY使用情况控件变量m_strUseInfoCStringIDC_AM_FACTORY使用情况名称m_LFDateCTimeIDC_AM_LFDATE出厂日期m_InDateCTimeIDC_AM_LFDATE购买日期m_
40、CtrlListCListCtrlIDC_AM_LIST列表控件变量 声明类的其他变量为了实现应用的DAO数据库操作,需要在操作DAO的类里声明DAO数据库对象,这里主要是CDaoDatabase对象和CDaoRecordest对象。代码声明如代码附录1-13。添加与变量使用用一个对话框,变量ADDModify用于标识此刻为添加还是变更;m_ID用于保存资产ID值,该值为资产信息操作的索引;后10个变量用于保存“管理人员”、“部门”、“存放地点”、“增加方式”、“资产类别”的索引值与字符串值的对应关系,以保管人员为例,其作用就是通过保管人员ID值可以知道保管人员的真实姓名。 清理资产对话框 创
41、建与控件相关的控件,如表5-2所示。表 5-2 清理资产对话框控件变量名称类型关联的控件ID意义m_strNameCStringIDC_CLE_NAME资产名称m_strAssetIDCStringIDC_CLE_AssetID资产编号m_strTypeCStringIDC_CLE_TYPE资产型号m_strInterIDCStringIDC_CLE_INTERID国际编号m_CtrlEditReasonCEditIDC_CLE_REASON清理原因控件变量m_strReasonCStringIDC_CLE_REASON清理原因m_dLRatioDoubleIDC_CLE_LRATIO残净值率
42、m_nYearNumIntIDC_CLE_YEARNUM预计使用年限m_dOrigValueDoubleIDC_CLE_ORIHVALUE原值m_dLeftValueDoubleIDC_CLE_LEFTVALUE净值m_strRemarkCStringIDC_CLE_REMARK备注m_CtrlCBDeprecaiationCComboBoxIDC_CLE_DEPRECIATION折旧方式m_CtrlCBDepartmentCComboBoxIDC_CLE_DEPARTMENT使用部门m_CtrlCBDepositaryCComboBoxIDC_CLE_DEPOSITARY存放地点m_Ctrl
43、CBSortCComboBoxIDC_CLE_SORT资产类别m_CtrlCBAddTypeCComboBoxIDC_CLE_ADDTYPE增加方式m_CtrlCBKeeperCComboBoxIDC_CLE_KEEPER保管人员m_CtrlCBClearTypeCComboBoxIDC_CLE_CLEARTYPE清理方式m_CtrlCBFactoryCComboBoxIDC_CLE_FACTORY生产厂家控件变量m_strFactoryCStringIDC_CLE_FACTORY生产厂家名称m_CtrlCBUseInfoCComboBoxIDC_CLE_FACTORY使用情况控件变量m_strUseInfoCStringIDC_CLE_FACTORY使用情况名称m_CtrlCBPersonCComboBoxIDC_CLE_PERSON清理人控件变量m_strPersonCStringIDC_CLE_PERSON清理人m_LFDateCTimeIDC_CLE_LFDATE出厂日期m_InDateCTimeIDC_CLE_LFD
限制150内