📄 plnhdl.cpp
字号:
if(m_MirCheck == 0)
m_MirChecker="";
else
{
if(value.IsEmpty()==true)
throw Exception("审核人不能为空");
AnsiString m_SqlStr="select PlannerCode from sdPlanner where PlannerCheck=1 and PlannerCode='"+value+"'";
m_Query->Close();
m_Query->SQL->Clear();
m_Query->SQL->Add(m_SqlStr);
m_Query->Open();
if(m_Query->RecordCount <= 0)
{
m_Query->Close();
throw Exception("审核人'"+value+"'未定义或没有审核权限");
}
m_Query->Close();
m_MirChecker=value;
}
}
void __fastcall TsdMir:: SetMirCheckDate(AnsiString value)
{
if(m_MirCheck == 0)
m_MirCheckDate="";
else
{
if(value.IsEmpty()==true)
throw Exception("审核日期不能为空");
m_MirCheckDate=Validate(value);
}
}
void __fastcall TsdMir:: SetMirDesc(AnsiString value)
{
m_MirDesc=value;
}
void __fastcall TsdMir:: SetMirState(int value)
{
m_MirState=value;
}
void __fastcall TsdMir:: SetMirSysDate(AnsiString value)
{
m_MirSysDate=value;
}
//---------------------------------------------------------------------------
AnsiString TsdMir::GetFieldValue(euMir sdFieldName)
{
switch(sdFieldName)
{
case fiMirGoods:
return MirGoods;
case fiMirRDate:
return MirRDate;
case fiMirRQty:
return MirRQty;
case fiMirGQty:
return MirGQty;
case fiMirDate:
return MirDate;
case fiMirPlanner:
return MirPlanner;
case fiMirCheck:
return MirCheck;
case fiMirChecker:
return MirChecker;
case fiMirCheckDate:
return MirCheckDate;
case fiMirDesc:
return MirDesc;
case fiMirState:
return MirState;
case fiMirSysDate:
return MirSysDate;
}
return NULL;
}
//---------------------------------------------------------------------------
void TsdMir::SetFieldValue(euMir sdFieldName, AnsiString value)
{
value=Trim(value);
switch(sdFieldName)
{
case fiMirGoods:
MirGoods=value;
break;
case fiMirRDate:
MirRDate=value;
break;
case fiMirRQty:
MirRQty=value.ToDouble();
break;
case fiMirGQty:
MirGQty=value.ToDouble();
break;
case fiMirDate:
MirDate=value;
break;
case fiMirPlanner:
MirPlanner=value;
break;
case fiMirCheck:
MirCheck=value.ToInt();
break;
case fiMirChecker:
MirChecker=value;
break;
case fiMirCheckDate:
MirCheckDate=value;
break;
case fiMirDesc:
MirDesc=value;
break;
case fiMirState:
MirState=value.ToInt();
break;
case fiMirSysDate:
MirSysDate=value;
break;
}
}
//---------------------------------------------------------------------------
TsdMir::TsdMir(TDataComm *DC)
:TsdStandard(DC)
{
try
{
QueryString="SELECT * FROM sdMir";
FilterString="";
OrderString="MirGoods,MirRDate";
}
catch(Exception &e)
{
ShowMessage(e.Message);
}
}
//---------------------------------------------------------------------------
TsdMir::TsdMir()
:TsdStandard()
{
try
{
QueryString="SELECT * FROM sdMir";
FilterString="";
OrderString="MirGoods,MirRDate";
}
catch(Exception &e)
{
ShowMessage(e.Message);
}
}
//---------------------------------------------------------------------------
TsdMir::~TsdMir()
{
try{
}
catch(...)
{
throw Exception("析构函数出错");
}
}
//---------------------------------------------------------------------------
void TsdMir::BackupValue()
{
b_MirGoods=m_MirGoods;
b_MirRDate=m_MirRDate;
b_MirRQty=m_MirRQty;
b_MirGQty=m_MirGQty;
b_MirDate=m_MirDate;
b_MirPlanner=m_MirPlanner;
b_MirCheck=m_MirCheck;
b_MirChecker=m_MirChecker;
b_MirCheckDate=m_MirCheckDate;
b_MirDesc=m_MirDesc;
b_MirState=m_MirState;
b_MirSysDate=m_MirSysDate;
}
//---------------------------------------------------------------------------
void TsdMir::RestoreValue()
{
m_MirGoods=b_MirGoods;
m_MirRDate=b_MirRDate;
m_MirRQty=b_MirRQty;
m_MirGQty=b_MirGQty;
m_MirDate=b_MirDate;
m_MirPlanner=b_MirPlanner;
m_MirCheck=b_MirCheck;
m_MirChecker=b_MirChecker;
m_MirCheckDate=b_MirCheckDate;
m_MirDesc=b_MirDesc;
m_MirState=b_MirState;
m_MirSysDate=b_MirSysDate;
}
//---------------------------------------------------------------------------
void TsdMir::EmptyValue(int Index)
{
switch(Index)
{
case 0:
m_MirGoods="";
m_MirRDate="";
m_MirRQty=0;
m_MirGQty=0;
m_MirDate="";
m_MirPlanner="";
m_MirCheck=0;
m_MirChecker="";
m_MirCheckDate="";
m_MirDesc="";
m_MirState=0;
m_MirSysDate="";
break;
case 1:
b_MirGoods="";
b_MirRDate="";
b_MirRQty=0;
b_MirGQty=0;
b_MirDate="";
b_MirPlanner="";
b_MirCheck=0;
b_MirChecker="";
b_MirCheckDate="";
b_MirDesc="";
b_MirState=0;
b_MirSysDate="";
break;
}
}
//---------------------------------------------------------------------------
void TsdMir::BatchLetValue()
{
m_MirGoods=m_Query->FieldValues["MirGoods"];
m_MirRDate=m_Query->FieldValues["MirRDate"];
m_MirRQty=m_Query->FieldValues["MirRQty"];
m_MirGQty=m_Query->FieldValues["MirGQty"];
m_MirDate=m_Query->FieldValues["MirDate"];
m_MirPlanner=m_Query->FieldValues["MirPlanner"];
m_MirCheck=m_Query->FieldValues["MirCheck"];
m_MirChecker=m_Query->FieldValues["MirChecker"];
m_MirCheckDate=m_Query->FieldValues["MirCheckDate"];
m_MirDesc=m_Query->FieldValues["MirDesc"];
m_MirState=m_Query->FieldValues["MirState"];
m_MirSysDate=m_Query->FieldValues["MirSysDate"];
BackupValue();
}
//---------------------------------------------------------------------------
void TsdMir::Update()
{
if(CurStatus==0||CurStatus==1)
throw Exception("当前不是编辑状态,不能进行存盘操作!");
if(m_MirGoods.IsEmpty()==true)
throw Exception("单号不能为空!");
m_StoredProc->Close();
if(CurStatus==2||CurStatus==4)
{
m_StoredProc->ProcedureName="sdMir_Insert";
m_StoredProc->Parameters->Clear();
m_StoredProc->Parameters->CreateParameter("@MirGoods",ftString,pdInput,18,m_MirGoods);
m_StoredProc->Parameters->CreateParameter("@MirRDate",ftString,pdInput,10,m_MirRDate);
m_StoredProc->Parameters->CreateParameter("@MirRQty",ftFloat,pdInput,12,m_MirRQty);
m_StoredProc->Parameters->CreateParameter("@MirGQty",ftFloat,pdInput,12,m_MirGQty);
m_StoredProc->Parameters->CreateParameter("@MirDate",ftString,pdInput,10,m_MirDate);
m_StoredProc->Parameters->CreateParameter("@MirPlanner",ftString,pdInput,18,m_MirPlanner);
m_StoredProc->Parameters->CreateParameter("@MirCheck",ftInteger,pdInput,1,m_MirCheck);
m_StoredProc->Parameters->CreateParameter("@MirChecker",ftString,pdInput,18,m_MirChecker);
m_StoredProc->Parameters->CreateParameter("@MirCheckDate",ftString,pdInput,10,m_MirCheckDate);
m_StoredProc->Parameters->CreateParameter("@MirDesc",ftString,pdInput,40,m_MirDesc);
m_StoredProc->Parameters->CreateParameter("@MirState",ftInteger,pdInput,1,m_MirState);
m_StoredProc->Parameters->CreateParameter("@MirSysDate",ftString,pdOutput,30,m_MirSysDate);
m_StoredProc->ExecProc();
m_MirSysDate=m_StoredProc->Parameters->ParamValues["@MirSysDate"];
}
else
{
m_StoredProc->ProcedureName="sdMir_Update";
m_StoredProc->Parameters->Clear();
m_StoredProc->Parameters->CreateParameter("@W_MirGoods",ftString,pdInput,18,b_MirGoods);
m_StoredProc->Parameters->CreateParameter("@W_MirRDate",ftString,pdInput,10,b_MirRDate);
m_StoredProc->Parameters->CreateParameter("@MirGoods",ftString,pdInput,18,m_MirGoods);
m_StoredProc->Parameters->CreateParameter("@MirRDate",ftString,pdInput,10,m_MirRDate);
m_StoredProc->Parameters->CreateParameter("@MirRQty",ftFloat,pdInput,12,m_MirRQty);
m_StoredProc->Parameters->CreateParameter("@MirGQty",ftFloat,pdInput,12,m_MirGQty);
m_StoredProc->Parameters->CreateParameter("@MirDate",ftString,pdInput,10,m_MirDate);
m_StoredProc->Parameters->CreateParameter("@MirPlanner",ftString,pdInput,18,m_MirPlanner);
m_StoredProc->Parameters->CreateParameter("@MirCheck",ftInteger,pdInput,1,m_MirCheck);
m_StoredProc->Parameters->CreateParameter("@MirChecker",ftString,pdInput,18,m_MirChecker);
m_StoredProc->Parameters->CreateParameter("@MirCheckDate",ftString,pdInput,10,m_MirCheckDate);
m_StoredProc->Parameters->CreateParameter("@MirDesc",ftString,pdInput,40,m_MirDesc);
m_StoredProc->Parameters->CreateParameter("@MirState",ftInteger,pdInput,1,m_MirState);
m_StoredProc->Parameters->CreateParameter("@MirSysDate",ftString,pdOutput,30,m_MirSysDate);
m_StoredProc->ExecProc();
m_MirSysDate=m_StoredProc->Parameters->ParamValues["@MirSysDate"];
}
m_StoredProc->Close();
TsdMir *p=new TsdMir();
if(CurStatus==2)
{
SetActionID(1);
p->Assign(this);
AddRecord((void *)p,p->MirGoods+p->MirRDate);
}
else
{
SetActionID(1);
p->Assign(this);
ChangeRecord((void *)p,p->MirGoods+p->MirRDate,p->MirGoods+p->MirRDate);
}
}
//---------------------------------------------------------------------------
void TsdMir::Delete()
{
if(CurStatus!=1)
throw Exception("当前状态不能进行删除操作!");
if(m_MirGoods.IsEmpty()==true)
throw Exception("当前没有记录可以删除!");
m_StoredProc->Close();
m_StoredProc->ProcedureName="sdMir_Delete";
m_StoredProc->Parameters->Clear();
m_StoredProc->Parameters->CreateParameter("@W_MirGoods",ftString,pdInput,18,b_MirGoods);
m_StoredProc->Parameters->CreateParameter("@W_MirRDate",ftString,pdInput,10,b_MirRDate);
m_StoredProc->ExecProc();
m_StoredProc->Close();
DeleteRecord(this->b_MirGoods+this->b_MirRDate);
}
//---------------------------------------------------------------------------
void TsdMir::Assign(TsdMir *p)
{
this->SetActionID(p->CurStatus);
this->m_MirGoods=p->m_MirGoods;
this->m_MirRDate=p->m_MirRDate;
this->m_MirRQty=p->m_MirRQty;
this->m_MirGQty=p->m_MirGQty;
this->m_MirDate=p->m_MirDate;
this->m_MirPlanner=p->m_MirPlanner;
this->m_MirCheck=p->m_MirCheck;
this->m_MirChecker=p->m_MirChecker;
this->m_MirCheckDate=p->m_MirCheckDate;
this->m_MirDesc=p->m_MirDesc;
this->m_MirState=p->m_MirState;
this->m_MirSysDate=p->m_MirSysDate;
this->BackupValue();
}
//---------------------------------------------------------------------------
void TsdMir::AssignValue()
{
TsdMir *p=(TsdMir *)Records(CurRecNo);
Assign(p);
}
//---------------------------------------------------------------------------
int TsdMir::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();
TsdMir *p=new TsdMir();
SetActionID(1);
p->Assign(this);
AddRecord((void *)p,p->MirGoods+p->MirRDate);
m_Query->Next();
}
MoveFirst();
}
m_Query->Close();
return Count;
}
//---------------------------------------------------------------------------
bool TsdMir::Find(AnsiString WhereStr)
{
AnsiString m_SqlStr;
if(WhereStr.IsEmpty()==true)
throw Exception("查找表达式不能为空");
m_SqlStr="select * from sdMir where "+WhereStr;
m_Query->Close();
m_Query
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -