📄 mmdoc.cpp
字号:
//---------------------------------------------------------------------------
#include <vcl.h>
#define _YW_SDERP_DLL
#include "mmDoc.h"
//---------------------------------------------------------------------------
#pragma hdrstop
#pragma package(smart_init)
//************************************
// Class:(TsdTeam) //
// Description:车间班组维护 //
// Created on:2000/02/02 //
//************************************
void __fastcall TsdTeam::SetTeamCode(AnsiString value)
{
if(value.IsEmpty()==true)
throw Exception("车间班组的代码不能为空!");
if(value.Length()>18)
throw Exception("车间班组代码的长度不能大于18!");
if(UpperCase(value)!=m_TeamCode.UpperCase()){
//判断班组代码的唯一性
if(this->FindKey(value))
throw Exception("车间班组代码:'"+value+"'已经存在,不能重复!");
}
m_TeamCode = value;
}
//---------------------------------------------------------------------------
void __fastcall TsdTeam::SetTeamName(AnsiString value)
{
if(value.IsEmpty()==true)
throw Exception("车间班组名称不能为空!");
if(value.Length()>20)
throw Exception("车间班组名称长度不能大于20!");
m_TeamName = value;
}
//---------------------------------------------------------------------------
void __fastcall TsdTeam::SetTeamShopCode(AnsiString value)
{
if(value.IsEmpty()==true)
throw Exception("车间班组所在的车间代码不能为空!");
if(value.Length()>18)
throw Exception("车间代码不能大于18!");
if(value!=m_TeamShopCode)
{
m_Query->Close();
m_Query->SQL->Clear();
m_Query->SQL->Add("SELECT ShopCode from sdShop where ShopCode='"+value+"'");
m_Query->Open();
if(m_Query->RecordCount<=0)
{
m_Query->Close();
throw Exception("车间代码:'"+value+"'的资料未定义!");
}
m_Query->Close();
}
m_TeamShopCode = value;
}
//---------------------------------------------------------------------------
TsdTeam::TsdTeam(TDataComm *DC)
:TsdStandard(DC)
{
try
{
QueryString="SELECT * FROM sdTeam";
FilterString="";
OrderString=" TeamCode ";
EmptyValue(0);
EmptyValue(1);
}
catch(...)
{
throw Exception("构造函数出错!");
}
}
//---------------------------------------------------------------------------
TsdTeam::TsdTeam()
:TsdStandard()
{
try
{
QueryString="SELECT * FROM sdTeam";
FilterString="";
OrderString=" TeamCode ";
EmptyValue(0);
EmptyValue(1);
}
catch(...)
{
throw Exception("构造函数出错!");
}
}
//---------------------------------------------------------------------------
AnsiString TsdTeam::GetFieldValue(euTeam sdFieldName)
{
switch(sdFieldName)
{
case fiTeamCode:
return TeamCode;
case fiTeamName:
return TeamName;
case fiTeamShopCode:
return TeamShopCode;
default:
throw Exception("当前字段未定义可取值!");
}
}
//---------------------------------------------------------------------------
void TsdTeam::SetFieldValue(euTeam sdFieldName, AnsiString Value)
{
switch(sdFieldName)
{
case fiTeamCode:
TeamCode=Value;
break;
case fiTeamName:
TeamName=Value;
break;
case fiTeamShopCode:
TeamShopCode=Value;
break;
default:
throw Exception("当前字段未定义可赋值!");
}
}
//---------------------------------------------------------------------------
void TsdTeam::Update()
{
if(CurStatus==0 || CurStatus==1)
throw Exception("当前不是编辑状态,不能进行存盘操作!");
m_StoredProc->Close();
if(CurStatus==2 || CurStatus==4)
{
m_StoredProc->ProcedureName="sdTeam_Insert";
m_StoredProc->Parameters->Clear();
m_StoredProc->Parameters->CreateParameter("@TeamCode",ftString,pdInput,18,m_TeamCode);
m_StoredProc->Parameters->CreateParameter("@TeamName",ftString,pdInput,20,m_TeamName);
m_StoredProc->Parameters->CreateParameter("@TeamShopCode",ftString,pdInput,18,m_TeamShopCode);
m_StoredProc->ExecProc();
m_StoredProc->Close();
}
else
{
m_StoredProc->ProcedureName="sdTeam_Update";
m_StoredProc->Parameters->Clear();
m_StoredProc->Parameters->CreateParameter("@W_TeamCode",ftString,pdInput,18,b_TeamCode);
m_StoredProc->Parameters->CreateParameter("@TeamCode",ftString,pdInput,18,m_TeamCode);
m_StoredProc->Parameters->CreateParameter("@TeamName",ftString,pdInput,20,m_TeamName);
m_StoredProc->Parameters->CreateParameter("@TeamShopCode",ftString,pdInput,18,m_TeamShopCode);
m_StoredProc->ExecProc();
m_StoredProc->Close();
}
TsdTeam *p=new TsdTeam();
if(CurStatus==2)
{
SetActionID(1);
p->Assign(this);
AddRecord((void *)p,p->TeamCode);
}
else
{
SetActionID(1);
p->Assign(this);
ChangeRecord((void *)p,p->TeamCode,this->b_TeamCode);
}
}
//---------------------------------------------------------------------------
void TsdTeam::Delete()
{
if(CurStatus!=1)
throw Exception("当前状态不能进行删除操作!");
if(m_TeamCode.IsEmpty()==true)
throw Exception("当前没有记录可以删除!");
m_StoredProc->Close();
m_StoredProc->ProcedureName="sdTeam_Delete";
m_StoredProc->Parameters->Clear();
m_StoredProc->Parameters->CreateParameter("@W_TeamCode",ftString,pdInput,18,b_TeamCode);
m_StoredProc->ExecProc();
m_StoredProc->Close();
DeleteRecord(this->b_TeamCode);
}
//---------------------------------------------------------------------------
void TsdTeam::BackupValue()
{
b_TeamCode = m_TeamCode;
b_TeamName = m_TeamName;
b_TeamShopCode = m_TeamShopCode;
}
//---------------------------------------------------------------------------
void TsdTeam::RestoreValue()
{
m_TeamCode=b_TeamCode;
m_TeamName=b_TeamName;
m_TeamShopCode=b_TeamShopCode;
}
//---------------------------------------------------------------------------
void TsdTeam::EmptyValue(int Index)
{
switch(Index)
{
case 0:
m_TeamCode="";
m_TeamName="";
m_TeamShopCode="";
break;
case 1:
b_TeamCode="";
b_TeamName="";
b_TeamShopCode="";
break;
}
}
//---------------------------------------------------------------------------
void TsdTeam::BatchLetValue()
{
m_TeamCode=m_Query->FieldValues["TeamCode"];
m_TeamName=m_Query->FieldValues["TeamName"];
m_TeamShopCode=m_Query->FieldValues["TeamShopCode"];
BackupValue();
}
//---------------------------------------------------------------------------
void TsdTeam::Assign(TsdTeam *p)
{
this->SetActionID(p->CurStatus);
this->m_TeamCode=p->m_TeamCode;
this->m_TeamName=p->m_TeamName;
this->m_TeamShopCode=p->m_TeamShopCode;
this->BackupValue();
}
//---------------------------------------------------------------------------
void TsdTeam::AssignValue()
{
TsdTeam *p=(TsdTeam *)Records(CurRecNo);
Assign(p);
}
//---------------------------------------------------------------------------
int TsdTeam::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();
TsdTeam *p=new TsdTeam();
SetActionID(1);
p->Assign(this);
AddRecord((void *)p,p->TeamCode);
m_Query->Next();
}
MoveFirst();
}
m_Query->Close();
return Count;
}
//---------------------------------------------------------------------------
bool TsdTeam::Find(AnsiString WhereStr)
{
AnsiString m_SqlStr;
if(WhereStr.IsEmpty()==true)
throw Exception("查找表达式不能为空!");
m_SqlStr="SELECT * FROM sdTeam 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;
}
}
//---------------------------------------------------------------------------
TsdTeam::~TsdTeam()
{
try{
}
catch(...)
{
throw Exception("析构函数出错!");
}
}
//---------------------------------------------------------------------------
//************************************
// Class:(TsdShop) //
// Description:车间资料维护 //
// Created on:2000/02/02 //
//************************************
void __fastcall TsdShop::SetShopCode(AnsiString value)
{
if(value.IsEmpty())
throw Exception("车间代码不能为空!");
if(value.Length()>18)
throw Exception("车间代码长度不能大于18!");
if(UpperCase(value)!=m_ShopCode.UpperCase()){
if(this->FindKey(value))
throw Exception("车间代码:'"+value+"'已经存在,不能重复!");
}
m_ShopCode = value;
}
//---------------------------------------------------------------------------
void __fastcall TsdShop::SetShopName(AnsiString value)
{
if(value.IsEmpty())
throw Exception("车间名称不能为空!");
if(value.Length()>20)
throw Exception("车间名称长度不能大于20!");
m_ShopName = value;
}
//---------------------------------------------------------------------------
void __fastcall TsdShop::SetShopDeptCode(AnsiString value)
{
if(value.IsEmpty())
throw Exception("部门代码不能为空!");
if(value.Length()>18)
throw Exception("部门代码长度不能大于18!");
if(value!=m_ShopDeptCode)
{
m_Query->Close();
m_Query->SQL->Clear();
m_Query->SQL->Add("Select DeptCode from sdDept where DeptCode='"+value+"'");
m_Query->Open();
if(m_Query->RecordCount<=0)
{
m_Query->Close();
throw Exception("部门代码:'"+value+"'的资料未定义!");
}
m_Query->Close();
}
m_ShopDeptCode = value;
}
//---------------------------------------------------------------------------
void __fastcall TsdShop::SetShopFitting(int value)
{
if(value!=0 && value!=1)
throw Exception("装配车间标志只能取值(0-非装配车间,1-装配车间.)");
m_ShopFitting = value;
}
//---------------------------------------------------------------------------
void __fastcall TsdShop::SetShopAssis(int value)
{
if(value!=0 && value!=1)
throw Exception("辅助车间标志只能取值(0-生产车间,1-辅助车间.)");
m_ShopAssis = value;
}
//---------------------------------------------------------------------------
TsdShop::TsdShop(TDataComm *DC)
:TsdStandard(DC)
{
try
{
QueryString="SELECT * FROM sdShop";
FilterString="";
OrderString="ShopCode";
EmptyValue(0);
EmptyValue(1);
}
catch(...)
{
throw Exception("构造函数出错!");
}
}
//---------------------------------------------------------------------------
TsdShop::TsdShop()
:TsdStandard()
{
try
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -