📄 hmhdl.cpp
字号:
m_StoredProc->Parameters->CreateParameter("@TransState",ftInteger,pdInput,1,m_TransState);
m_StoredProc->Parameters->CreateParameter("@TransferDesc",ftString,pdInput,40,m_TransferDesc);
m_StoredProc->Parameters->CreateParameter("@TransferUser",ftString,pdInput,18,m_TransferUser);
m_StoredProc->Parameters->CreateParameter("@TransferMgr",ftString,pdInput,18,m_TransferMgr);
m_StoredProc->Parameters->CreateParameter("@TransferSysDate",ftString,pdOutput,30,m_TransferSysDate);
m_StoredProc->ExecProc();
m_TransferCode=m_StoredProc->Parameters->ParamValues["@TransferCode"];
m_TransferSysDate=m_StoredProc->Parameters->ParamValues["@TransferSysDate"];
}
else
{
m_StoredProc->ProcedureName="sdTransfer_Update";
m_StoredProc->Parameters->Clear();
m_StoredProc->Parameters->CreateParameter("@W_TransferCode",ftString,pdInput,18,b_TransferCode);
m_StoredProc->Parameters->CreateParameter("@TransferCode",ftString,pdInput,18,m_TransferCode);
m_StoredProc->Parameters->CreateParameter("@TransferEmployee",ftString,pdInput,18,m_TransferEmployee);
m_StoredProc->Parameters->CreateParameter("@TransferDate",ftString,pdInput,10,m_TransferDate);
m_StoredProc->Parameters->CreateParameter("@TransferEdate",ftString,pdInput,10,m_TransferEdate);
m_StoredProc->Parameters->CreateParameter("@TransferODept",ftString,pdInput,18,m_TransferODept);
m_StoredProc->Parameters->CreateParameter("@TransferOShop",ftString,pdInput,18,m_TransferOShop);
m_StoredProc->Parameters->CreateParameter("@TransferTeam",ftString,pdInput,18,m_TransferTeam);
m_StoredProc->Parameters->CreateParameter("@TransIDept",ftString,pdInput,18,m_TransIDept);
m_StoredProc->Parameters->CreateParameter("@TransferIShop",ftString,pdInput,18,m_TransferIShop);
m_StoredProc->Parameters->CreateParameter("@TransferITeam",ftString,pdInput,18,m_TransferITeam);
m_StoredProc->Parameters->CreateParameter("@TransState",ftInteger,pdInput,1,m_TransState);
m_StoredProc->Parameters->CreateParameter("@TransferDesc",ftString,pdInput,40,m_TransferDesc);
m_StoredProc->Parameters->CreateParameter("@TransferUser",ftString,pdInput,18,m_TransferUser);
m_StoredProc->Parameters->CreateParameter("@TransferMgr",ftString,pdInput,18,m_TransferMgr);
m_StoredProc->Parameters->CreateParameter("@TransferSysDate",ftString,pdOutput,30,m_TransferSysDate);
m_StoredProc->ExecProc();
m_TransferSysDate=m_StoredProc->Parameters->ParamValues["@TransferSysDate"];
}
m_StoredProc->Close();
TsdTransfer *p=new TsdTransfer();
if(CurStatus==2)
{
SetActionID(1);
p->Assign(this);
AddRecord((void *)p,p->TransferCode);
}
else
{
SetActionID(1);
p->Assign(this);
ChangeRecord((void *)p,p->TransferCode,this->b_TransferCode);
}
}
//---------------------------------------------------------------------------
void TsdTransfer::Delete()
{
if(CurStatus!=1)
throw Exception("当前状态不能进行删除操作!");
if(m_TransferCode.IsEmpty()==true)
throw Exception("当前没有记录可以删除!");
m_StoredProc->Close();
m_StoredProc->ProcedureName="sdTransfer_Delete";
m_StoredProc->Parameters->Clear();
m_StoredProc->Parameters->CreateParameter("@W_TransferCode",ftString,pdInput,18,b_TransferCode);
m_StoredProc->ExecProc();
m_StoredProc->Close();
DeleteRecord(this->b_TransferCode);
}
//---------------------------------------------------------------------------
void TsdTransfer::Assign(TsdTransfer *p)
{
this->SetActionID(p->CurStatus);
this->m_TransferCode=p->m_TransferCode;
this->m_TransferEmployee=p->m_TransferEmployee;
this->m_TransferDate=p->m_TransferDate;
this->m_TransferEdate=p->m_TransferEdate;
this->m_TransferODept=p->m_TransferODept;
this->m_TransferOShop=p->m_TransferOShop;
this->m_TransferTeam=p->m_TransferTeam;
this->m_TransIDept=p->m_TransIDept;
this->m_TransferIShop=p->m_TransferIShop;
this->m_TransferITeam=p->m_TransferITeam;
this->m_TransState=p->m_TransState;
this->m_TransferDesc=p->m_TransferDesc;
this->m_TransferUser=p->m_TransferUser;
this->m_TransferMgr=p->m_TransferMgr;
this->m_TransferSysDate=p->m_TransferSysDate;
this->BackupValue();
}
//---------------------------------------------------------------------------
void TsdTransfer::AssignValue()
{
TsdTransfer *p=(TsdTransfer *)Records(CurRecNo);
Assign(p);
}
//---------------------------------------------------------------------------
int TsdTransfer::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();
TsdTransfer *p=new TsdTransfer();
SetActionID(1);
p->Assign(this);
AddRecord((void *)p,p->TransferCode);
m_Query->Next();
}
MoveFirst();
}
m_Query->Close();
return Count;
}
//---------------------------------------------------------------------------
bool TsdTransfer::Find(AnsiString WhereStr)
{
AnsiString m_SqlStr;
if(WhereStr.IsEmpty()==true)
throw Exception("查找表达式不能为空");
m_SqlStr="select * from sdTransfer 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;
}
}
//**************************************
// TsdTap
//**************************************
//--------------------------------------------------------------
void __fastcall TsdTap:: SetTapCode(AnsiString value)
{
if(value.IsEmpty())
throw Exception("调职单号不能为空");
if(value.UpperCase()!=m_TapCode.UpperCase())
{
m_Query->Close();
m_Query->SQL->Clear();
m_Query->SQL->Add("select TapCode from sdTap where TapCode='"+value+"'");
m_Query->Open();
if(m_Query->RecordCount >0)
{
m_Query->Close();
throw Exception("该调职单号'"+value+"'已存在");
}
m_Query->Close();
}
m_TapCode=value;
}
void __fastcall TsdTap:: SetTapEmployee(AnsiString value)
{
if(value.IsEmpty())
throw Exception("员工编号不能为空!");
if(value!=m_TapEmployee)
{
m_Query->Close();
m_Query->SQL->Clear();
m_Query->SQL->Add("select EmployeeCode,EmployeeRank,EmployeeShop,EmployeeTeam from sdEmployee where EmployeeCode='"+value+"' and EmployeeState=0");
m_Query->Open();
if(m_Query->RecordCount<1)
{
m_Query->Close();
throw Exception("该员工号'"+value+"'不存在或已离职");
}
m_TapORank=m_Query->FieldValues["EmployeeRank"];
m_TapOShop=m_Query->FieldValues["EmployeeShop"];
m_TapOTeam=m_Query->FieldValues["EmployeeTeam"];
m_Query->Close();
m_TapEmployee=value;
}
}
void __fastcall TsdTap:: SetTapDate(AnsiString value)
{
if(value.IsEmpty())
throw Exception("制单日期不能为空!");
m_TapDate=Validate(value);
}
void __fastcall TsdTap:: SetTapEdate(AnsiString value)
{
if(value.IsEmpty())
throw Exception("生效日期不能为空!");
m_TapEdate=Validate(value);
}
void __fastcall TsdTap:: SetTapORank(AnsiString value)
{
if(value.IsEmpty())
throw Exception("原职位不能为空!");
m_TapORank=value;
}
void __fastcall TsdTap:: SetTapOShop(AnsiString value)
{
m_TapOShop=value;
}
void __fastcall TsdTap:: SetTapOTeam(AnsiString value)
{
m_TapOTeam=value;
}
void __fastcall TsdTap:: SetTapNRank(AnsiString value)
{
if(value.IsEmpty())
throw Exception("新职位不能为空!");
m_TapNRank=value;
}
void __fastcall TsdTap:: SetTapNShop(AnsiString value)
{
m_TapNShop=value;
}
void __fastcall TsdTap:: SetTapNTeam(AnsiString value)
{
if(!value.IsEmpty()&&value!=m_TapNTeam)
{
m_Query->Close();
m_Query->SQL->Clear();
m_Query->SQL->Add("select * from sdTeam where TeamShopCode='"+m_TapNShop+"' and TeamCode='"+value+"'");
m_Query->Open();
if(m_Query->RecordCount<1)
{
m_Query->Close();
throw Exception("该车间"+m_TapNShop+"没有编号为:"+value+"的班组!");
}
m_Query->Close();
}
m_TapNTeam=value;
}
void __fastcall TsdTap:: SetTapDesc(AnsiString value)
{
m_TapDesc=value;
}
void __fastcall TsdTap:: SetTapUser(AnsiString value)
{
m_TapUser=value;
}
void __fastcall TsdTap:: SetTapState(int value)
{
if(value<0||value>5)
throw Exception("调职单状态非法");
m_TapState=value;
}
void __fastcall TsdTap:: SetTapMgr(AnsiString value)
{
if(value.IsEmpty())
throw Exception("主管不能为空!");
m_TapMgr=value;
}
//---------------------------------------------------------------------------
AnsiString TsdTap::GetFieldValue(euTap sdFieldName)
{
switch(sdFieldName)
{
case fiTapCode:
return TapCode;
case fiTapEmployee:
return TapEmployee;
case fiTapDate:
return TapDate;
case fiTapEdate:
return TapEdate;
case fiTapORank:
return TapORank;
case fiTapOShop:
return TapOShop;
case fiTapOTeam:
return TapOTeam;
case fiTapNRank:
return TapNRank;
case fiTapNShop:
return TapNShop;
case fiTapNTeam:
return TapNTeam;
case fiTapDesc:
return TapDesc;
case fiTapState:
return TapState;
case fiTapUser:
return TapUser;
case fiTapMgr:
return TapMgr;
case fiTapSysDate:
return TapSysDate;
}
throw Exception("当前字段未定义可取值");
}
//---------------------------------------------------------------------------
void TsdTap::SetFieldValue(euTap sdFieldName, AnsiString value)
{
value=Trim(value);
switch(sdFieldName)
{
case fiTapCode:
TapCode=value;
break;
case fiTapEmployee:
TapEmployee=value;
break;
case fiTapDate:
TapDate=value;
break;
case fiTapEdate:
TapEdate=value;
break;
case fiTapORank:
TapORank=value;
break;
case fiTapOShop:
TapOShop=value;
break;
case fiTapOTeam:
TapOTeam=value;
break;
case fiTapNRank:
TapNRank=value;
break;
case fiTapNShop:
TapNShop=value;
break;
case fiTapNTeam:
TapNTeam=value;
break;
case fiTapDesc:
TapDesc=value;
break;
case fiTapUser:
TapUser=value;
break;
case fiTapState:
TapState=value.ToInt();
break;
case fiTapMgr:
TapMgr=value;
break;
default:
throw Exception("当前字段未定义可赋值");
}
}
//---------------------------------------------------------------------------
TsdTap::TsdTap(TDataComm *DC)
:TsdStandard(DC)
{
try
{
QueryString="SELECT * FROM sdTap";
FilterString="";
OrderString="TapCode";
EmptyValue(0);
EmptyValue(1);
}
catch(Exception &e)
{
ShowMessage(e.Message);
}
}
TsdTap::TsdTap()
:TsdStandard()
{
try
{
QueryString="SELECT * FROM sdTap";
FilterString="";
OrderString="TapCode";
EmptyValue(0);
EmptyValue(1);
}
catch(Exception &e)
{
ShowMessage(e.Message);
}
}
//---------------------------------------------------------------------------
TsdTap::~TsdTap()
{
try{
}
catch(...)
{
throw Exception("析构函数出错");
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -