📄 memployee.cpp
字号:
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "mEmployee.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
TKSEmployee *sdEmployee;
//---------------------------------------------------------------------------
__fastcall TKSEmployee::TKSEmployee()
:TKSMidBase()
{
}
//---------------------------------------------------------------------------
void __fastcall TKSEmployee::ValidHeadValues()
{
AnsiString m_EmployeeCode;
AnsiString b_EmployeeCode;
m_EmployeeCode=GetMasterValue("EmployeeCode");
b_EmployeeCode=GetMasterOldValue("EmployeeCode");
if(m_EmployeeCode.IsEmpty())
throw Exception("员工代码不能为空");
if(m_EmployeeCode.Length()>18)
throw Exception("员工代码的长度不能大于18");
if(m_EmployeeCode.UpperCase()!=b_EmployeeCode.UpperCase())
{
Query->Close();
Query->SQL->Clear();
Query->SQL->Add("select * from sdEmployee where EmployeeCode='"+m_EmployeeCode+"'");
Query->Open();
if(Query->RecordCount>0)
{
Query->Close();
throw Exception("员工代码:"+m_EmployeeCode+"已存在");
}
Query->Close();
}
AnsiString m_EmployeeName;
m_EmployeeName=GetMasterValue("EmployeeName");
if(m_EmployeeName.IsEmpty())
throw Exception("员工名称不能为空");
if(m_EmployeeName.Length()>20)
throw Exception("员工名称的长度不能大于20");
int m_EmployeeSex;
m_EmployeeSex=GetMasterValue("EmployeeSex");
if(m_EmployeeSex!=0 && m_EmployeeSex!=1)
throw Exception("员工的性别标志只能取值是(0-男,1-女)");
AnsiString m_EmployeeBorthday;
m_EmployeeBorthday=GetMasterValue("EmployeeBorthday");
if(m_EmployeeBorthday.IsEmpty())
throw Exception("员工出生日期不能为空");
if(m_EmployeeBorthday.Length()>10)
throw Exception("员工出生日期的长度不能大于10");
AnsiString m_EmployeeIDCard;
m_EmployeeIDCard=GetMasterValue("EmployeeIDCard");
if(m_EmployeeIDCard.IsEmpty())
throw Exception("员工身份证号不能为空");
if(m_EmployeeIDCard.Length()>20)
throw Exception("员工身份证号的长度不能大于20");
AnsiString m_EmployeeDept;
AnsiString b_EmployeeDept;
m_EmployeeDept=GetMasterValue("EmployeeDept");
b_EmployeeDept=GetMasterOldValue("EmployeeDept");
if(m_EmployeeDept.IsEmpty())
throw Exception("员工所在部门不能为空");
if(m_EmployeeDept.UpperCase()!=UpperCase(b_EmployeeDept))
{
Query->Close();
Query->SQL->Clear();
Query->SQL->Add("select * from sdDept where DeptCode='"+m_EmployeeDept+"'");
Query->Open();
if(Query->RecordCount==0)
{
Query->Close();
throw Exception("部门编码:"+m_EmployeeDept+"不存在");
}
Query->Close();
}
AnsiString m_EmployeeRank;
m_EmployeeRank=GetMasterValue("EmployeeRank");
if(m_EmployeeRank.IsEmpty())
throw Exception("员工的职务不能为空");
if(m_EmployeeRank.Length()>18)
throw Exception("员工的职务的长度不能大于18");
AnsiString m_EmployeeTow;
m_EmployeeTow=GetMasterValue("EmployeeTow");
AnsiString m_EmployeeShop;
AnsiString b_EmployeeShop;
m_EmployeeShop=GetMasterValue("EmployeeShop");
b_EmployeeShop=GetMasterOldValue("EmployeeShop");
if(GetMasterValue("EmployeeDept").IsEmpty())
throw Exception("员工所在的部门不能为空");
if(!m_EmployeeShop.IsEmpty() && UpperCase(m_EmployeeShop)!=b_EmployeeShop.UpperCase())
{
Query->Close();
Query->SQL->Clear();
Query->SQL->Add("select * from sdShop where ShopDeptCode='"+GetMasterValue("EmployeeDept")+"' and ShopCode='"+m_EmployeeShop+"'");
Query->Open();
if(Query->RecordCount<1)
{
Query->Close();
throw Exception("部门:"+GetMasterValue("EmployeeDept")+"不存在车间:"+GetMasterValue("EmployeeShop")+"");
}
Query->Close();
}
AnsiString m_EmployeeTeam;
AnsiString b_EmployeeTeam;
m_EmployeeTeam=GetMasterValue("EmployeeTeam");
b_EmployeeTeam=GetMasterOldValue("EmployeeTeam");
if(!GetMasterValue("EmployeeShop").IsEmpty())
{
if(!m_EmployeeTeam.IsEmpty() && UpperCase(m_EmployeeTeam)!=b_EmployeeTeam.UpperCase())
{
Query->Close();
Query->SQL->Clear();
Query->SQL->Add("select * from sdTeam where TeamShopCode='"+GetMasterValue("EmployeeShop")+"' and TeamCode='"+m_EmployeeTeam+"'");
Query->Open();
if(Query->RecordCount<1)
{
Query->Close();
throw Exception("车间:"+GetMasterValue("EmployeeShop")+"不存在班组:"+m_EmployeeTeam+"");
}
Query->Close();
}
}
AnsiString m_EmployeeCdate;
m_EmployeeCdate=GetMasterValue("EmployeeCdate");
if(m_EmployeeCdate.IsEmpty())
throw Exception("员工入职日期不能为空");
int m_EmployeeWct;
m_EmployeeWct=GetMasterValue("EmployeeWct");
if(m_EmployeeWct!=1 && m_EmployeeWct!=2)
throw Exception("员工工资核算的类别只能为(1-计时,2-计件)");
AnsiString m_EmployeeUser;
m_EmployeeUser=GetMasterValue("EmployeeUser");
if(m_EmployeeUser.IsEmpty())
throw Exception("制单人不能为空");
}
//---------------------------------------------------------------------------
void __fastcall TKSEmployee::CmdExec(AnsiString Param)
{
}
//---------------------------------------------------------------------------
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -