📄 emdoc.cpp
字号:
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;
}
}
//**************************************
// TKSFacs 卡片样式
//**************************************
//--------------------------------------------------------------
void __fastcall TKSFacs:: SetFacsCode(AnsiString value)
{
if(value.IsEmpty())
throw Exception("样式代码不能为空!");
if(value.Length()>18)
throw Exception("样式代码长度不能大于18");
if(value!=m_FacsCode)
{
m_Query->Close();
m_Query->SQL->Clear();
m_Query->SQL->Add("SELECT facscode FROM sdfacs WHERE facscode='" +value+"'");
m_Query->Open();
if(m_Query->RecordCount>0)
{
m_Query->Close();
throw Exception("样式代码'"+value+"'已存在");
}
m_Query->Close();
}
m_FacsCode=value;
}
void __fastcall TKSFacs:: SetFacsName(AnsiString value)
{
if(value.IsEmpty())
throw Exception("样式名称不能为空!");
if(value.Length()>20)
throw Exception("样式名称长度不能大于20");
if(value!=m_FacsName)
{
m_Query->Close();
m_Query->SQL->Clear();
m_Query->SQL->Add("SELECT facsname FROM sdfacs WHERE facsname='" +value+"'");
m_Query->Open();
if(m_Query->RecordCount>0)
{
m_Query->Close();
throw Exception("样式名称'"+value+"'已存在");
}
m_Query->Close();
}
m_FacsName=value;
}
void __fastcall TKSFacs:: SetFacsPath(AnsiString value)
{
if(value.Length()>80)
throw Exception("样式路径长度不能大于80");
m_FacsPath=value;
}
void __fastcall TKSFacs:: SetFacsDesc(AnsiString value)
{
if(value.Length()>40)
throw Exception("备注长度不能大于40");
m_FacsDesc=value;
}
//---------------------------------------------------------------------------
AnsiString TKSFacs::GetFieldValue(euFacs sdFieldName)
{
switch(sdFieldName)
{
case fiFacsCode:
return FacsCode;
case fiFacsName:
return FacsName;
case fiFacsPath:
return FacsPath;
case fiFacsDesc:
return FacsDesc;
default:
throw Exception("当前未定义可取值");
}
}
//---------------------------------------------------------------------------
void TKSFacs::SetFieldValue(euFacs sdFieldName, AnsiString value)
{
switch(sdFieldName)
{
case fiFacsCode:
FacsCode=value;
break;
case fiFacsName:
FacsName=value;
break;
case fiFacsPath:
FacsPath=value;
break;
case fiFacsDesc:
FacsDesc=value;
break;
default:
throw Exception("当前字段未定义可赋值");
}
}
//---------------------------------------------------------------------------
TKSFacs::TKSFacs(TDataComm *DC)
:TKSStandard(DC)
{
try
{
EmptyValue(0);
EmptyValue(1);
QueryString="SELECT * FROM sdFacs";
FilterString="";
OrderString="FacsCode";
}
catch(Exception &e)
{
ShowMessage(e.Message);
}
}
//---------------------------------------------------------------------------
TKSFacs::TKSFacs()
:TKSStandard()
{
try
{
EmptyValue(0);
EmptyValue(1);
QueryString="SELECT * FROM sdFacs";
FilterString="";
OrderString="FacsCode";
}
catch(Exception &e)
{
ShowMessage(e.Message);
}
}
//---------------------------------------------------------------------------
TKSFacs::~TKSFacs()
{
try{
}
catch(...)
{
throw Exception("析构函数出错");
}
}
//---------------------------------------------------------------------------
void TKSFacs::BackupValue()
{
b_FacsCode=m_FacsCode;
b_FacsName=m_FacsName;
b_FacsPath=m_FacsPath;
b_FacsDesc=m_FacsDesc;
}
//---------------------------------------------------------------------------
void TKSFacs::RestoreValue()
{
m_FacsCode=b_FacsCode;
m_FacsName=b_FacsName;
m_FacsPath=b_FacsPath;
m_FacsDesc=b_FacsDesc;
}
//---------------------------------------------------------------------------
void TKSFacs::EmptyValue(int Index)
{
switch(Index)
{
case 0:
m_FacsCode="";
m_FacsName="";
m_FacsPath="";
m_FacsDesc="";
break;
case 1:
b_FacsCode="";
b_FacsName="";
b_FacsPath="";
b_FacsDesc="";
break;
}
}
//---------------------------------------------------------------------------
void TKSFacs::BatchLetValue()
{
m_FacsCode=m_Query->FieldValues["FacsCode"];
m_FacsName=m_Query->FieldValues["FacsName"];
m_FacsPath=m_Query->FieldValues["FacsPath"];
m_FacsDesc=m_Query->FieldValues["FacsDesc"];
BackupValue();
}
//---------------------------------------------------------------------------
void TKSFacs::Update()
{
if(CurStatus==0||CurStatus==1)
throw Exception("当前不是编辑状态,不能进行存盘操作!");
if(m_FacsCode.IsEmpty()==true)
throw Exception("单号不能为空!");
m_StoredProc->Close();
if(CurStatus==2||CurStatus==4)
{
m_StoredProc->ProcedureName="sdFacs_Insert";
m_StoredProc->Parameters->Clear();
m_StoredProc->Parameters->CreateParameter("@FacsCode",ftString,pdInput,18,m_FacsCode);
m_StoredProc->Parameters->CreateParameter("@FacsName",ftString,pdInput,20,m_FacsName);
m_StoredProc->Parameters->CreateParameter("@FacsPath",ftString,pdInput,80,m_FacsPath);
m_StoredProc->Parameters->CreateParameter("@FacsDesc",ftString,pdInput,40,m_FacsDesc);
m_StoredProc->ExecProc();
m_StoredProc->Close();
}
else
{
m_StoredProc->ProcedureName="sdFacs_Update";
m_StoredProc->Parameters->Clear();
m_StoredProc->Parameters->CreateParameter("@W_FacsCode",ftString,pdInput,18,b_FacsCode);
m_StoredProc->Parameters->CreateParameter("@FacsCode",ftString,pdInput,18,m_FacsCode);
m_StoredProc->Parameters->CreateParameter("@FacsName",ftString,pdInput,20,m_FacsName);
m_StoredProc->Parameters->CreateParameter("@FacsPath",ftString,pdInput,80,m_FacsPath);
m_StoredProc->Parameters->CreateParameter("@FacsDesc",ftString,pdInput,40,m_FacsDesc);
m_StoredProc->ExecProc();
m_StoredProc->Close();
}
TKSFacs *p=new TKSFacs();
if(CurStatus==2)
{
SetActionID(1);
p->Assign(this);
AddRecord((void *)p,p->FacsCode);
}
else
{
SetActionID(1);
p->Assign(this);
ChangeRecord((void *)p,p->FacsCode,this->b_FacsCode);
}
}
//---------------------------------------------------------------------------
void TKSFacs::Delete()
{
if(CurStatus!=1)
throw Exception("当前状态不能进行删除操作!");
if(m_FacsCode.IsEmpty()==true)
throw Exception("当前没有记录可以删除!");
m_StoredProc->Close();
m_StoredProc->ProcedureName="sdFacs_Delete";
m_StoredProc->Parameters->Clear();
m_StoredProc->Parameters->CreateParameter("@W_FacsCode",ftString,pdInput,18,b_FacsCode);
m_StoredProc->ExecProc();
m_StoredProc->Close();
DeleteRecord(this->b_FacsCode);
}
//---------------------------------------------------------------------------
void TKSFacs::Assign(TKSFacs *p)
{
this->SetActionID(p->CurStatus);
this->m_FacsCode=p->m_FacsCode;
this->m_FacsName=p->m_FacsName;
this->m_FacsPath=p->m_FacsPath;
this->m_FacsDesc=p->m_FacsDesc;
this->BackupValue();
}
//---------------------------------------------------------------------------
void TKSFacs::AssignValue()
{
TKSFacs *p=(TKSFacs *)Records(CurRecNo);
Assign(p);
}
//---------------------------------------------------------------------------
int TKSFacs::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();
TKSFacs *p=new TKSFacs();
SetActionID(1);
p->Assign(this);
AddRecord((void *)p,p->FacsCode);
m_Query->Next();
}
MoveFirst();
}
m_Query->Close();
return Count;
}
//---------------------------------------------------------------------------
bool TKSFacs::Find(AnsiString WhereStr)
{
AnsiString m_SqlStr;
if(WhereStr.IsEmpty()==true)
throw Exception("查找表达式不能为空");
m_SqlStr="select * from sdFacs 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;
}
}
//**************************************
// TKSFadm 折旧方法
//**************************************
//--------------------------------------------------------------
void __fastcall TKSFadm:: SetFadmCode(AnsiString value)
{
if(value.IsEmpty())
throw Exception("折旧方法代码不能为空");
if(value.Length()>18)
throw Exception("折旧方法代码长度不能大于18");
if(value!=m_FadmCode)
{
m_Query->Close();
m_Query->SQL->Clear();
m_Query->SQL->Add("SELECT fadmcode FROM sdfadm WHERE fadmcode='" +value+"'");
m_Query->Open();
if(m_Query->RecordCount>0)
{
m_Query->Close();
throw Exception("折旧方法代码'"+value+"'已存在");
}
m_Query->Close();
}
m_FadmCode=value;
}
void __fastcall TKSFadm:: SetFadmName(AnsiString value)
{
if(value.IsEmpty())
throw Exception("折旧方法名称不能为空");
if(value.Length()>20)
throw Exception("折旧方法名称长度不能大于20");
if(value!=m_FadmName)
{
m_Query->Close();
m_Query->SQL->Clear();
m_Query->SQL->Add("SELECT fadmname FROM sdfadm WHERE fadmname='" +value+"'");
m_Query->Open();
if(m_Query->RecordCount>0)
{
m_Query->Close();
throw Exception("折旧方法名称'"+value+"'已存在");
}
m_Query->Close();
}
m_FadmName=value;
}
void __fastcall TKSFadm:: SetFadmType(int value)
{
if(value!=1&&value!=2)
throw Exception("折旧方式只能取值 1-折旧率, 2-折旧额");
m_FadmType=value;
}
void __fastcall TKSFadm:: SetFadmRFormula(AnsiString value)
{
if(m_FadmType==1)
{
if(value.IsEmpty())
throw Exception("折旧率不能为空");
if(value.Length()>255)
throw Exception("折旧率长度不能大于255");
m_FadmRFormula=value;
}
else
m_FadmRFormula="";
}
void __fastcall TKSFadm:: SetFadmVFormula(AnsiString value)
{
if(m_FadmType==2)
{
if(value.IsEmpty())
throw Exception("折旧额不能为空");
if(value.Length()>255)
throw Exception("折旧额长度不能大于255");
m_FadmVFormula=value;
}
else
m_FadmVFormula="";
}
void __fastcall TKSFadm:: SetFadmDesc(AnsiString value)
{
if(value.Length()>40)
throw Exception("备注长度不能大于40");
m_FadmDesc=value;
}
//---------------------------------------------------------------------------
AnsiString TKSFadm::GetFieldValue(euFadm sdFieldName)
{
switch(sdFieldName)
{
case fiFadmCode:
return FadmCode;
case fiFadmName:
return FadmName;
case fiFadmType:
return FadmType;
case fiFadmRFormula:
return FadmRFormula;
case fiFadmVFormula:
return FadmVFormula;
case fiFadmDesc:
return FadmDesc;
default:
throw Exception("当前未定义可取值");
}
}
//---------------------------------------------------------------------------
void TKSFadm::SetFieldValue(euFadm sdFieldName, AnsiString value)
{
switch(sdFieldName)
{
case fiFadmCode:
FadmCode=value;
break;
case fiFadmName:
FadmName=value;
break;
case fiFadmType:
FadmType=value.ToInt();
break;
case fiFadmRFormula:
FadmRFormula=value;
break;
case fiFadmVFormula:
FadmVFormula=value;
break;
case fiFadmDesc:
FadmDesc=value;
break;
default:
throw Exception("当前字段未定义可赋值");
}
}
//---------------------------------------------------------------------------
TKSFadm::TKSFadm(TDataComm *DC)
:TKSStandard(DC)
{
try
{
EmptyValue(0);
EmptyValue(1);
QueryString="SELECT * FROM sdFadm";
FilterString="";
OrderString="FadmCode";
}
catch(Exception &e)
{
ShowMessage(e.Message);
}
}
//---------------------------------------------------------------------------
TKSFadm::TKSFadm()
:TKSStandard()
{
try
{
EmptyValue(0);
EmptyValue(1);
QueryString="SELECT * FROM sdFadm";
FilterString="";
OrderString="FadmCode";
}
catch(Exception &e)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -