📄 smdoc.cpp
字号:
m_SalerCode = value;
}
//---------------------------------------------------------------------------
void __fastcall TsdSaler::SetSalerCheck(int value)
{
if(value!=0 && value!=1)
throw Exception("审核标志只能取值0-无审核权限1-有审核权限");
m_SalerCheck = value;
}
//---------------------------------------------------------------------------
void __fastcall TsdSaler::SetSalerStop(int value)
{
if(value!=0 && value!=1)
throw Exception("中止权限只能取值0-无中止权限1-有中止权限");
m_SalerStop = value;
}
//---------------------------------------------------------------------------
void __fastcall TsdSaler::SetSalerCancel(int value)
{
if(value!=0 && value!=1)
throw Exception("取消权限只能取值 0-无取消权限1-有取消权限");
m_SalerCancel = value;
}
//---------------------------------------------------------------------------
void __fastcall TsdSaler::SetSalerClose(int value)
{
if(value!=0 && value!=1)
throw Exception("结清权限只能取值 0-无结清权限1-有结清权限");
m_SalerClose = value;
}
//---------------------------------------------------------------------------
void __fastcall TsdSaler::SetSalerPost(int value)
{
if(value!=0 && value!=1)
throw Exception("记帐权限只能取值 0-无记帐权限1-有记帐权限");
m_SalerPost = value;
}
void __fastcall TsdSaler::SetSalerTel(AnsiString value)
{
if(value.Length()>20)
throw Exception("电话长度不能大于20");
m_SalerTel=value;
}
void __fastcall TsdSaler::SetSalerBeepPage(AnsiString value)
{
if(value.Length()>20)
throw Exception("呼机长度不能大于20");
m_SalerBeepPage=value;
}
//---------------------------------------------------------------------------
TsdSaler::TsdSaler(TDataComm *DC)
:TsdStandard(DC)
{
try
{
QueryString="SELECT * FROM SDSaler";
FilterString="";
OrderString="SalerCODE";
EmptyValue(0);
EmptyValue(1);
}
catch(Exception &e)
{
throw Exception("构造函数出错");
}
}
TsdSaler::TsdSaler()
:TsdStandard()
{
try
{
QueryString="SELECT * FROM SDSaler";
FilterString="";
OrderString="SalerCODE";
EmptyValue(0);
EmptyValue(1);
}
catch(Exception &e)
{
throw Exception("构造函数出错");
}
}
//---------------------------------------------------------------------------
AnsiString TsdSaler::GetFieldValue(euSaler sdFieldName)
{
switch(sdFieldName)
{
case fiSalerCode:
return SalerCode;
case fiSalerCheck:
return AnsiString(SalerCheck);
case fiSalerStop:
return AnsiString(SalerStop);
case fiSalerCancel:
return AnsiString(SalerCancel);
case fiSalerClose:
return AnsiString(SalerClose);
case fiSalerPost:
return AnsiString(SalerPost);
case fiSalerTel:
return SalerTel;
case fiSalerBeepPage:
return SalerBeepPage;
default:
throw Exception("当前字段未定义可取值");
}
}
//---------------------------------------------------------------------------
void TsdSaler::SetFieldValue(euSaler sdFieldName, AnsiString Value)
{
Value=Trim(Value);
switch(sdFieldName)
{
case fiSalerCode:
SalerCode = Value;
break;
case fiSalerCheck:
SalerCheck = Value.ToInt();
break;
case fiSalerStop:
SalerStop = Value.ToInt();
break;
case fiSalerCancel:
SalerCancel = Value.ToInt();
break;
case fiSalerClose:
SalerClose = Value.ToInt();
break;
case fiSalerPost:
SalerPost = Value.ToInt();
break;
case fiSalerTel:
SalerTel=Value;
break;
case fiSalerBeepPage:
SalerBeepPage=Value;
break;
default:
throw Exception("当前字段未定义可赋值");
}
}
//---------------------------------------------------------------------------
void TsdSaler::Update()
{
if(CurStatus==0||CurStatus==1)
throw Exception("当前不是编辑状态,不能进行存盘操作!");
if(m_SalerCode.IsEmpty()==true)
throw Exception("销售员编码不能为空!");
m_StoredProc->Close();
if(CurStatus==2||CurStatus==4)
{
m_StoredProc->ProcedureName="sdSaler_Insert";
m_StoredProc->Parameters->Clear();
m_StoredProc->Parameters->CreateParameter("@SalerCode",ftString,pdInput,18,m_SalerCode);
m_StoredProc->Parameters->CreateParameter("@SalerCheck",ftInteger,pdInput,1,m_SalerCheck);
m_StoredProc->Parameters->CreateParameter("@SalerStop",ftInteger,pdInput,1,m_SalerStop);
m_StoredProc->Parameters->CreateParameter("@SalerCancel",ftInteger,pdInput,1,m_SalerCancel);
m_StoredProc->Parameters->CreateParameter("@SalerClose",ftInteger,pdInput,1,m_SalerClose);
m_StoredProc->Parameters->CreateParameter("@SalerPost",ftInteger,pdInput,1,m_SalerPost);
m_StoredProc->Parameters->CreateParameter("@SalerTel",ftString,pdInput,20,m_SalerTel);
m_StoredProc->Parameters->CreateParameter("@SalerBeepPage",ftString,pdInput,20,m_SalerBeepPage);
m_StoredProc->ExecProc();
}
else
{
m_StoredProc->ProcedureName="sdSaler_Update";
m_StoredProc->Parameters->Clear();
m_StoredProc->Parameters->CreateParameter("@W_SalerCode",ftString,pdInput,18,b_SalerCode);
m_StoredProc->Parameters->CreateParameter("@SalerCode",ftString,pdInput,18,m_SalerCode);
m_StoredProc->Parameters->CreateParameter("@SalerCheck",ftInteger,pdInput,1,m_SalerCheck);
m_StoredProc->Parameters->CreateParameter("@SalerStop",ftInteger,pdInput,1,m_SalerStop);
m_StoredProc->Parameters->CreateParameter("@SalerCancel",ftInteger,pdInput,1,m_SalerCancel);
m_StoredProc->Parameters->CreateParameter("@SalerClose",ftInteger,pdInput,1,m_SalerClose);
m_StoredProc->Parameters->CreateParameter("@SalerPost",ftInteger,pdInput,1,m_SalerPost);
m_StoredProc->Parameters->CreateParameter("@SalerTel",ftString,pdInput,20,m_SalerTel);
m_StoredProc->Parameters->CreateParameter("@SalerBeepPage",ftString,pdInput,20,m_SalerBeepPage);
m_StoredProc->ExecProc();
}
m_StoredProc->Close();
TsdSaler *p=new TsdSaler();
if(CurStatus==2)
{
SetActionID(1);
p->Assign(this);
AddRecord((void *)p,p->SalerCode);
}
else
{
SetActionID(1);
p->Assign(this);
ChangeRecord((void *)p,p->SalerCode,this->b_SalerCode);
}
}
//---------------------------------------------------------------------------
void TsdSaler::Delete()
{
if(CurStatus!=1)
throw Exception("当前状态不能进行删除操作!");
if(m_SalerCode.IsEmpty()==true)
throw Exception("当前没有记录可以删除!");
m_StoredProc->Close();
m_StoredProc->ProcedureName="sdSaler_Delete";
m_StoredProc->Parameters->Clear();
m_StoredProc->Parameters->CreateParameter("@W_SalerCode",ftString,pdInput,18,b_SalerCode);
m_StoredProc->ExecProc();
m_StoredProc->Close();
DeleteRecord(this->b_SalerCode);
}
//---------------------------------------------------------------------------
void TsdSaler::BackupValue()
{
b_SalerCode = m_SalerCode;
b_SalerCheck = m_SalerCheck;
b_SalerStop = m_SalerStop;
b_SalerCancel = m_SalerCancel;
b_SalerClose = m_SalerClose;
b_SalerPost = m_SalerPost;
b_SalerTel=m_SalerTel;
b_SalerBeepPage=m_SalerBeepPage;
}
//---------------------------------------------------------------------------
void TsdSaler::RestoreValue()
{
m_SalerCode = b_SalerCode;
m_SalerCheck = b_SalerCheck;
m_SalerStop = b_SalerStop;
m_SalerCancel = b_SalerCancel;
m_SalerClose = b_SalerClose;
m_SalerPost = b_SalerPost;
m_SalerTel=b_SalerTel;
m_SalerBeepPage=b_SalerBeepPage;
}
//---------------------------------------------------------------------------
void TsdSaler::EmptyValue(int Index)
{
switch(Index)
{
case 0:
m_SalerCode = "";
m_SalerCheck = 0;
m_SalerStop = 0;
m_SalerCancel = 0;
m_SalerClose = 0;
m_SalerPost = 0;
m_SalerTel="";
m_SalerBeepPage="";
break;
case 1:
b_SalerCode = "";
b_SalerCheck = 0;
b_SalerStop = 0;
b_SalerCancel = 0;
b_SalerClose = 0;
b_SalerPost = 0;
b_SalerTel="";
b_SalerBeepPage="";
break;
}
}
//---------------------------------------------------------------------------
void TsdSaler::BatchLetValue()
{
m_SalerCode = m_Query->FieldValues["SalerCode"];
m_SalerCheck = m_Query->FieldValues["SalerCheck"];
m_SalerStop = m_Query->FieldValues["SalerStop"];
m_SalerCancel = m_Query->FieldValues["SalerCancel"];
m_SalerClose = m_Query->FieldValues["SalerClose"];
m_SalerPost = m_Query->FieldValues["SalerPost"];
m_SalerTel=m_Query->FieldValues["SalerTel"];
m_SalerBeepPage=m_Query->FieldValues["SalerBeepPage"];
BackupValue();
}
//---------------------------------------------------------------------------
void TsdSaler::Assign(TsdSaler *p)
{
this->SetActionID(p->CurStatus);
this->m_SalerCode=p->m_SalerCode;
this->m_SalerCheck=p->m_SalerCheck;
this->m_SalerStop=p->m_SalerStop;
this->m_SalerCancel=p->m_SalerCancel;
this->m_SalerClose=p->m_SalerClose;
this->m_SalerPost=p->m_SalerPost;
this->m_SalerTel=p->m_SalerTel;
this->m_SalerBeepPage=p->m_SalerBeepPage;
this->BackupValue();
}
//---------------------------------------------------------------------------
void TsdSaler::AssignValue()
{
TsdSaler *p=(TsdSaler *)Records(CurRecNo);
Assign(p);
}
//---------------------------------------------------------------------------
int TsdSaler::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();
TsdSaler *p=new TsdSaler();
SetActionID(1);
p->Assign(this);
AddRecord((void *)p,p->SalerCode);
m_Query->Next();
}
MoveFirst();
}
m_Query->Close();
return Count;
}
//---------------------------------------------------------------------------
bool TsdSaler::Find(AnsiString WhereStr)
{
AnsiString m_SqlStr;
if(WhereStr.IsEmpty()==true)
throw Exception("查找表达式不能为空");
m_SqlStr="SELECT * FROM SDSaler 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;
}
}
//---------------------------------------------------------------------------
TsdSaler::~TsdSaler()
{
try{
}
catch(...)
{
throw Exception("析构函数出错");
}
}
//**************************************
// TsdSsd
//**************************************
//--------------------------------------------------------------
void __fastcall TsdSsd::SetSsdClient(AnsiString value)
{
if(value.IsEmpty())
throw Exception("客户编码不能为空");
if(value.Length()>18)
throw Exception("客户编码长度不能大于18");
if(value!=m_SsdClient)
{
m_Query->Close();
m_Query->SQL->Clear();
m_Query->SQL->Add("select clientcode from sdclient where clientcode='"+value+"'");
m_Query->Open();
if(m_Query->RecordCount<=0)
{
m_Query->Close();
throw Exception("客户编码:'"+value+"'未定义");
}
m_Query->Close();
}
m_SsdClient = value;
}
//---------------------------------------------------------------------------
void __fastcall TsdSsd::SetSsdCurrency(AnsiString value)
{
if(value.IsEmpty())
throw Exception("币种编码不能为空");
if(value.Length()>18)
throw Exception("币种编码长度不能大于18");
if(value!=m_SsdCurrency)
{
m_Query->Close();
m_Query->SQL->Clear();
m_Query->SQL->Add("Select currencycode from sdcurrency where currencycode='"+value+"'");
m_Query->Open();
if(m_Query->RecordCount<=0)
{
m_Query->Close();
throw Exception("币种编码:'"+value+"'未定义");
}
m_Query->Close();
m_Query->SQL->Clear();
m_Query->SQL->Add("Select * from sdSsd where Ssdcurrency='"+value+"' and SsdClient='"+m_SsdClient+"'");
m_Query->Open();
if(m_Query->RecordCount>0)
{
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -