毕业设计(论文)-工资管理系统.doc_第1页
毕业设计(论文)-工资管理系统.doc_第2页
毕业设计(论文)-工资管理系统.doc_第3页
毕业设计(论文)-工资管理系统.doc_第4页
毕业设计(论文)-工资管理系统.doc_第5页
已阅读5页,还剩21页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

-1- 工资管理系统 学 院 专 业 班 级 学 号 姓 名 指导教师 教师职称 年月日 吉林省明日科技有限公司监制 2 目 录 工资管理系统 目录 摘要 0 引言 1 系统需求分析 2 总体设计 1 项目规划 2 系统功能结构 3 设计目标 3 系统设计 1 开发及运行环境 2 数据库设计 4 主要功能模块设计 1 建立工程框架 2 封装数据库 3 主窗口设计 4 登录模块设计 5 员工录入模块设计 6 总体查询模块设计 7 员工工资添加模块设计 8 用户管理模块设计 附录 A 参考文献 附录 B 数据表 摘要 【摘要】 随着我国国民经济建设的蓬勃发展和具有中国特色的社会主义市场经济体制的迅速完善, 各个行业都在积极使用现代化的管理工具,不断改善企业的服务质量,提高工作效率。无论是 行政职能,还是生产运作的管理要求的不断提高,在很大程度上使企业不得不改变传统的经营 管理方式以适应快速发展的社会主义市场经济,改变企业管理方式、方法已经成为企业发展的 先决条件。建设一个科学高效的信息管理系统是解决这一问题的必由之路。 对企业内部的财务运用现代化技术进行管理,是提高工作效率的有效手段。工资管理作为 企业内部财务管理的一个重要方面,也逐步被企业管理者所重视,由于企业的规模的不断扩, 大企业职工人数的不断增多,使工资发放成为企业管理中的一个重课题;再加上每一位职工的 具体实际情况相同,规章章制度的不断完善,增大了个人工资发放难度;每个人每月的工资都 要通过工资制度的审核,这大大增加了管理人员的工作量,通过计算机管理系统对员工工资进 行全面的统计与管理,全面解决了工资管理过程中所遇到的各种问题,并且克服了传统管理方 式中的易出错等问题。工资管理系统成为企业现代化管理中的首选管理工具。 【关键词】工资管理系统 吉林省明日科技有限公司监制 0 引言 传统的工资管理方法,都是通过人工统计和计算的管理方式进行的。这样的管理方法不但 费时费力,也容易产生计算上的错误和疏漏;计算机技术的全面普及,打破了财务管理的传统 管理方法,提高了管理效率的同时,克服了传统管理方法中易产生的问题,使管理员能够有序 的、全面的对每一位职工进行管理,严格按照工资条款及发放制度计算并发展员工工资。 企业工资管理系统可以完成日常工资的管理,如查询、修改、增加、删除以及存储等操作, 迅速准确地完成各种工资数据的的统计和汇总工作,快速打印出工资报表等,大大提高了企业 的管理效率。 1 系统需求分析 根据市场的需求,要求系统具有以下功能: 对单位人员的变动进行处理。 对职工的工资进行计算、修改。 查询统计功能。 报表打印功能。 2 总体设计 2.1 项目规划 工资管理系统是由基本信息管理、工资查询、工资管理、系统管理和帮助等几个功能模块 组成,规划系统功能模块如下: 基本信息管理模块 基本信息管理模块主要包括员工录入、员工删除 2 部分。 工资查询模块 工资查询模块主要包括基本工资查询、浮动工资查询、加班/休假查询、总体查询 4 个部分。 工资管理模块 工资管理模块主要包括工资发放管理、基本工资管理、浮动工资管理 3 个部分。 系统管理模块 系统管理模块主要包括用户管理、修改密码、退出系统 3 个部分。 帮助模块 帮助模块主要包括关于 1 个部分。 2.2 系统功能结构 工资系统的功能结构如图 1 所示。 吉林省明日科技有限公司监制 2 基本信息管理工资查询工资管理系统管理帮助 员 工 录 入 员 工 删 除 基 本 工 资 查 询 浮 动 工 资 查 询 加 班 休 假 查 询 总 体 查 询 工 资 发 放 管 理 基 本 工 资 管 理 浮 动 工 资 管 理 用 户 管 理 修 改 密 码 退 出 系 统 关 于 工资管理系统 图 1 系统功能图 2.3 设计目标 本系统是根据中小企业的实际需求而开发的,完全能够实现企业对客户的自动化管理,通 过本系统可以达到以下目标: 系统运行稳定,安全可靠。 界面设计美观,人机交互界面友好。 信息查询灵活、方便、快捷、准确,数据存储安全可靠。 满足键盘和鼠标的双重操作,完全支持回车键。 采用多种方式查询数据。 操作员可以随时修改自己的口令。 对用户输入的数据,系统进行严格的数据检验,尽可能排除人为的错误。 数据保密性强,为每个用户设置相应的权限级别。 3 系统设计 3.1 开发及运行环境 1硬件要求 CPU:300MHz 以上的处理器。 内存:128MB,推荐 256MB。 硬盘:150MB 以上剩余空间。 显示像素:最低 800*600,最佳效果 1024*768。 2软件要求 操作系统:Windows2000/NT/XP/CE。 数据库:SQL Server2000。 吉林省明日科技有限公司监制 3 3.2 数据库设计 1数据库概要说明 数据库 GZFFXT 中包括员工基础信息表、员工基本工资表、员工浮动工资表、员工加班/休 假表、工资发放明细表、用户表 6 个数据表。 图 2 所示的即为本系统中数据库中的数据表结构图,该数据表结构图包含系统所有数据表。 可以清晰地反应数据库信息。 图 2 数据库概要说明 2主要数据表的结构 数据库中的数据表请参见附录 B。 4 主要功能模块设计 4.1 建立工程框架 在 Visual C+中建立文档管理系统的基本框架,步骤如下: (1)单击菜单“File-New”命令,打开“New”对话框,单击“Projects”选项卡,选择 “MFC AppWizard(exe)” ,输入工程名,并设置路径,如图 3 所示。 图 3 “New”对话框 (2)单击“OK”按钮, “MFC AppWizard-Step1”对话框已经打开,如图 4 所示,选项 吉林省明日科技有限公司监制 4 “Dialog base” ,接着单击“Next”按钮。 图 4 “MFC AppWizard-Step 1”对话框 (3)在弹出的“MFC AppWizard-Step 2 of 4”对话框中,输入对话框标题,如图 5 所示。 图 5 “MFC AppWizard-Step 2 of 4”对话框 (4)在接下来的对话框中保持默认的选项。设置好的属性如图 6 所示,单击“OK”按钮后, 就完成了新建工程。 吉林省明日科技有限公司监制 5 图 6 设计好的工程属性 4 4.2 主窗口设计 1菜单资源设计 主窗口菜单设置的主要步骤如下: (1)单击“ResourceView”选项卡,右键单击“GZGLXT Resources”选项,选择 “Insert”菜单项,打开“Insert Resource”窗口,如图 7 所示。 吉林省明日科技有限公司监制 6 图 7 “Insert Resource”窗口 (2)选择“Menu”文件夹,单击“New”按钮,在 GZGLXT Resources 目录下新增一个 Menu 目录项,菜单 ID 为 IDR_MENU1。双击此菜单,对此菜单项的属性进行设计。如图 8 所 示。 图 8 设计菜单属性图 2客户区设计 (1)打开对话框 IDD_GZGLXT_DIALOG 属性窗口,在对话框中添加 1 个 Picture 控件,用 来存放图片。在 Menu 组合框中选择 IDR_MENU1。如图 9 所示。 图 9 系统主界面 (2)预先在下边留出状态栏,声明 CTime、CstatusBarCtrl 类对象实体代码如下。 CTime t; CStatusBarCtrl m_StatusBar; 引用的外部变量 extern CCzyxxb ffxxb; (3)在 OnInitDialog 成员函数中添加状态栏。 / TODO: Add extra initialization here t=CTime:GetCurrentTime(); m_StatusBar.EnableAutomation(); m_StatusBar.Create(WS_CHILD|WS_VISIBLE,CRect(0,0,0,0),this,0);/ID_STATUSBAR); int width=200,370,500; 吉林省明日科技有限公司监制 7 m_StatusBar.SetParts(4, m_StatusBar.SetText(吉林省明日科技有限公司,0,0); CString StatusText; StatusText.Format(当前用户:%s,ffxxb.GetCzyName(); m_StatusBar.SetText(StatusText,0,1); CString strdate; strdate.Format(当前时间:%s,t.Format(%y-%m-%d); m_StatusBar.SetText(strdate,0,2); return TRUE; / return TRUE unless you set the focus to a control (4)打开 ClassWizard 窗口,为菜单项 ID_EXIT 添加代码。程序调用 OnOK()函数关闭对 话框,退出系统。 void CGZGLXTDlg:OnExit() / TODO: Add your command handler code here OnOK(); 4.3 登录模块设计 1实现目标 登录模块功能是完成用户登录本系统的操作,用户登录对话框的设计如图 10 所示 图 10 登录对话框 2设计步骤 (1)向项目中添加一个新 Dialog 资源,资源 ID 为 IDD_LOGIN。在 IDD_LOGIN 对话框资 源中单击鼠标右键,执行弹出快捷菜单的“Properties”菜单命令,打开“Dialog Properties”对 话框。在“Dialog Properties”对话框中选择 General 选项卡,更改其“Caption”文本框内容为 “用户登录” 。 (2)从 Controls 面板上向 Dialog 资源中添加 2 个 Static、1 个 Picture、2 个 Edit,更改资源 的属性,并为资源设置相对应的变量,如表 1 所示。 表 1 资源设置 吉林省明日科技有限公司监制 8 IDC_EDIT1默认CStringm_name IDC_ EDIT2PassWord TRUECStringm_pwd IDOKCaption 登录 IDCANCELCaption 退出 IDC_STATICType Bitmap 3代码分析 (1)引用的外部变量。 extern CCzyxxb ffxxb; (2)响应“登录”按钮的代码。 void CLogin:OnOK() / TODO: Add extra validation here /将对话框中编辑框的数据读取到成员变量中 UpdateData(true); if(m_name=) MessageBox(请输入用户名); return; /如果读取数据和用户输入不同,则返回 if(ffxxb.HaveCzy(m_name,m_pwd)!=1) MessageBox(用户名或密码错误!); return; ffxxb.SetCzyName(m_name); jb=1; /判断当前用户级别 if(ffxxb.HaveCzyjb(m_name,m_pwd,jb)=1) ffxxb.SetCzyjb(jb); CDialog:OnOK(); 下面在主对话框中添加代码,使对话框在启动时首先打开登录对话框。在主窗口选择 OnInitDialog 函数,该函数将打开登录对话框,如果用户不是通过单击“登录”按钮关闭对话 框,则调用 OnOK 函数关闭主对话框,具体代码如下: BOOL CWordGLXTDlg:OnInitDialog() 吉林省明日科技有限公司监制 9 CDialog:OnInitDialog(); . / TODO: Add extra initialization here CLogin gin; if(gin.DoModal()!=IDOK) OnOK(); . return TRUE; / return TRUE unless you set the focus to a control 4.4 员工录入模块设计 1实现目标 添加员工信息,员工录入对话框的设计如图 11 所示 图 11 员工录入对话框 2设计步骤 (1)向项目中添加一个新 Dialog 资源,资源 ID 为 IDD_YGTJK。在 IDD_YGTJK 对话框资 源中单击鼠标右键,执行弹出快捷菜单的“Properties”菜单命令,打开“Dialog Properties”对 话框。在“Dialog Properties”对话框中选择 General 选项卡,更改其“Caption”文本框内容为 “员工录入” 。 (2)从 Controls 面板上向 Dialog 资源中添加 4 个 Static、2 个 Combo、2 个 Edit,更改资源 的属性,并为资源设置相对应的变量,如表 2 所示。 表 2 资源设置 Member Variables IDProperties TypeMember IDC_EDIT1 默认 CStringm_id IDC_ EDIT2 默认 CStringm_name IDC_COMBO1Type BitmapCComboBoxm_sex IDC_COMBO2Caption 退出CComboBoxM_whcd IDOKCaption 添加 IDCANCELCaption 退出 3代码分析 (1)打开 ClassWizard 窗口,添加在 OnInitDialog 成员函数,向 OnInitDialog 添加代码如下。 吉林省明日科技有限公司监制 10 BOOL CYgjctjdlg:OnInitDialog() CDialog:OnInitDialog(); / TODO: Add extra initialization here SetIcon(m_hIcon, TRUE); m_sex.AddString(男); m_sex.AddString(女); m_whcd.InsertString(0,专科); m_whcd.InsertString(1,本科); m_whcd.InsertString(2,研究生); return TRUE; / return TRUE unless you set the focus to a control / EXCEPTION: OCX Property Pages should return FALSE (2)当用户单击“添加“按钮时,实现添加员工功能,其响应代码如下 void CYgjctjdlg:OnOK() / TODO: Add extra validation here CYgjcxxb xxb; UpdateData(true); if(m_id=) MessageBox(编号不能为空); return; if(m_name=) MessageBox(姓名不能为空); return; if(xxb.HaveId(m_id)=1) MessageBox(员工编号已存在); return; xxb.SetYGid(m_id); xxb.SetYGxm(m_name); CString sex,whcd; m_sex.GetWindowText(sex); if(sex=) 吉林省明日科技有限公司监制 11 MessageBox(性别不能为空); return; /从组合框中读取文本 m_sex.GetLBText(m_sex.GetCurSel(),strsex); xxb.SetSex(strsex); m_whcd.GetWindowText(whcd); if(whcd=) MessageBox(文化程度不能为空); return; m_whcd.GetLBText(m_whcd.GetCurSel(),strwhcd); xxb.SetWHcd(strwhcd); xxb.sql_insert(); /向浮动工资表添加编号、姓名 CYgfdgzxmb xmb; xmb.SetYGid(m_id); xmb.SetYGxm(m_name); xmb.sql_insert(); /向基本工资表添加编号、姓名 CYgjbgzb gzb; gzb.SetYGid(m_id); gzb.SetYGxm(m_name); gzb.sql_insert(); /向加班休假表添加编号、姓名 CYgjbsjb sjb; sjb.SetYGid(m_id); sjb.SetYGxm(m_name); sjb.sql_insert(); CDialog:OnOK(); 4.5 员工工资添加模块设计 1实现目标 添加员工实际发放的工资情况,员工工资添加对话框设计如图 12 所示。 吉林省明日科技有限公司监制 12 图 12 员工工资添加对话框 2设计步骤 (1)向项目中添加一个新 Dialog 资源,资源 ID 为 IDD_YGGONGZITJ。在 IDD_YGGONGZITJ 对话框资源中单击鼠标右键,执行弹出快捷菜单的 “Properties”菜单命令, 打开“Dialog Properties”对话框。在“Dialog Properties”对话框中选择 General 选项卡,更改其 “Caption”文本框内容为“员工工资添加” 。 (2)从 Controls 面板上向 Dialog 资源中添加 19 个 Static、17 个 Edit、2 个 Button 控件,更 改资源的属性,并为资源设置相对应的变量,如表 3 所示。 表 3 资源设置 Member Variables IDProperties TypeMember IDC_EDIT1默认CStringm_id IDC_EDIT2默认CStringm_name IDC_EDIT3默认intm_jbgz IDC_EDIT4默认intm_zwgz IDC_EDIT5默认intm_glgz IDC_EDIT6默认intm_zfbz IDC_EDIT7默认intm_shbz IDC_EDIT8默认intm_bxf IDC_EDIT9默认intm_jiabts IDC_EDIT10Read-only TRUECEditm_jiabgz IDC_EDIT11默认intm_sjts IDC_EDIT12Read-only TRUECEditm_sjgz IDC_EDIT13默认intm_ylbxj IDC_EDIT14默认intm_grsds 吉林省明日科技有限公司监制 13 IDC_EDIT15默认intm_sfgz IDC_EDIT16Read-only TRUECEditm_yfgz IDC_EDIT17Read-only TRUECEditm_syye IDOKCaption 添加 IDCANCELCaption 退出 IDC_BUTTONsyyeCaption 上月余额 IDC_BUTTONyfgzCaption 应发工资 3代码分析 (1)双击“IDC_EDIT9”控件,自动生成 OnChangeEdit9 函数,实现用户添加加班天数时, 加班工资自动计算并显示,具体代码如下: void CYggztjdlg:OnChangeEdit9() / TODO: If this is a RICHEDIT control, the control will not / send this notification unless you override the CDialog:OnInitDialog() / function and call CRichEditCtrl().SetEventMask() / with the ENM_CHANGE flag ORed into the mask. UpdateData(true); CString str; str.Format(%d,m_jiabts*40); m_jiabgz.SetWindowText(str); UpdateData(false); / TODO: Add your control notification handler code here (2)双击“上月余额”按钮,系统自动添加消息响应函数 OnBUTTONsyye,具体代码如下。 void CYggztjdlg:OnBUTTONsyye() / TODO: Add your control notification handler code here UpdateData(true); if(m_id=) MessageBox(请先填写员工编号); return; ADOConn m_AdoConn; m_AdoConn.OnInitADOConn(); t = CTime:GetCurrentTime(); int m,y; 吉林省明日科技有限公司监制 14 CString str; m=t.GetMonth()-1; y=t.GetYear(); if(m=0) m=12; y=y-1; CGzffmxb mxb; if(mxb.Havesyye(m_id,y,m)=1) CString sql; sql.Format(select * from gzffmxb where ygid=%s and year(sjian)=%i and month(sjian)=%i,m_id,y,m); m_AdoConn.GetRecordSet(_bstr_t)sql); str=(char*)(_bstr_t)m_AdoConn.m_pRecordset-GetCollect(Yu_E); m_syye.SetWindowText(str); else m_syye.SetWindowText(0); UpdateData(false); m_AdoConn.ExitConnect(); 在头文件中添加下列代码。 CTime t; (3)双击“应发工资”按钮,系统自动添加消息响应函数 OnBUTTONyfgz,具体代码如下: void CYggztjdlg:OnBUTTONyfgz() / TODO: Add your control notification handler code here UpdateData(true); CString syye; m_syye.GetWindowText(syye); if(syye=) MessageBox(请先添加上月余额); return; int yfgz; 吉林省明日科技有限公司监制 15 yfgz=atoi(syye)+m_jbgz+m_glgz+m_zwgz+m_shbz+m_zfbz-m_ylbxj; yfgz+=(-m_bxf+m_jiabts*40-m_sjts*40-m_grsds); CString str; str.Format(%d,yfgz); m_yfgz.SetWindowText(str); (4)为“添加”按钮添加代码,实现添加员工工资功能,代码如下: void CYggztjdlg:OnOK() / TODO: Add extra validation here UpdateData(true); CYgjcxxb xxb; CString yfgz; m_yfgz.GetWindowText(yfgz); if(m_id=) MessageBox(编号不能为空); return; if(xxb.HaveId(m_id)!=1) MessageBox(员工编号不存在); return; if(m_name=) MessageBox(姓名不能为空); return; if(xxb.Havename(m_id,m_name)!=1) MessageBox(员工不存在); return; if(yfgz=) MessageBox(应发工资不能为空); return; CGzffmxb mxb; mxb.SetYGid(m_id); 吉林省明日科技有限公司监制 16 mxb.SetYGxm(m_name); mxb.SetGLgz(m_glgz); mxb.SetJBgz(m_jbgz); mxb.SetYLbxj(m_ylbxj); mxb.SetZWgz(m_zwgz); mxb.SetBXf(m_bxf); mxb.SetGRsds(m_grsds); mxb.SetSHbz(m_shbz); mxb.SetZFbz(m_zfbz); mxb.SetJiaBts(m_jiabts); int jiabgz; jiabgz=m_jiabts*40; mxb.SetJiaBgz(jiabgz); mxb.SetSjts(m_sjts); int sjkk; sjkk=m_sjts*40; mxb.SetSJkk(sjkk); mxb.SetYFje(atoi(yfgz); mxb.SetSFje(m_sfgz); mxb.sql_insert(); CYgjbsjb sjb; sjb.SetJiaBts(m_jiabts); sjb.SetJiaBgz(jiabgz); sjb.SetSjts(m_sjts); sjb.SetSJkk(sjkk); sjb.sql_update(m_id); CDialog:OnOK(); 4.6 用户管理模块设计 1实现目标 实现新建、删除用户功能,用户管理对话框设计如图 13 所示。 吉林省明日科技有限公司监制 17 图 13 用户管理对话框 2设计步骤 (1)向项目中添加一个新 Dialog 资源,资源 ID 为 IDD_XINJYH。在 IDD_XINJYH 对话框 资源中单击鼠标右键,执行弹出快捷菜单的“Properties”菜单命令,打开“Dialog Properties” 对话框。在“Dialog Properties”对话框中选择 General 选项卡,更改其“Caption”文本框内容为 “用户管理” 。 (2)从 Controls 面板上向 Dialog 资源中添加 4 个 Static、1 个 Combo、3 个 Edit、1 个 Button 控件,更改资源的属性,并为资源设置相对应的变量,如表 4 所示 表 4 资源设置 Member Variables IDProperties TypeMember IDC_EDIT1默认CStringm_name IDC_EDIT2 Password true CStringm_pwd IDC_EDIT3Password trueCStringm_pwd1 IDC_COMBO1默认CComboBoxm_jb IDOKCaption 添加 IDC_BUTTON1Caption 删除 IDCANCELCaption 退出 3代码分析 (1)添加 OnInitDialog()函数,初始化 Combo 控件,集体代码如下: BOOL CXinjyhdlg:OnInitDialog() CDialog:OnInitDialog(); / TODO: Add extra initialization here SetIcon(m_hIcon, TRUE); m_jb.AddString(系统管理员); m_jb.AddString(普通管理员); return TRUE; / return TRUE unless you set the focus to a control / EXCEPTION: OCX Property Pages should return FALSE (2)为“添加”按钮添加消息响应函数,代码如下: void CXinjyhdlg:OnOK() / TODO: Add extra validation here UpdateData(true); if(m_name=) 吉林省明日科技有限公司监制 18 MessageBox(请输入用户名); return; CString jb; m_jb.GetWindowText(jb); if(jb=) MessageBox(级别不能为空); return; if(m_pwd=) MessageBox(请输入密码); return; if(m_pwd1=) MessageBox(请确认密码); return; if(m_pwd!=m_pwd1) MessageBox(两次密码不同); return; CCzyxxb xxb; if(xxb.Havename(m_name)=1) MessageBox(用户以存在,请重新输入); return; xxb.SetCzyName(m_name); xxb.SetPwd(m_pwd); m_jb.GetLBText(m_jb.GetCurSel(),strjb); if(strjb=系统管理员) strjb=1; else strjb=0; xxb.SetCzyjb(strjb); xxb.sql_insert(); 吉林省明日科技有限公司监制 19 CDialog:OnOK(); (3)为“删除”按钮添加消息响应函数,代码如下: void CXinjyhdlg:OnButton1() / TODO: Add your control notification handler code here UpdateData(true); if(MessageBox(是否删除当前记录,请确认,MB_YESNO)=IDYES) CCzyxxb xxb; xxb.sql_delete(m_name); (4)当用户单击主界面菜单中的“用户管理”菜单项时,将执行 OnMenuyhgl 函数,具体 代码如下: void CGZGLXTDlg:OnMenuyhgl() / TODO: Add your command handler code here if(ffxxb.GetCzyjb()=1) CXinjyhdlg dlg; dlg.DoModal(); else MessageBox(没有权限); return; 附录 A 参考文献 1Visual Basic精彩编程200例机械工业出版社 赛奎春、高春艳等 2003年1月 2Visual Basic数据库开发实例解析机械工业出版社 刘志铭、高春艳等 2003年8月 3Visual FoxPro数据库开发实例解析机械工业出版社王晶莹、王国辉等 2003年9月 4Power Builder数据库开发实例解析机械工业出版社华传铭、张振坤等 2003年9月 5Delphi数据库开发实例解析机械工业出版社 赛奎春、郑骁鹏等 吉林省明日科技有限公司监制 20 2004年2月 6PowerBuilder 精彩编程200例机械工业出版社 张振坤、李文立等 2004年9月 7Visual FoxPro 精彩编程200例机械工业出版社 王国辉、董韶华等 2004年9月 8ASP数据库开发实例解析机械工业出版社 李严、于亚芳、王国辉2004年12月 9Delphi工程应用与项目实践机械工业出版社 宋坤、赵智勇等 2005年1月 10Visual Basic工程应用与项目实践机械工业出版社 高春艳、李俊民等 2005年1月 11Visual C工程应用与项目实践机械工业出版社 张雨、阮伟良等 2005年1月 12JSP工程应用与项目实践机械工业出版社 陈威、白伟明、李楠 2005年2月 13ASP工程应用与项目实践机械工业出版社 王国辉、牛强、李南南 2005年4月 14Visual Basic 信息系统开发实例精选机械工业出版社 高春艳、李俊民、张耀庭等 2005年7月 15ASP 信息系统开发实例精选机械工业出版社 王国辉、牛强、李南南等 2005年7月 16Delphi 信息系统开发实例精选机械工业出版社 宋坤、赵智勇、刘强等 2005年7月 17Visual foxpro数据库开发关键技

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论