安全档案管理软件.docx
《安全档案管理软件.docx》由会员分享,可在线阅读,更多相关《安全档案管理软件.docx(47页珍藏版)》请在冰豆网上搜索。
![安全档案管理软件.docx](https://file1.bdocx.com/fileroot1/2022-11/23/8e354aa3-d468-42e2-a891-9633c709eb3a/8e354aa3-d468-42e2-a891-9633c709eb3a1.gif)
安全档案管理软件
安全档案管理软件
经济效益证明
附1大同煤矿集团公司科学技术(技术革新)奖申报书
(2010年度)
一、项目基本情况
奖种
科技进步
∨
技术发明
技术革新
项目名称
安全档案管理软件(WinForm版)
主要完成人
张克忠朱晶路建军
主要完成单位
同煤集团同家梁矿
申报单位意见
(盖章)
同意
申报奖励等级
项目可否公布
主题词
安全档案管理软件
专业一级
分类
信息
专业二级
分类
任务来源
A.国家计划B.部委计划C.省、市、自治区计划
D.基金资助E.国际合作F.其它单位委托
G.自选∨H.非职务I.其它
项目起止时间
2008.5——2009.10
组织评价单位
同煤集团公司科技成果验收委员会
评价时间
2010年8
成果水平
申报单位
联系人
王玉印
所在部门
科技科
联系电话
7063149
移动电话
二、项目简介
立项原因
1、使档案管理快捷准确查阅和填写,有效掌握员工的综合安全状态和安全信息,为安全生产提供保障。
2、员工是企业安全管理中最活跃的因素,也是最难控制的危险因素。
人的不安全行为往往是造成各类安全事故的直接原因。
企业员工越多,安全管理的难度就越大。
创新点
使用.NET平台。
研究内容
使用流行的MicrosoftVisualStudio5集成开发环境,C#语言,SQLServer数据库。
效益及应用情况
1、通过掌握员工的综合安全状态和安全信息,进而针对性的采取有效措施,杜绝各类事故的发生,从而实现安全生产。
2、减少档案管理的劳动强度,减少纸张投入。
科技成果报告
安全档案管理软件(WinForm版)
建立安全档案的必要性:
员工是企业安全管理中最活跃的因素,也是最难控制的危险因素。
人的不安全行为往往是造成各类安全事故的直接原因。
企业员工越多,安全管理的难度就越大。
传统的档案纪录方式很难实现频繁的查阅和填写目的,为每位员工建立安全档案管理软件可有效的杜绝以上不足,能够方便快捷的掌握员工的综合安全状态和安全信息,进而针对性的采取有效措施,杜绝各类事故的发生,从而实现安全生产。
软件开发环境:
MicrosoftVisualStudio2005集成开发环境(简称VS)。
VS是.NET开发的首选工具,VS可自动执行编译源代码的步骤;VS文本编辑器可以智能检测语言错误,并可以在输入代码时给出合适的推荐代码等等太多的强大功能。
软件开发语言:
C#。
C#从C和C++语言演化而来,是微软专门为使用.NET平台而创建的。
该语言具有语法简单,调试简单以及代码健壮等优点。
数据库:
SQLServer2005。
SQLServer2005是一种关系型数据库,他是一个网络数据库服务器,而且还是一个数据分析的平台。
开发环境运行平台:
WindowsXP(SP2)/Windows2000(SP4)/WindowsServer2003(SP1)。
软件功能结构:
数据库设计
一个成功的管理系统,是由50%的业务+50%的软件所组成,而50%的成功软件又是由25%的数据库和25%的程序组成,可见数据库的设计非常关键。
数据库设计的好坏直接关系着系统的运行速度和稳定性以及安全性。
数据库的概要说明:
该数据库包含了职工基本信息表(dbo_stuffbusic)、工作简历表、家庭关系表、培训纪录表、三违纪录表、体检档案表、安全考试表、以及民族类别设置表、职务类别设置表等个中类别设置表
数据库的E-R图分析:
由于数据库中各种表数量众多,现只对安全考试信息表(db_Test)的实体E-R图进行分析。
数据表的结构:
由于本安全档案数据库中的数据表众多,现只对安全考试信息表的结构截图如下。
VS2005中的编码设计:
公共类:
MyMeans.cs
usingSystem;
usingSystem.Collections.Generic;
usingSystem.Text;
usingSystem.Data;
usingSystem.Data.SqlClient;
usingSystem.Windows.Forms;
namespacePWMS.DataClass
{
classMyMeans
{
#region全局变量
publicstaticstringLogin_ID="";//定义全局变量,记录当前登录的用户编号
publicstaticstringLogin_Name="";//定义全局变量,记录当前登录的用户名
publicstaticstringMean_SQL="",Mean_Table="",Mean_Field="";//定义全局变量,记录“基础信息”各窗体中的表名及SQL语句
publicstaticSqlConnectionMy_con;//定义一个SqlConnection类型的公共变量My_con,用于判断数据库是否连接成功
publicstaticstringM_str_sqlcon="DataSource=(local)\\SQLEXPRESS;Database=db_PWMS;Integratedsecurity=true";
publicstaticstringAllSql="Select*fromtb_Stuffbusic";//存储职工基本信息表中的SQL语句
#endregion
#region建立数据库连接
///
///建立数据库连接.
///
///返回SqlConnection对象
publicstaticSqlConnectiongetcon()
{
My_con=newSqlConnection(M_str_sqlcon);//用SqlConnection对象与指定的数据库相连接
My_con.Open();//打开数据库连接
returnMy_con;//返回SqlConnection对象的信息
}
#endregion
#region测试数据库是否赋加
///
///测试数据库是否赋加
///
publicvoidcon_open()
{
getcon();
//con_close();
}
#endregion
#region关闭数据库连接
///
///关闭于数据库的连接.
///
publicvoidcon_close()
{
if(My_con.State==ConnectionState.Open)//判断是否打开与数据库的连接
{
My_con.Close();//关闭数据库的连接
My_con.Dispose();//释放My_con变量的所有空间
}
}
#endregion
#region读取指定表中的信息
///
///读取指定表中的信息.
///
///SQL语句
///返回bool型
publicSqlDataReadergetcom(stringSQLstr)
{getcon();//打开与数据库的连接
SqlCommandMy_com=My_con.CreateCommand();//创建一个SqlCommand对象,用于执行SQL语句
My_com.CommandText=SQLstr;//获取指定的SQL语句
SqlDataReaderMy_read=My_com.ExecuteReader();//执行SQL语名句,生成一个SqlDataReader对象
returnMy_read;
}
#endregion
#region执行SqlCommand命令
///
///执行SqlCommand
///
///SQL语句
publicvoidgetsqlcom(stringSQLstr)
{
getcon();//打开与数据库的连接
SqlCommandSQLcom=newSqlCommand(SQLstr,My_con);//创建一个SqlCommand对象,用于执行SQL语句
SQLcom.ExecuteNonQuery();//执行SQL语句
SQLcom.Dispose();//释放所有空间
con_close();//调用con_close()方法,关闭与数据库的连接
}
#endregion
#region创建DataSet对象
///
///创建一个DataSet对象
///
///SQL语句
///表名
///返回DataSet对象
publicDataSetgetDataSet(stringSQLstr,stringtableName)
{
getcon();//打开与数据库的连接
SqlDataAdapterSQLda=newSqlDataAdapter(SQLstr,My_con);//创建一个SqlDataAdapter对象,并获取指定数据表的信息
DataSetMy_DataSet=newDataSet();//创建DataSet对象
SQLda.Fill(My_DataSet,tableName);//通过SqlDataAdapter对象的Fill()方法,将数据表信息添加到DataSet对象中
con_close();//关闭数据库的连接
returnMy_DataSet;//返回DataSet对象的信息
//WritePrivateProfileString(stringsection,stringkey,stringval,stringfilePath);
}
#endregion
}
}
MyModule.cs类:
usingSystem;
usingSystem.Collections.Generic;
usingSystem.Text;
usingSystem.Windows.Forms;
usingSystem.Data;
usingSystem.Data.SqlClient;
namespacePWMS.ModuleClass
{
classMyModule
{
#region公共变量
DataClass.MyMeansMyDataClass=newPWMS.DataClass.MyMeans();//声明MyMeans类的一个对象,以调用其方法
publicstaticstringADDs="";//用来存储添加或修改的SQL语句
publicstaticstringFindValue="";//存储查询条件
publicstaticstringAddress_ID="";//存储通讯录添加修改时的ID编号
publicstaticstringUser_ID="";//存储用户的ID编号
publicstaticstringUser_Name="";//存储用户名
#endregion
#region窗体的调用
///
///窗体的调用.
///
///调用窗体的Text属性值
///标识
publicvoidShow_Form(stringFrmName,intn)
{
if(n==1)
{
if(FrmName=="安全档案浏览")//判断当前要打开的窗体
{
PerForm.F_ManFileFrmManFile=newPWMS.PerForm.F_ManFile();
FrmManFile.Text="安全档案浏览";//设置窗体名称
FrmManFile.ShowDialog();//显示窗体
FrmManFile.Dispose();
}
if(FrmName=="安全记事")
{
PerForm.F_WordPadFrmWordPad=newPWMS.PerForm.F_WordPad();
FrmWordPad.Text="安全记事";
FrmWordPad.ShowDialog();
FrmWordPad.Dispose();
}
if(FrmName=="通讯录")
{
PerForm.F_AddressListFrmAddressList=newPWMS.PerForm.F_AddressList();
FrmAddressList.Text="通讯录";
FrmAddressList.ShowDialog();
FrmAddressList.Dispose();
}
if(FrmName=="备份/还原数据库")
{
PerForm.F_HaveBackFrmHaveBack=newPWMS.PerForm.F_HaveBack();
FrmHaveBack.Text="备份/还原数据库";
FrmHaveBack.ShowDialog();
FrmHaveBack.Dispose();
}
if(FrmName=="清空数据库")
{
PerForm.F_ClearDataFrmClearData=newPWMS.PerForm.F_ClearData();
FrmClearData.Text="清空数据库";
FrmClearData.ShowDialog();
FrmClearData.Dispose();
}
if(FrmName=="计算器")
{
System.Diagnostics.Process.Start("calc.exe");
}
if(FrmName=="记事本")
{
System.Diagnostics.Process.Start("notepad.exe");
}
}
if(n==2)
{
StringFrmStr="";//记录窗体名称
if(FrmName=="民族类别设置")//判断要打开的窗体
{
DataClass.MyMeans.Mean_SQL="select*fromtb_Folk";//SQL语句
DataClass.MyMeans.Mean_Table="tb_Folk";//表名
DataClass.MyMeans.Mean_Field="FolkName";//添加、修改数据的字段名
FrmStr=FrmName;
}
if(FrmName=="工种类别设置")
{
DataClass.MyMeans.Mean_SQL="select*fromtb_EmployeeGenre";
DataClass.MyMeans.Mean_Table="tb_EmployeeGenre";
DataClass.MyMeans.Mean_Field="EmployeeName";
FrmStr=FrmName;
}
if(FrmName=="文化程度设置")
{
DataClass.MyMeans.Mean_SQL="select*fromtb_Kultur";
DataClass.MyMeans.Mean_Table="tb_Kultur";
DataClass.MyMeans.Mean_Field="KulturName";
FrmStr=FrmName;
}
if(FrmName=="政治面貌设置")
{
DataClass.MyMeans.Mean_SQL="select*fromtb_Visage";
DataClass.MyMeans.Mean_Table="tb_Visage";
DataClass.MyMeans.Mean_Field="VisageName";
FrmStr=FrmName;
}
if(FrmName=="单位类别设置")
{
DataClass.MyMeans.Mean_SQL="select*fromtb_Branch";
DataClass.MyMeans.Mean_Table="tb_Branch";
DataClass.MyMeans.Mean_Field="BranchName";
FrmStr=FrmName;
}
if(FrmName=="六员类别设置")
{
DataClass.MyMeans.Mean_SQL="select*fromtb_SixEm";
DataClass.MyMeans.Mean_Table="tb_SixEm";
DataClass.MyMeans.Mean_Field="LaborageName";
FrmStr=FrmName;
}
if(FrmName=="职务类别设置")
{
DataClass.MyMeans.Mean_SQL="select*fromtb_Business";
DataClass.MyMeans.Mean_Table="tb_Business";
DataClass.MyMeans.Mean_Field="BusinessName";
FrmStr=FrmName;
}
if(FrmName=="职称类别设置")
{
DataClass.MyMeans.Mean_SQL="select*fromtb_Duthcall";
DataClass.MyMeans.Mean_Table="tb_Duthcall";
DataClass.MyMeans.Mean_Field="DuthcallName";
FrmStr=FrmName;
}
if(FrmName=="记事本类别设置")
{
DataClass.MyMeans.Mean_SQL="select*fromtb_WordPad";
DataClass.MyMeans.Mean_Table="tb_WordPad";
DataClass.MyMeans.Mean_Field="WordPad";
FrmStr=FrmName;
}
if(FrmName=="考试类别设置")
{
DataClass.MyMeans.Mean_SQL="select*fromtb_Exam";
DataClass.MyMeans.Mean_Table="tb_Exam";
DataClass.MyMeans.Mean_Field="Exam";
FrmStr=FrmName;
}
InfoAddForm.F_BasicFrmBasic=newPWMS.InfoAddForm.F_Basic();
FrmBasic.Text=FrmStr;//设置窗体名称
FrmBasic.ShowDialog();//显示调用的窗体
FrmBasic.Dispose();
}
}
#endregion
#region自动编号
///
///在添加信息时自动计算编号.
///
///表名
///字段名
///返回String对象
publicStringGetAutocoding(stringTableName,stringID)
{
//查找指定表中ID号为最大的记录
SqlDataReaderMyDR=MyDataClass.getcom("selectmax("+ID+")NIDfrom"+TableName);
intNum=0;
if(MyDR.HasRows)//当查找到记录时
{
MyDR.Read();//读取当前记录
if(MyDR[0].ToString()=="")
return"0001";
Num=Convert.ToInt32(MyDR[0].ToString());//将当前找到的最大编号转换成整数
++Num;//最大编号加
strings=string.Format("{0:
0000}",Num);//将整数值转换成指定格式的字符串
returns;//返回自动生成的编号
}
else
{
return"0001";//当数据表没有记录时,返回
}
}
#endregion
#region向comboBox控件传递数据表中的数据
///
///动态向comboBox控件的下拉列表添加数据.
///
///comboBox控件
///数据表名称
publicvoidCoPassData(ComboBoxcobox,stringTableName)
{
cobox.Items.Clear();
DataClass.MyMeansMyDataClsaa=newPWMS.Da