📄 form1.cs
字号:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using Microsoft.Office.Interop.Excel;
using System.Reflection;
namespace hr1
{
public partial class Form1 : Form
{
String PBH ="";
int _PXBH = -1;
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
// TODO: 这行代码将数据加载到表“hr1DataSet.部门”中。您可以根据需要移动或移除它。
this.部门TableAdapter.Fill(this.hr1DataSet.部门);
// TODO: 这行代码将数据加载到表“hr1DataSet.按员工”中。您可以根据需要移动或移除它。
this.按员工TableAdapter.FillBy(this.hr1DataSet.按员工);
// TODO: 这行代码将数据加载到表“hr1DataSet.员工”中。您可以根据需要移动或移除它。
this.员工TableAdapter.Fill(this.hr1DataSet.员工,_PXBH);
// TODO: 这行代码将数据加载到表“hr1DataSet.培训”中。您可以根据需要移动或移除它。
// this.hr1DataSet.培训.Select("select * from 培训项表 where 状态<>'已经结束'","培训编号");
if (_PXBH == -1)
{
this.培训TableAdapter.AllNotClosedFillBy(this.hr1DataSet.培训);
}
// this.培训TableAdapter.Fillby(this.hr1DataSet.培训 );
// TODO: 这行代码将数据加载到表“hr1DataSet.员工参加培训记录”中。您可以根据需要移动或移除它。
this.员工参加培训记录TableAdapter.Fill(this.hr1DataSet.员工参加培训记录);
// TODO: 这行代码将数据加载到表“hr1DataSet.培训项表”中。您可以根据需要移动或移除它。
// this.培训项表TableAdapter.Fill(this.hr1DataSet.培训项表);
// TODO: 这行代码将数据加载到表“hr1DataSet.培训项表”中。您可以根据需要移动或移除它。
this.培训项表TableAdapter.Fill(this.hr1DataSet.培训项表);
// TODO: 这行代码将数据加载到表“hr1DataSet.员工名册”中。您可以根据需要移动或移除它。
this.员工名册TableAdapter.Fill(this.hr1DataSet.员工名册);
}
private void bindingSource1_CurrentChanged(object sender, EventArgs e)
{
}
private void toolStripButton1_Click(object sender, EventArgs e)
{
}
private void 员工名册BindingNavigatorSaveItem_Click(object sender, EventArgs e)
{
this.Validate();
this.员工名册BindingSource.EndEdit();
this.员工名册TableAdapter.Update(this.hr1DataSet.员工名册);
}
private void 员工名册BindingNavigatorSaveItem_Click_1(object sender, EventArgs e)
{
// this.Validate();
// this.员工名册BindingSource.EndEdit();
// this.员工名册TableAdapter.Update(this.hr1DataSet.员工名册);
}
private void saveButton1_Click(object sender, EventArgs e)
{
this.Validate();
this.培训项表BindingSource.EndEdit();
this.培训项表TableAdapter.Update(this.hr1DataSet.培训项表);
}
private void 培训项表DataGridView1_CellContentClick(object sender, DataGridViewCellEventArgs e)
{
}
private void 培训项表DataGridView1_CellContentDoubleClick(object sender, DataGridViewCellEventArgs e)
{
}
private void 培训DataGridView_DoubleClick(object sender, EventArgs e)
{
label2.Text = 培训DataGridView.SelectedRows[0].Cells[0].Value.ToString();
this._PXBH = (Int32)培训DataGridView.SelectedRows[0].Cells[0].Value;
this.员工参加培训记录TableAdapter.CurrentProgFillBy(this.hr1DataSet.员工参加培训记录,_PXBH);
this.员工TableAdapter.Fill(this.hr1DataSet.员工, _PXBH);
if (this.员工DataGridView.Enabled == false) this.员工DataGridView.Enabled = true;
}
private void groupBox1_Enter(object sender, EventArgs e)
{
}
private void groupBox3_Enter(object sender, EventArgs e)
{
}
private void 员工DataGridView_DoubleClick(object sender, EventArgs e)
{
//双击后将选中的员工的工资编号与_PXBH一起,作为记录插入到员工参加培训记录表中。
//并重新刷新显示员工表格,剔除刚才选中的记录。
//重新刷新员工参加培训记录表格。
if (_PXBH == -1) return;
PBH = this.员工DataGridView.SelectedRows[0].Cells[0].Value.ToString();
String xm = "";
xm = this.员工DataGridView.SelectedRows[0].Cells[1].Value.ToString();
this.员工参加培训记录TableAdapter.InsertQuery(_PXBH,PBH,xm,"","","");
this.Validate();
this.员工参加培训记录BindingSource.EndEdit();
this.员工参加培训记录TableAdapter.Update(this.hr1DataSet.员工参加培训记录);
this.员工参加培训记录TableAdapter.CurrentProgFillBy(this.hr1DataSet.员工参加培训记录,_PXBH);
this.员工TableAdapter.Fill(this.hr1DataSet.员工, _PXBH);
/***
* INSERT INTO 员工参加培训记录
* (培训编号, 工资编号, 签到表流水号, 实际参加培训学时, 考核成绩)
* VALUES (?, ?, ?, ?, ?)
*/
}
private void 员工DataGridView_CellContentClick(object sender, DataGridViewCellEventArgs e)
{
}
private void tabPage3_Enter(object sender, EventArgs e)
{
/*
* SELECT 工资编号, 姓名, 部门, 职务, 职称 FROM 员工
* where 工资编号 not in (select 工资编号 from 员工参加培训记录 where 培训编号 =:_PXBH )
*/
if (this._PXBH == -1)
{
this.员工DataGridView.Enabled = false;
}
else
{
this.员工DataGridView.Enabled = true;
this.员工TableAdapter.Fill(this.hr1DataSet.员工, _PXBH);
}
}
private void toolStripButton1_Click_1(object sender, EventArgs e)
{
//保存对员工参加对培训记录对修改,刷新尚未参加本次培训对员工表格
this.Validate();
this.员工参加培训记录BindingSource.EndEdit();
this.员工参加培训记录TableAdapter.Update(this.hr1DataSet.员工参加培训记录);
//this.员工参加培训记录TableAdapter.Fill(this.hr1DataSet.员工参加培训记录);
this.员工参加培训记录TableAdapter.CurrentProgFillBy(this.hr1DataSet.员工参加培训记录, _PXBH);
this.员工TableAdapter.Fill(this.hr1DataSet.员工,_PXBH);
}
private void bindingNavigatorAddNewItem_Click(object sender, EventArgs e)
{
}
private void tabPage8_Click(object sender, EventArgs e)
{
}
private void splitContainer5_Panel1_Paint(object sender, PaintEventArgs e)
{
}
private void tabPage7_Click(object sender, EventArgs e)
{
}
private void 按员工DataGridView_CellContentClick(object sender, DataGridViewCellEventArgs e)
{
}
private void splitContainer7_Panel1_Paint(object sender, PaintEventArgs e)
{
}
private void splitContainer5_SplitterMoved(object sender, SplitterEventArgs e)
{
}
private void label3_Click(object sender, EventArgs e)
{
}
private void button2_Click(object sender, EventArgs e)
{//按员工个人查,姓名或工资编号
String ct;
ct = textBox1.Text.Trim();
if (ct == null) return;
this.按员工TableAdapter.Fill(this.hr1DataSet.按员工, ct, ct);
}
private void 部门ComboBox_SelectedValueChanged(object sender, EventArgs e)
{
string bm="";
if (this.部门ComboBox.SelectedItem!=null)
{
double d=0,dp=1,dt=0;
bm = (this.部门ComboBox.Text.Trim());//
this.员工参加培训记录TableAdapter.DeptFillBy(this.hr1DataSet.员工参加培训记录, bm);
if (this.员工参加培训记录TableAdapter.totaltime(bm).HasValue)
{
dt = this.员工参加培训记录TableAdapter.totaltime(bm).Value;
}
if (this.员工参加培训记录TableAdapter.allppl(bm).HasValue)
{
dp = this.员工参加培训记录TableAdapter.allppl(bm).Value;//.Value;
}
d=dt/dp;//=(this.员工参加培训记录TableAdapter.totaltime(bm).Value / this.员工参加培训记录TableAdapter.allppl(bm).Value);
this.pjxs.Text = d.ToString();
}
}
private void button3_Click(object sender, EventArgs e)
{//导出到Excel
int rowCount = this.按部门查员工参加培训记录DataGridView2.RowCount;
int columnCount = this.按部门查员工参加培训记录DataGridView2.ColumnCount;
Microsoft.Office.Interop.Excel.Application exc = new Microsoft.Office.Interop.Excel.Application();
if (exc == null)
{
throw new Exception("Excel无法启动");
}
//
exc.Visible = true;
//
Workbooks workbooks = exc.Workbooks;
//
_Workbook workbook = workbooks.Add(XlWBATemplate.xlWBATWorksheet);
//
Sheets sheets = exc.Sheets;
_Worksheet worksheet = (_Worksheet)sheets[1];
if (worksheet == null)
{
throw new Exception("Worksheet error");
}
//
Range r = worksheet.get_Range("A1", Missing.Value);
if (r == null)
{
MessageBox.Show("Range无法启动");
throw new Exception("Range error");
}
//以上是一些例行的初始化工作,下面进行具体的信息填充
//填充标题
int ColIndex = 1;
foreach (DataGridViewColumn dHeader in this.按部门查员工参加培训记录DataGridView2.Columns)
{
worksheet.Cells[1, ColIndex++] = dHeader.HeaderText;
}
//获取DataGridView中的所有行和列的数值,填充到一个二维数组中.
object[,] myData = new object[rowCount + 1, columnCount];
for (int i = 0; i < rowCount; i++)
{
for (int j = 0; j < columnCount; j++)
{
myData[i, j] = this.按部门查员工参加培训记录DataGridView2[j,i].Value; //这里的获取注意行列次序
}
}
//将填充好的二维数组填充到Excel对象中.
r = worksheet.get_Range(worksheet.Cells[2, 1], worksheet.Cells[rowCount + 1, columnCount]);
r.Value2 = myData;
}
private void button4_Click(object sender, EventArgs e)
{
int rowCount = dgv.RowCount;
int columnCount = dgv.ColumnCount;
//
Microsoft.Office.Interop.Excel.Application exc = new Microsoft.Office.Interop.Excel.Application();
if (exc == null)
{
throw new Exception("Excel无法启动");
}
//
exc.Visible = true;
//
Workbooks workbooks = exc.Workbooks;
//
_Workbook workbook = workbooks.Add(XlWBATemplate.xlWBATWorksheet);
//
Sheets sheets = exc.Sheets;
_Worksheet worksheet = (_Worksheet)sheets[1];
if (worksheet == null)
{
throw new Exception("Worksheet error");
}
//
Range r = worksheet.get_Range("A1", Missing.Value);
if (r == null)
{
MessageBox.Show("Range无法启动");
throw new Exception("Range error");
}
//以上是一些例行的初始化工作,下面进行具体的信息填充
//填充标题
int ColIndex = 1;
foreach (DataGridViewColumn dHeader in dgv.Columns)
{
worksheet.Cells[1, ColIndex++] = dHeader.HeaderText;
}
//获取DataGridView中的所有行和列的数值,填充到一个二维数组中.
object[,] myData = new object[rowCount + 1, columnCount];
for (int i = 0; i < rowCount; i++)
{
for (int j = 0; j < columnCount; j++)
{
myData[i, j] = dgv[j, i].Value; //这里的获取注意行列次序
}
}
//将填充好的二维数组填充到Excel对象中.
r = worksheet.get_Range(worksheet.Cells[2, 1], worksheet.Cells[rowCount + 1, columnCount]);
r.Value2 = myData;
}
private void 员工DataGridView1_KeyDown(object sender, KeyEventArgs e)
{
if (e.KeyCode.Equals("116"))
{
this.员工名册TableAdapter.Fill(this.hr1DataSet.员工名册);
}
}
private void 员工参加培训记录DataGridView1_KeyDown(object sender, KeyEventArgs e)
{
if (e.KeyCode.Equals(Keys.F5))
{
this.员工参加培训记录TableAdapter.Fill(this.hr1DataSet.员工参加培训记录);
}
}
}
/*
this.员工名册TableAdapter.InsertQuery("RS010", "高瑾", "工程部", "", "");
this.Validate();
this.员工名册BindingSource.EndEdit();
this.员工名册TableAdapter.Update(this.hr1DataSet.员工名册);
this.员工名册TableAdapter.Fill(this.hr1DataSet.员工名册);
*/
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -