📄 labh.cpp
字号:
//---------------------------------------------------------------------------
#include <vcl.h>
#include "Labh.h"
//---------------------------------------------------------------------------
#pragma hdrstop
#pragma package(smart_init)
#pragma link "BillBaseForm"
#pragma link "DateEdit"
#pragma link "fpanel"
#pragma link "SDComboBox"
#pragma link "SDEdit"
#pragma link "SDGrid"
#pragma resource "*.dfm"
TfrmLabh *frmLabh;
//---------------------------------------------------------------------------
__fastcall TfrmLabh::TfrmLabh(TComponent* Owner)
: TBillBaseForm(Owner,euSdLabh,"")
{
AutoCtl=seLabhCode;
}
//---------------------------------------------------------------------------
void __fastcall TfrmLabh::InitEditControl()
{
ClientGroup->AddComponent(1,true,true,false,sgLabh,sgLabh->Name);
ClientGroup->AddComponent(1,false,false,true,FloatPanel1,FloatPanel1->Name);
ClientGroup->AddComponent(1,false,true,false,seLabhCode,seLabhCode->Name);
ClientGroup->AddComponent(1,true,true,true,cheLabhCheck,cheLabhCheck->Name);
ClientGroup->AddComponent(1,true,true,true,scLabhState,scLabhState->Name);
ClientGroup->AddComponent(1,false,true,true,scLabhShop,scLabhShop->Name);
ClientGroup->AddComponent(1,false,true,true,seLabhTeam,seLabhTeam->Name);
ClientGroup->AddComponent(1,true,true,true,scLabhFmon,scLabhFmon->Name);
ClientGroup->AddComponent(2,false,false,true,FloatPanel2,FloatPanel2->Name);
ClientGroup->AddComponent(2,false,true,true,btnOK,btnOK->Name);
ClientGroup->AddComponent(2,false,false,false,btnCancel,btnCancel->Name);
ClientGroup->AddComponent(2,true,true,true,Panel1,Panel1->Name);
scLabhState->ClearAll();
scLabhState->AddItems("1-预备","1");
scLabhState->AddItems("2-确认","2");
scLabhState->AddItems("3-完成","3");
//Labh
FillComboBox(scLabhFmon,"SELECT FcMonth from sdFc Order by FcMonth","FcMonth");
FillComboBox(scLabhShop,"SELECT ShopCode,ShopName from sdShop order by ShopCode","ShopName","ShopCode");
FillEdit(seLabhTeam,"SELECT TeamCode,TeamName from sdTeam order by TeamCode","TeamName","TeamCode");
//Labd
FillEdit(seLabdEmployee,"SELECT EmployeeCode,EmployeeName,EmployeeSex,EmployeeDept,EmployeeTow,EmployeeRank FROM sdEmployee order by EmployeeCode",
"EmployeeCode","EmployeeName","EmployeeSex","EmployeeDept","EmployeeTow","EmployeeRank");
FillComboBox(scEmployeeDept,"SELECT DeptCode,DeptName FROM sdDept where DeptEnd=1 order by DeptCode","DeptName","DeptCode");
FillEdit(seLabdProcess,"SELECT ProcessCode,ProcessName FROM sdProcess order by ProcessCode","ProcessName","ProcessCode");
}
//---------------------------------------------------------------------------
void __fastcall TfrmLabh::RefreshUpdateData(int MsgSrc,int MsgType)
{
try
{
switch (MsgSrc)
{
case euSdFc:
if(ShowUpdateMessage(MsgSrc,MsgType)){
StartWaitForm("正在刷新引用数据!");
FillComboBox(scLabhFmon,"select FcMonth from sdFc Order by FcMonth","FcMonth");
EndWaitForm();
break;
}
case euSdShop:
if(ShowUpdateMessage(MsgSrc,MsgType)){
StartWaitForm("正在刷新引用数据!");
FillComboBox(scLabhShop,"SELECT ShopCode,ShopName from sdShop order by ShopCode","ShopName","ShopCode");
EndWaitForm();
break;
}
case euSdTeam:
if(ShowUpdateMessage(MsgSrc,MsgType)){
StartWaitForm("正在刷新引用数据!");
FillEdit(seLabhTeam,"SELECT TeamCode,TeamName from sdTeam order by TeamCode","TeamName","TeamCode");
EndWaitForm();
break;
}
case euSdEmployee:
if(ShowUpdateMessage(MsgSrc,MsgType)){
StartWaitForm("正在刷新引用数据!");
FillEdit(seLabdEmployee,"SELECT EmployeeCode,EmployeeName,EmployeeSex,EmployeeDept,EmployeeTow,EmployeeRank FROM sdEmployee order by EmployeeCode",
"EmployeeCode","EmployeeName","EmployeeSex","EmployeeDept","EmployeeTow","EmployeeRank");
EndWaitForm();
break;
}
case euSdDept:
if(ShowUpdateMessage(MsgSrc,MsgType)){
StartWaitForm("正在刷新引用数据!");
FillComboBox(scEmployeeDept,"SELECT DeptCode,DeptName FROM sdDept where DeptEnd=1 order by DeptCode","DeptName","DeptCode");
EndWaitForm();
break;
}
case euSdProcess:
if(ShowUpdateMessage(MsgSrc,MsgType)){
StartWaitForm("正在刷新引用数据!");
FillEdit(seLabdProcess,"SELECT ProcessCode,ProcessName FROM sdProcess order by ProcessCode","ProcessName","ProcessCode");
EndWaitForm();
break;
}
default:
break;
}
}
__finally
{
//AddCode;
}
}
//---------------------------------------------------------------------------
void __fastcall TfrmLabh::ClearControl(int Section,bool BringToNext)
{
if(Section==1){
if(!BringToNext){
seLabhCode->Text ="";
deLabhDate->Text =g_sdCurDate;
scLabhFmon->LocateKey(g_sdMMonth);
scLabhShop->ItemIndex = -1;
seLabhTeam->ItemIndex = -1;
scLabhState->ItemIndex= 0;
labUserCode->Caption=g_sdUserCode;
cheLabhCheck->Checked=false;
labChecker->Caption = "";
labCheckDate->Caption = "";
memLabhDesc->Text="";
}
sgLabh->RowCount=1;
}
else if(Section==2){
if(!BringToNext){
seLabdLine->Text=AnsiString(comServer->ItemCount+1);
seLabdEmployee->ItemIndex=-1;
seEmployeeName->Text ="";
seEmployeeSex->Text="";
scEmployeeDept->ItemIndex=-1;
seEmployeeTow->Text ="";
seEmployeeRank->Text ="";
seLabdWo->Text="";
seLabdProcess->ItemIndex=-1;
seLabdTime->Text="0.00";
seLabdPrice->Text="0.00";
memLabdDesc->Text="";
}
}
}
//---------------------------------------------------------------------------
void __fastcall TfrmLabh::GetDataFromComObject(int Section)
{
if(Section==1)
{
seLabhCode->Text=GetHeadValue(fiLabhCode);
deLabhDate->Text=GetHeadValue(fiLabhDate);
scLabhFmon->LocateKey(GetHeadValue(fiLabhFmonth));
scLabhShop->LocateKey(GetHeadValue(fiLabhShop));
seLabhTeam->LocateKey(GetHeadValue(fiLabhTeam));
scLabhState->LocateKey(GetHeadValue(fiLabhState));
labUserCode->Caption=GetHeadValue(fiLabhUser);
cheLabhCheck->Checked=GetHeadValue(fiLabhCheck)=="1";
//设置审核的操作权限
if(GetHeadValue(fiLabhCheck)=="1")
SetCheckToolbarStatus(true);
else
SetCheckToolbarStatus(false);
labChecker->Caption=GetHeadValue(fiLabhChecker);
labCheckDate->Caption=GetHeadValue(fiLabhCheckDate);
memLabhDesc->Text=GetHeadValue(fiLabhDesc);
}
else
{
seLabdLine->Text=GetDetailValue(fiLabdLine);
seLabdEmployee->Text=GetDetailValue(fiLabdEmployee);
//取员工相应的资料
seLabdEmployee->LocateKey(GetDetailValue(fiLabdEmployee));
seEmployeeName->Text=seLabdEmployee->ItemData[1];
if(!seLabdEmployee->ItemData[2].IsEmpty())
seEmployeeSex->Text=seLabdEmployee->ItemData[2]=="0"? "男":"女";
else
seEmployeeSex->Text="";
scEmployeeDept->LocateKey(seLabdEmployee->ItemData[3]);
seEmployeeTow->Text=seLabdEmployee->ItemData[4];
seEmployeeRank->Text=seLabdEmployee->ItemData[5];
//
seLabdWo->Text=GetDetailValue(fiLabdWo);
seLabdProcess->LocateKey(GetDetailValue(fiLabdProcess));
seLabdTime->Text =GetDetailValue(fiLabdTime);
seLabdPrice->Text=GetDetailValue(fiLabdPrice);
memLabdDesc->Text=GetDetailValue(fiLabdDesc);
}
}
//---------------------------------------------------------------------------
void __fastcall TfrmLabh::SendDataToComObject(int Section)
{
if(Section==1){
SetHeadValue(fiLabhCode,seLabhCode->Text);
SetHeadValue(fiLabhDate,deLabhDate->Text);
SetHeadValue(fiLabhFmonth,scLabhFmon->Text);
SetHeadValue(fiLabhShop,scLabhShop->ItemData[1]);
SetHeadValue(fiLabhTeam,seLabhTeam->ItemData[1]);
SetHeadValue(fiLabhState,scLabhState->ItemData[1]);
SetHeadValue(fiLabhUser,labUserCode->Caption);
SetHeadValue(fiLabhCheck,cheLabhCheck->Checked ? "1":"0");
if(cheLabhCheck->Checked)
{
SetHeadValue(fiLabhChecker,labChecker->Caption);
SetHeadValue(fiLabhCheckDate,labCheckDate->Caption);
}
SetHeadValue(fiLabhDesc,memLabhDesc->Text);
}
else{
//计时单号(LabdCode)赋值
SetDetailValue(fiLabdCode,seLabhCode->Text);
SetDetailValue(fiLabdLine,seLabdLine->Text);
SetDetailValue(fiLabdEmployee,seLabdEmployee->Text);
SetDetailValue(fiLabdWo,seLabdWo->Text);
SetDetailValue(fiLabdProcess,seLabdProcess->ItemData[1]);
SetDetailValue(fiLabdTime,seLabdTime->Text);
SetDetailValue(fiLabdPrice,seLabdPrice->Text);
SetDetailValue(fiLabdDesc,memLabdDesc->Text);
}
}
//---------------------------------------------------------------------------
void __fastcall TfrmLabh::WaitUserInput(int Section)
{
if(Section ==1){
if(seLabhCode->Enabled)
seLabhCode->SetFocus();
else
deLabhDate->SetFocus();
}
else
{
ChangeToBrowseState(false);
if(seLabdLine->Enabled)
seLabdLine->SetFocus();
}
}
//---------------------------------------------------------------------------
void __fastcall TfrmLabh::RefreshGridData(int mAction)
{
int i;
AnsiString ItemStr=GetItemStringToGrid();
switch(mAction)
{
case 0:
sgLabh->AddItem(ItemStr);
sgLabh->Row=sgLabh->RowCount-1;
break;
case 1:
sgLabh->ChangeItem(ItemStr,sgLabh->Row);
break;
case 2:
sgLabh->RemoveItem(sgLabh->Row);
}
}
//---------------------------------------------------------------------------
AnsiString __fastcall TfrmLabh::GetItemStringToGrid()
{
AnsiString s_ItemStr,s;
s_ItemStr=GetDetailValue(fiLabdLine)+
"\t"+GetDetailValue(fiLabdEmployee)+
"\t"+GetDetailValue(fiLabdWo)+
"\t"+GetDetailValue(fiLabdProcess)+
"\t"+GetDetailValue(fiLabdTime)+
"\t"+GetDetailValue(fiLabdPrice);
return s_ItemStr;
}
//---------------------------------------------------------------------------
void __fastcall TfrmLabh::DisplayBill()
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -