📄 hmhdl.cpp
字号:
}
}
//---------------------------------------------------------------------------
void TsdTap::BackupValue()
{
b_TapCode=m_TapCode;
b_TapEmployee=m_TapEmployee;
b_TapDate=m_TapDate;
b_TapEdate=m_TapEdate;
b_TapORank=m_TapORank;
b_TapOShop=m_TapOShop;
b_TapOTeam=m_TapOTeam;
b_TapNRank=m_TapNRank;
b_TapNShop=m_TapNShop;
b_TapNTeam=m_TapNTeam;
b_TapDesc=m_TapDesc;
b_TapState=m_TapState;
b_TapUser=m_TapUser;
b_TapMgr=m_TapMgr;
b_TapSysDate=m_TapSysDate;
}
//---------------------------------------------------------------------------
void TsdTap::RestoreValue()
{
m_TapCode=b_TapCode;
m_TapEmployee=b_TapEmployee;
m_TapDate=b_TapDate;
m_TapEdate=b_TapEdate;
m_TapORank=b_TapORank;
m_TapOShop=b_TapOShop;
m_TapOTeam=b_TapOTeam;
m_TapNRank=b_TapNRank;
m_TapNShop=b_TapNShop;
m_TapNTeam=b_TapNTeam;
m_TapDesc=b_TapDesc;
m_TapState=b_TapState;
m_TapUser=b_TapUser;
m_TapMgr=b_TapMgr;
m_TapSysDate=b_TapSysDate;
}
//---------------------------------------------------------------------------
void TsdTap::EmptyValue(int Index)
{
switch(Index)
{
case 0:
m_TapCode="";
m_TapEmployee="";
m_TapDate="";
m_TapEdate="";
m_TapORank="";
m_TapOShop="";
m_TapOTeam="";
m_TapNRank="";
m_TapNShop="";
m_TapNTeam="";
m_TapDesc="";
m_TapState=0;
m_TapUser="";
m_TapMgr="";
m_TapSysDate="";
break;
case 1:
b_TapCode="";
b_TapEmployee="";
b_TapDate="";
b_TapEdate="";
b_TapORank="";
b_TapOShop="";
b_TapOTeam="";
b_TapNRank="";
b_TapNShop="";
b_TapNTeam="";
b_TapDesc="";
b_TapState=0;
b_TapUser="";
b_TapMgr="";
b_TapSysDate="";
break;
}
}
//---------------------------------------------------------------------------
void TsdTap::BatchLetValue()
{
m_TapCode=m_Query->FieldValues["TapCode"];
m_TapEmployee=m_Query->FieldValues["TapEmployee"];
m_TapDate=m_Query->FieldValues["TapDate"];
m_TapEdate=m_Query->FieldValues["TapEdate"];
m_TapORank=m_Query->FieldValues["TapORank"];
m_TapOShop=m_Query->FieldValues["TapOShop"];
m_TapOTeam=m_Query->FieldValues["TapOTeam"];
m_TapNRank=m_Query->FieldValues["TapNRank"];
m_TapNShop=m_Query->FieldValues["TapNShop"];
m_TapNTeam=m_Query->FieldValues["TapNTeam"];
m_TapDesc=m_Query->FieldValues["TapDesc"];
m_TapState=m_Query->FieldValues["TapState"];
m_TapUser=m_Query->FieldValues["TapUser"];
m_TapMgr=m_Query->FieldValues["TapMgr"];
m_TapSysDate=m_Query->FieldValues["TapSysDate"];
BackupValue();
}
//---------------------------------------------------------------------------
void TsdTap::Update()
{
if(CurStatus==0||CurStatus==1)
throw Exception("当前不是编辑状态,不能进行存盘操作!");
if(m_TapCode.IsEmpty()==true)
throw Exception("单号不能为空!");
m_StoredProc->Close();
if(CurStatus==2||CurStatus==4)
{
m_StoredProc->ProcedureName="sdTap_Insert";
m_StoredProc->Parameters->Clear();
m_StoredProc->Parameters->CreateParameter("@TapCode",ftString,pdInputOutput,18,m_TapCode);
m_StoredProc->Parameters->CreateParameter("@TapEmployee",ftString,pdInput,18,m_TapEmployee);
m_StoredProc->Parameters->CreateParameter("@TapDate",ftString,pdInput,10,m_TapDate);
m_StoredProc->Parameters->CreateParameter("@TapEdate",ftString,pdInput,10,m_TapEdate);
m_StoredProc->Parameters->CreateParameter("@TapORank",ftString,pdInput,18,m_TapORank);
m_StoredProc->Parameters->CreateParameter("@TapOShop",ftString,pdInput,18,m_TapOShop);
m_StoredProc->Parameters->CreateParameter("@TapOTeam",ftString,pdInput,18,m_TapOTeam);
m_StoredProc->Parameters->CreateParameter("@TapNRank",ftString,pdInput,18,m_TapNRank);
m_StoredProc->Parameters->CreateParameter("@TapNShop",ftString,pdInput,18,m_TapNShop);
m_StoredProc->Parameters->CreateParameter("@TapNTeam",ftString,pdInput,18,m_TapNTeam);
m_StoredProc->Parameters->CreateParameter("@TapDesc",ftString,pdInput,40,m_TapDesc);
m_StoredProc->Parameters->CreateParameter("@TapState",ftInteger,pdInput,1,m_TapState);
m_StoredProc->Parameters->CreateParameter("@TapUser",ftString,pdInput,18,m_TapUser);
m_StoredProc->Parameters->CreateParameter("@TapMgr",ftString,pdInput,18,m_TapMgr);
m_StoredProc->Parameters->CreateParameter("@TapSysDate",ftString,pdOutput,30,m_TapSysDate);
m_StoredProc->ExecProc();
m_TapCode=m_StoredProc->Parameters->ParamValues["@TapCode"];
m_TapSysDate=m_StoredProc->Parameters->ParamValues["@TapSysDate"];
}
else
{
m_StoredProc->ProcedureName="sdTap_Update";
m_StoredProc->Parameters->Clear();
m_StoredProc->Parameters->CreateParameter("@W_TapCode",ftString,pdInput,18,b_TapCode);
m_StoredProc->Parameters->CreateParameter("@TapCode",ftString,pdInput,18,m_TapCode);
m_StoredProc->Parameters->CreateParameter("@TapEmployee",ftString,pdInput,18,m_TapEmployee);
m_StoredProc->Parameters->CreateParameter("@TapDate",ftString,pdInput,10,m_TapDate);
m_StoredProc->Parameters->CreateParameter("@TapEdate",ftString,pdInput,10,m_TapEdate);
m_StoredProc->Parameters->CreateParameter("@TapORank",ftString,pdInput,18,m_TapORank);
m_StoredProc->Parameters->CreateParameter("@TapOShop",ftString,pdInput,18,m_TapOShop);
m_StoredProc->Parameters->CreateParameter("@TapOTeam",ftString,pdInput,18,m_TapOTeam);
m_StoredProc->Parameters->CreateParameter("@TapNRank",ftString,pdInput,18,m_TapNRank);
m_StoredProc->Parameters->CreateParameter("@TapNShop",ftString,pdInput,18,m_TapNShop);
m_StoredProc->Parameters->CreateParameter("@TapNTeam",ftString,pdInput,18,m_TapNTeam);
m_StoredProc->Parameters->CreateParameter("@TapDesc",ftString,pdInput,40,m_TapDesc);
m_StoredProc->Parameters->CreateParameter("@TapState",ftInteger,pdInput,1,m_TapState);
m_StoredProc->Parameters->CreateParameter("@TapUser",ftString,pdInput,18,m_TapUser);
m_StoredProc->Parameters->CreateParameter("@TapMgr",ftString,pdInput,18,m_TapMgr);
m_StoredProc->Parameters->CreateParameter("@TapSysDate",ftString,pdOutput,30,m_TapSysDate);
m_StoredProc->ExecProc();
m_TapSysDate=m_StoredProc->Parameters->ParamValues["@TapSysDate"];
}
m_StoredProc->Close();
TsdTap *p=new TsdTap();
if(CurStatus==2)
{
SetActionID(1);
p->Assign(this);
AddRecord((void *)p,p->TapCode);
}
else
{
SetActionID(1);
p->Assign(this);
ChangeRecord((void *)p,p->TapCode,this->b_TapCode);
}
}
//---------------------------------------------------------------------------
void TsdTap::Delete()
{
if(CurStatus!=1)
throw Exception("当前状态不能进行删除操作!");
if(m_TapCode.IsEmpty()==true)
throw Exception("当前没有记录可以删除!");
m_StoredProc->Close();
m_StoredProc->ProcedureName="sdTap_Delete";
m_StoredProc->Parameters->Clear();
m_StoredProc->Parameters->CreateParameter("@W_TapCode",ftString,pdInput,18,b_TapCode);
m_StoredProc->ExecProc();
m_StoredProc->Close();
DeleteRecord(this->b_TapCode);
}
//---------------------------------------------------------------------------
void TsdTap::Assign(TsdTap *p)
{
this->SetActionID(p->CurStatus);
this->m_TapCode=p->m_TapCode;
this->m_TapEmployee=p->m_TapEmployee;
this->m_TapDate=p->m_TapDate;
this->m_TapEdate=p->m_TapEdate;
this->m_TapORank=p->m_TapORank;
this->m_TapOShop=p->m_TapOShop;
this->m_TapOTeam=p->m_TapOTeam;
this->m_TapNRank=p->m_TapNRank;
this->m_TapNShop=p->m_TapNShop;
this->m_TapNTeam=p->m_TapNTeam;
this->m_TapDesc=p->m_TapDesc;
this->m_TapState=p->m_TapState;
this->m_TapUser=p->m_TapUser;
this->m_TapMgr=p->m_TapMgr;
this->m_TapSysDate=p->m_TapSysDate;
this->BackupValue();
}
//---------------------------------------------------------------------------
void TsdTap::AssignValue()
{
TsdTap *p=(TsdTap *)Records(CurRecNo);
Assign(p);
}
//---------------------------------------------------------------------------
int TsdTap::Query()
{
AnsiString m_SqlStr;
m_SqlStr=QueryString;
if(FilterString.IsEmpty()==false)
m_SqlStr=m_SqlStr+" where "+FilterString;
if(OrderString.IsEmpty()==false)
m_SqlStr=m_SqlStr+" Order by "+OrderString;
m_Query->Close();
m_Query->SQL->Clear();
m_Query->SQL->Add(m_SqlStr);
m_Query->Open();
ClearRecord();
if(m_Query->RecordCount>0)
{
m_Query->First();
while(!m_Query->Eof)
{
BatchLetValue();
TsdTap *p=new TsdTap();
SetActionID(1);
p->Assign(this);
AddRecord((void *)p,p->TapCode);
m_Query->Next();
}
MoveFirst();
}
m_Query->Close();
return Count;
}
//---------------------------------------------------------------------------
bool TsdTap::Find(AnsiString WhereStr)
{
AnsiString m_SqlStr;
if(WhereStr.IsEmpty()==true)
throw Exception("查找表达式不能为空");
m_SqlStr="select * from sdTap where "+WhereStr;
m_Query->Close();
m_Query->SQL->Clear();
m_Query->SQL->Add(m_SqlStr);
m_Query->Open();
if(m_Query->RecordCount!=1)
{
m_Query->Close();
return false;
}
else
{
BatchLetValue();
m_Query->Close();
return true;
}
}
//**************************************
// TsdLop
//**************************************
//--------------------------------------------------------------
void __fastcall TsdLop:: SetLopCode(AnsiString value)
{
if(value.IsEmpty())
throw Exception("离职单号不能为空");
if(value.UpperCase()!=m_LopCode.UpperCase())
{
m_Query->Close();
m_Query->SQL->Clear();
m_Query->SQL->Add("select LopCode from sdLop where LopCode='"+value+"'");
m_Query->Open();
if(m_Query->RecordCount >0)
{
m_Query->Close();
throw Exception("该离职单号'"+value+"'已存在");
}
m_Query->Close();
}
m_LopCode=value;
}
void __fastcall TsdLop:: SetLopEmployee(AnsiString value)
{
if(value.IsEmpty())
throw Exception("员工编号不能为空!");
if(value!=m_LopEmployee)
{
m_Query->Close();
m_Query->SQL->Clear();
m_Query->SQL->Add("select EmployeeCode from sdEmployee where EmployeeCode='"+value+"' and EmployeeState=0");
m_Query->Open();
if(m_Query->RecordCount<1)
{
m_Query->Close();
throw Exception("该员工号'"+value+"'不存在或已离职");
}
m_Query->Close();
m_LopEmployee=value;
}
}
void __fastcall TsdLop:: SetLopAdate(AnsiString value)
{
if(value.IsEmpty())
throw Exception("申请日期不能为空!");
m_LopAdate=Validate(value);
}
void __fastcall TsdLop:: SetLopRdate(AnsiString value)
{
if(value.IsEmpty())
throw Exception("要求离职日期不能为空!");
if(value<m_LopAdate)
throw Exception("要求离职日期不能小于申请日期");
m_LopRdate=Validate(value);
}
void __fastcall TsdLop:: SetLopLdate(AnsiString value)
{
if(value.IsEmpty())
throw Exception("实际离职日期不能为空!");
if(Validate(value)>FormatDateTime("YYYY-MM-DD",Date()))
throw Exception("实际离职日期应在录入日期之前");
if(Validate(value)<m_LopAdate)
throw Exception("实际离职日期不能小于申请日期");
m_LopLdate=Validate(value);
}
void __fastcall TsdLop:: SetLopCdate(AnsiString value)
{
if(value.IsEmpty())
throw Exception("批准日期不能为空!");
if(value<m_LopAdate)
throw Exception("批准日期不能小于申请日期");
m_LopCdate=Validate(value);
}
void __fastcall TsdLop:: SetLopMgr(AnsiString value)
{
if(value.IsEmpty())
throw Exception("主管不能为空!");
m_LopMgr=value;
}
void __fastcall TsdLop:: SetLopState(int value)
{
if(value<0||value>5)
throw Exception("状态值非法!");
m_LopState=value;
}
void __fastcall TsdLop:: SetLopUser(AnsiString value)
{
if(value.IsEmpty())
throw Exception("操作员代码不能为空");
m_LopUser=value;
}
void __fastcall TsdLop:: SetLopLr(AnsiString value)
{
if(value.IsEmpty())
throw Exception("离职代码不能为空");
m_LopLr=value;
}
void __fastcall TsdLop:: SetLopDesc(AnsiString value)
{
m_LopDesc=value;
}
//---------------------------------------------------------------------------
AnsiString TsdLop::GetFieldValue(euLop sdFieldName)
{
switch(sdFieldName)
{
case fiLopCode:
return LopCode;
case fiLopEmployee:
return LopEmployee;
case fiLopAdate:
return LopAdate;
case fiLopRdate:
return LopRdate;
case fiLopLdate:
return LopLdate;
case fiLopCdate:
return LopCdate;
case fiLopMgr:
return LopMgr;
case fiLopState:
return LopState;
case fiLopUser:
return LopUser;
case fiLopSyaDate:
return LopSyaDate;
case fiLopDesc:
return LopDesc;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -