📄 mwpe.cpp
字号:
//---------------------------------------------------------------------------
#include <vcl.h>
#include "mWpe.h"
//---------------------------------------------------------------------------
#pragma hdrstop
#pragma package(smart_init)
TKSWpe *sdWpe;
//---------------------------------------------------------------------------
__fastcall TKSWpe::TKSWpe()
:TKSMidBase()
{
}
//---------------------------------------------------------------------------
void __fastcall TKSWpe::ValidHeadValues()
{
//工单号
ValidWpeWo();
//工序号
ValidWpeProcess();
//员工编号
ValidWpeEmployee();
//车间
ValidWpeShop();
//班组
ValidWpeTeam();
//计时工资率
ValidWpeLabRate();
//计件工资率
ValidWpePieceRate();
//工资计算方式
ValidWpeWageType();
}
//---------------------------------------------------------------------------
void __fastcall TKSWpe::ValidWpeWo() //工单号
{
AnsiString m_WpeWo;
AnsiString b_WpeWo;
m_WpeWo=GetMasterValue("WpeWo");
b_WpeWo=GetMasterOldValue("WpeWo");
if(m_WpeWo.UpperCase()!=b_WpeWo.UpperCase())
{
//Exist Property
Query->Close();
Query->SQL->Clear();
Query->SQL->Add("select WoCode from sdWo where WoCode='"+m_WpeWo+"'");
Query->Open();
if(Query->RecordCount==0)
{
Query->Close();
throw Exception("工序员工对应的加工单号的代码:'"+m_WpeWo+"'不存在.");
}
Query->Close();
}
}
//---------------------------------------------------------------------------
void __fastcall TKSWpe::ValidWpeProcess() //工序号
{
AnsiString m_WpeProcess;
AnsiString b_WpeProcess;
m_WpeProcess=GetMasterValue("WpeProcess");
b_WpeProcess=GetMasterOldValue("WpeProcess");
if(m_WpeProcess!=b_WpeProcess)
{
//Exist Property
Query->Close();
Query->SQL->Clear();
Query->SQL->Add("select ProcessCode from sdProcess where ProcessCode='"+m_WpeProcess+"'");
Query->Open();
if(Query->RecordCount==0)
{
Query->Close();
throw Exception("工序员工对应的工序代码:'"+m_WpeProcess+"'不存在.");
}
Query->Close();
}
}
//---------------------------------------------------------------------------
void __fastcall TKSWpe::ValidWpeEmployee() //员工编号
{
AnsiString m_WpeWo;
AnsiString m_WpeProcess;
AnsiString m_WpeEmployee;
AnsiString b_WpeEmployee;
m_WpeWo=GetMasterValue("WpeWo");
m_WpeProcess=GetMasterValue("WpeProcess");
m_WpeEmployee=GetMasterValue("WpeEmployee");
b_WpeEmployee=GetMasterOldValue("WpeEmployee");
if(UpperCase(m_WpeEmployee)!=UpperCase(b_WpeEmployee))
{
//Exist Property
Query->Close();
Query->SQL->Clear();
Query->SQL->Add("select EmployeeCode from sdEmployee where EmployeeCode='"+m_WpeEmployee+"'");
Query->Open();
if(Query->RecordCount==0)
{
Query->Close();
throw Exception("工序员工对应的员工代码:'"+m_WpeEmployee+"'不存在!");
}
//Only Property
Query->Close();
Query->SQL->Clear();
Query->SQL->Add("select WpeEmployee from sdWpe where WpeWo='"+m_WpeWo+"' and WpeProcess='"+m_WpeProcess+"' and WpeEmployee='"+m_WpeEmployee+"'");
Query->Open();
if(Query->RecordCount>0)
{
Query->Close();
throw Exception("加工单对应工序下的员工编号:'"+m_WpeEmployee+"'已经存在,不能重复!");
}
Query->Close();
}
}
//---------------------------------------------------------------------------
void __fastcall TKSWpe::ValidWpeShop() //车间
{
AnsiString m_WpeShop;
AnsiString b_WpeShop;
m_WpeShop=GetMasterValue("WpeShop");
b_WpeShop=GetMasterOldValue("WpeShop");
if(m_WpeShop.UpperCase()!=b_WpeShop.UpperCase())
{
//Exist Property
Query->Close();
Query->SQL->Clear();
Query->SQL->Add("select ShopCode from sdShop where ShopCode='"+m_WpeShop+"'");
Query->Open();
if(Query->RecordCount==0)
{
Query->Close();
throw Exception("工序员工对应的车间代码:'"+m_WpeShop+"'不存在.");
}
Query->Close();
}
}
//---------------------------------------------------------------------------
void __fastcall TKSWpe::ValidWpeTeam() //班组
{
AnsiString m_WpeTeam;
AnsiString b_WpeTeam;
m_WpeTeam=GetMasterValue("WpeTeam");
b_WpeTeam=GetMasterOldValue("WpeTeam");
if(m_WpeTeam!=b_WpeTeam)
{
//Exist Property
Query->Close();
Query->SQL->Clear();
Query->SQL->Add("select TeamCode from sdTeam where TeamCode='"+m_WpeTeam+"'");
Query->Open();
if(Query->RecordCount==0)
{
Query->Close();
throw Exception("工序员工对应的班组代码:'"+m_WpeTeam+"'不存在.");
}
Query->Close();
}
}
//---------------------------------------------------------------------------
void __fastcall TKSWpe::ValidWpeLabRate() //计时工资率
{
int m_WpeWageType;
double m_WpeLabRate;
m_WpeWageType=GetMasterValue("WpeWageType");
m_WpeLabRate=GetMasterValue("WpeLabRate");
if(m_WpeWageType==1)
if(m_WpeLabRate<0 || m_WpeLabRate==0)
throw Exception("工资为计时工资时,计时的费率不能小于和等于零.");
}
//---------------------------------------------------------------------------
void __fastcall TKSWpe::ValidWpePieceRate() //计件工资率
{
int m_WpeWageType;
double m_WpePieceRate;
m_WpeWageType=GetMasterValue("WpeWageType");
m_WpePieceRate=GetMasterValue("WpePieceRate");
if(m_WpeWageType==2)
if(m_WpePieceRate<0 || m_WpePieceRate==0)
throw Exception("工资为计件工资时,计件的费率不能小于和等于零.");
}
//---------------------------------------------------------------------------
void __fastcall TKSWpe::ValidWpeWageType() //工资计算方式
{
int m_WpeWageType;
m_WpeWageType=GetMasterValue("WpeWageType");
if(m_WpeWageType!=1 && m_WpeWageType!=2)
throw Exception("工资的计算方式只能为1-计时,2-计件.");
}
//---------------------------------------------------------------------------
void __fastcall TKSWpe::CmdExec(AnsiString Param)
{
}
//---------------------------------------------------------------------------
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -