📄 ctrainginfo.cpp
字号:
// CTraingInfo.cpp : implementation file
//
#include "stdafx.h"
#include "Rsglxt.h"
#include "CTraingInfo.h"
#include "DBaseQuery.h"
#include "ExternDLLHeader.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// CCTraingInfo dialog
CCTraingInfo::CCTraingInfo(CWnd* pParent /*=NULL*/)
: CDialog(CCTraingInfo::IDD, pParent)
{
//{{AFX_DATA_INIT(CCTraingInfo)
//}}AFX_DATA_INIT
}
void CCTraingInfo::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CCTraingInfo)
DDX_Control(pDX, IDC_COMSTAFFDEP, m_Comstaffdep);
DDX_Control(pDX, IDC_LIST_GRID, m_Sql_Grid);
DDX_Control(pDX, IDC_EDTSTAFFNAME, m_Edtstaffname);
DDX_Control(pDX, IDC_EDTSTAFFID, m_EdtstaffID);
DDX_Control(pDX, IDC_COMBO1, m_Comdept);
DDX_Control(pDX, IDC_BUTUNDO, m_undo);
DDX_Control(pDX, IDC_BUTSAVE, m_save);
DDX_Control(pDX, IDC_BUTEXIT, m_exit);
DDX_Control(pDX, IDC_BUTDELETE, m_delete);
DDX_Control(pDX, IDC_BUTCHANGE, m_change);
DDX_Control(pDX, IDC_BUTADD, m_add);
DDX_Control(pDX, IDC_DATETIMEPICKER2, m_TimeOver);
DDX_Control(pDX, IDC_DATETIMEPICKER1, m_TimeStart);
DDX_Control(pDX, IDC_EDIT19, m_Edtremark);
DDX_Control(pDX, IDC_EDIT11, m_EdtTcontent);
DDX_Control(pDX, IDC_EDIT10, m_EdtTresult);
DDX_Control(pDX, IDC_EDIT9, m_EdtTscore);
DDX_Control(pDX, IDC_EDIT8, m_EdtTaddress);
DDX_Control(pDX, IDC_EDIT7, m_EdtTcost);
DDX_Control(pDX, IDC_EDIT6, m_EdtTunit);
DDX_Control(pDX, IDC_EDIT4, m_EdtSname);
DDX_Control(pDX, IDC_EDIT3, m_EdtSID);
DDX_Control(pDX, IDC_EDIT2, m_EdtTname);
DDX_Control(pDX, IDC_EDIT1, m_EdtTID);
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(CCTraingInfo, CDialog)
//{{AFX_MSG_MAP(CCTraingInfo)
ON_BN_CLICKED(IDC_BUTADD, OnButadd)
ON_BN_CLICKED(IDC_BUTCHANGE, OnButchange)
ON_BN_CLICKED(IDC_BUTDELETE, OnButdelete)
ON_BN_CLICKED(IDC_BUTSAVE, OnButsave)
ON_BN_CLICKED(IDC_BUTUNDO, OnButundo)
ON_BN_CLICKED(IDC_BUTEXIT, OnButexit)
ON_WM_PAINT()
ON_WM_CTLCOLOR()
ON_BN_CLICKED(IDC_BTNSEL, OnBtnsel)
ON_NOTIFY(NM_DBLCLK, IDC_LIST_GRID, OnDblclkListGrid)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CCTraingInfo message handlers
void CCTraingInfo::OnButadd() //添加新的信息
{
// TODO: Add your control notification handler code here
AddOrChange=1;
this->ButtonEnabled(true);
this->ClearEdit();
CString NewID=ado.AutoNumber("TrainingInfo","Training_ID","PX",3);
m_EdtTID.SetWindowText(NewID);
m_EdtSID.SetFocus();
}
void CCTraingInfo::OnButchange() //修改该条信息
{
// TODO: Add your control notification handler code here
AddOrChange=2;
this->ButtonEnabled(true);
m_EdtSID.SetFocus();
}
void CCTraingInfo::OnButdelete() //删除该条信息
{
// TODO: Add your control notification handler code here
if(MessageBox("确定要删除此条记录吗?","系统提示",MB_OKCANCEL|MB_ICONQUESTION)!=1)
return;
CString sSQL;
sSQL.Format("DELETE FROM TrainingInfo WHERE Training_ID='%s'",m_sID);
RxRecordset Drst;
Drst.Open(sSQL,adCmdText);
this->OnCancel();
}
void CCTraingInfo::OnButsave() //保存该条信息
{
// TODO: Add your control notification handler code here
if(MessageBox("确定要保存记录吗?","系统提示",MB_OKCANCEL|MB_ICONQUESTION)!=1)
return;
CString TrainID,TName,SID,SName,Taddress,Result,Tcontent,Dept,Remark,Tcost,Tscore,Tunit,timestart,timeover;
m_EdtTID.GetWindowText(TrainID);
m_EdtTname.GetWindowText(TName);
m_EdtSID.GetWindowText(SID);
m_EdtSname.GetWindowText(SName);
m_Comdept.GetWindowText(Dept);
m_EdtTaddress.GetWindowText(Taddress);
m_EdtTcontent.GetWindowText(Tcontent);
m_EdtTcost.GetWindowText(Tcost);
m_EdtTscore.GetWindowText(Tscore);
m_EdtTunit.GetWindowText(Tunit);
m_EdtTresult.GetWindowText(Result);
m_Edtremark.GetWindowText(Remark);
CTime time1,time2;
m_TimeOver.GetTime(time1);
timeover=CTimeToCString(time1);
m_TimeStart.GetTime(time2);
timestart=CTimeToCString(time2);
if(SID.IsEmpty())
{
MessageBox("员工编号不能为空,请输入员工编号。","系统提示",MB_OKCANCEL|MB_ICONQUESTION!=1);
m_EdtSID.SetFocus();
return;
}
if(TName.IsEmpty())
{
MessageBox("培训名称不能为空,请输入培训名称。","系统提示",MB_OKCANCEL|MB_ICONQUESTION!=1);
m_EdtTname.SetFocus();
return;
}else if(TName.GetLength()>30)
{
MessageBox("输入培训名称的字数不能过长,请重新输入培训名称。","系统提示",MB_OKCANCEL|MB_ICONQUESTION!=1);
m_EdtTname.SetFocus();
return;
}
if(SName.IsEmpty())
{
MessageBox("员工姓名不能为空,请输入员工姓名。","系统提示",MB_OKCANCEL|MB_ICONQUESTION!=1);
m_EdtSname.SetFocus();
return;
}
if(Dept.IsEmpty())
{
MessageBox("员工部门不能为空,请输入员工部门。","系统提示",MB_OKCANCEL|MB_ICONQUESTION!=1);
m_Comdept.SetFocus();
return;
}
if(Taddress.IsEmpty())
{
MessageBox("培训地点不能为空,请输入培训地点。","系统提示",MB_OKCANCEL|MB_ICONQUESTION!=1);
m_EdtTaddress.SetFocus();
return;
}else if(Taddress.GetLength()>30)
{
MessageBox("输入培训地点的字数不能过长,请重新输入培训地点。","系统提示",MB_OKCANCEL|MB_ICONQUESTION!=1);
m_EdtTaddress.SetFocus();
return;
}
if(Tcontent.IsEmpty())
{
MessageBox("培训内容不能为空,请输入培训内容。","系统提示",MB_OKCANCEL|MB_ICONQUESTION!=1);
m_EdtTcontent.SetFocus();
return;
}else if(Tcontent.GetLength()>30)
{
MessageBox("输入培训内容的字数不能过长,请重新输入培训内容。","系统提示",MB_OKCANCEL|MB_ICONQUESTION!=1);
m_EdtTcontent.SetFocus();
return;
}
if(Tcost.IsEmpty())
{
MessageBox("培训费用不能为空,请输入培训费用。","系统提示",MB_OKCANCEL|MB_ICONQUESTION!=1);
m_EdtTcost.SetFocus();
return;
}else if(Tcost.GetLength()>8)
{
MessageBox("培训费用不能过多,请重新输入培训费用。","系统提示",MB_OKCANCEL|MB_ICONQUESTION!=1);
m_EdtTcost.SetFocus();
return;
}
if(Tscore.IsEmpty())
{
MessageBox("培训成绩不能为空,请输入培训成绩。","系统提示",MB_OKCANCEL|MB_ICONQUESTION!=1);
m_EdtTscore.SetFocus();
return;
}
else
{
int len;
len=atoi(Tscore);
if(len>100)
{
MessageBox("培训成绩不能超过100分,请出现输入培训成绩。","系统提示",MB_OKCANCEL|MB_ICONQUESTION!=1);
m_EdtTscore.SetFocus();
return;
}
}
if(Tunit.IsEmpty())
{
MessageBox("培训单位不能为空,请输入培训单位。","系统提示",MB_OKCANCEL|MB_ICONQUESTION!=1);
m_EdtTunit.SetFocus();
return;
}
else if(Tunit.GetLength()>30)
{
MessageBox("培训单位字数不能过长,请重新输入培训单位。","系统提示",MB_OKCANCEL|MB_ICONQUESTION!=1);
m_EdtTunit.SetFocus();
return;
}
if(Result.IsEmpty())
{
MessageBox("培训结果不能为空,请输入培训结果。","系统提示",MB_OKCANCEL|MB_ICONQUESTION!=1);
m_EdtTresult.SetFocus();
return;
}else if(Result.GetLength()>10)
{
MessageBox("培训结果字数不能过长,请重新输入培训结果。","系统提示",MB_OKCANCEL|MB_ICONQUESTION!=1);
m_EdtTresult.SetFocus();
return;
}
if(Remark.GetLength()>50)
{
MessageBox("输入备注的字数不能过长,请重新输入。","系统提示",MB_OKCANCEL|MB_ICONQUESTION!=1);
m_Edtremark.SetFocus();
return;
}
RxRecordset namest,IDst,tst;
CString namesql,IDsql,text1,text2,text3;
namesql.Format("SELECT * FROM StaffInfo WHERE Staff_name='%s'",SName);
IDsql.Format("SELECT * FROM StaffInfo WHERE Staff_ID='%s'",SID);
namest.Open(namesql,adCmdText);
IDst.Open(IDsql,adCmdText);
if(IDst.GetRecordCount()<1)
{
MessageBox("您输入的用户编号不存在!请重新输入!","系统提示",MB_OK|MB_ICONSTOP);
m_EdtSID.SetWindowText("");
m_EdtSID.SetFocus();
return;
}
if(namest.GetRecordCount()<1)
{
MessageBox("您输入的用户名不存在!请重新输入!","系统提示",MB_OK|MB_ICONSTOP);
m_EdtSname.SetWindowText("");
m_EdtSname.SetFocus();
return;
}
text1=namest.GetFieldValue("Staff_ID");
if(text1!=SID)
{
MessageBox("您输入的用户名与用户编号不匹配!请重新输入!","系统提示",MB_OK|MB_ICONSTOP);
m_EdtSID.SetWindowText("");
m_EdtSID.SetFocus();
return;
}
text2=namest.GetFieldValue("Dep");
if(text2!=Dept)
{
MessageBox("您输入的用户不属于这个部门!请重新输入!","系统提示",MB_OK|MB_ICONSTOP);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -