📄 wc.cpp
字号:
//---------------------------------------------------------------------------
#include <vcl.h>
#include "Wc.h"
//---------------------------------------------------------------------------
#pragma hdrstop
#pragma package(smart_init)
#pragma link "RecBaseForm"
#pragma link "fpanel"
#pragma link "SDGrid"
#pragma link "SDEdit"
#pragma link "SDComboBox"
#pragma link "DateEdit"
#pragma resource "*.dfm"
TfrmWc *frmWc;
//---------------------------------------------------------------------------
__fastcall TfrmWc::TfrmWc(TComponent* Owner, HWND chWnd, AnsiString MidCode,AnsiString WhereStr)
: TRecBaseForm(Owner,chWnd,MidCode,WhereStr)
{
}
//---------------------------------------------------------------------------
void __fastcall TfrmWc::RefreshGridData(int mAction)
{
int i;
AnsiString m_ItemStr;
m_ItemStr=GetDataToGrid();
switch(mAction)
{
case 0: //Add
sgWc->AddItem(m_ItemStr);
sgWc->Row=sgWc->RowCount-1;
break;
case 1: //Edit
sgWc->ChangeItem(m_ItemStr,sgWc->Row);
break;
case 2: //Del
sgWc->RemoveItem(sgWc->Row);
break;
}
}
//---------------------------------------------------------------------------
AnsiString __fastcall TfrmWc::GetDataToGrid()
{
AnsiString m_ItemStr;
m_ItemStr = GetFieldValue("WcCode")+
"\t" +GetFieldValue("WcName");
return(m_ItemStr);
}
//---------------------------------------------------------------------------
void __fastcall TfrmWc::ClearControl(bool BringToNext)
{
if(!BringToNext)
{
seWcCode->Text = "";
seWcName->Text = "";
memWcDesc->Text="";
seWcRepWc->ItemIndex=-1;
cheWcKey->Checked=false;
cheWcWxFlg->Checked=false;
seWcPow->Text="0";
seWcWod->Text="0";
seWcHow->Text="0";
seWcMow->Text="0";
seWcEffi->Text="1"; //效率
seWcUseRate->Text="1"; //利用率
scWcCalFlg->ItemIndex=0;
scWcCc->ItemIndex=-1;
scWcWoe->ItemIndex=0;
seWcPer->Text="0";
seWcFer->Text="0";
seWcMer->Text="0";
seWcVer->Text="0";
seWcMhr->Text="0";
seWcPrate->Text="0";
seWcPeor->Text="0";
}
}
//---------------------------------------------------------------------------
void __fastcall TfrmWc::SendDataToComObject()
{
SetFieldValue("WcCode",seWcCode->Text);
SetFieldValue("WcKey",cheWcKey->Checked ? "1":"0");
SetFieldValue("WcWxFlg",cheWcWxFlg->Checked ? "1":"0");
SetFieldValue("WcName",seWcName->Text);
SetFieldValue("WcDesc",memWcDesc->Text);
SetFieldValue("WcReplWc",seWcRepWc->ItemData[1]);
SetFieldValue("WcShopCode",scWcShopCode->ItemData[cbItem2]);
SetFieldValue("WcPow",seWcPow->Text);
SetFieldValue("WcWod",seWcWod->Text);
SetFieldValue("WcHow",seWcHow->Text);
SetFieldValue("WcMow",seWcMow->Text);
SetFieldValue("WcEffi",seWcEffi->Text);
SetFieldValue("WcUseRate",seWcUseRate->Text);
SetFieldValue("WcUser",g_sdUserCode);
SetFieldValue("WcCalFlg",IntToStr(scWcCalFlg->ItemIndex+1));
SetFieldValue("WcCc",scWcCc->ItemData[cbItem2]);
SetFieldValue("WcWoe",IntToStr(scWcWoe->ItemIndex+1));
SetFieldValue("WcPer",seWcPer->Text);
SetFieldValue("WcFer",seWcFer->Text);
SetFieldValue("WcMer",seWcMer->Text);
SetFieldValue("WcVer",seWcVer->Text);
SetFieldValue("WcMhr",seWcMhr->Text);
SetFieldValue("WcPrate",seWcPrate->Text);
SetFieldValue("WcPeor",seWcPeor->Text);
}
//---------------------------------------------------------------------------
void __fastcall TfrmWc::GetDataFromComObject()
{
seWcCode->Text=GetFieldValue("WcCode");
//MoveFirst,MovePrority,MoveNext,MoveLast
sgWc->LocateGrid(0,GetFieldValue("WcCode"));
cheWcKey->Checked=(GetFieldValue("WcKey")=="1");
cheWcWxFlg->Checked=(GetFieldValue("WcWxFlg")=="1");
seWcName->Text=GetFieldValue("WcName");
memWcDesc->Text=GetFieldValue("WcDesc");
seWcRepWc->LocateKey(GetFieldValue("WcReplWc"));
scWcShopCode->LocateKey(GetFieldValue("WcShopCode"));
seWcPow->Text=GetFieldValue("WcPow");
seWcWod->Text=GetFieldValue("WcWod");
seWcHow->Text=GetFieldValue("WcHow");
seWcMow->Text=GetFieldValue("WcMow");
seWcEffi->Text=GetFieldValue("WcEffi");
seWcUseRate->Text=GetFieldValue("WcUseRate");
scWcCalFlg->ItemIndex=StrToInt(GetFieldValue("WcCalFlg")-1);
scWcCc->LocateKey(GetFieldValue("WcCc"));
scWcWoe->ItemIndex=StrToInt(GetFieldValue("WcWoe")-1);
seWcPer->Text=GetFieldValue("WcPer");
seWcFer->Text=GetFieldValue("WcFer");
seWcMer->Text=GetFieldValue("WcMer");
seWcVer->Text=GetFieldValue("WcVer");
seWcMhr->Text=GetFieldValue("WcMhr");
seWcPrate->Text=GetFieldValue("WcPrate");
seWcPeor->Text=GetFieldValue("WcPeor");
}
//---------------------------------------------------------------------------
void __fastcall TfrmWc::WaitUserInput()
{
PageControl1->ActivePage=BaseInfo;
if(seWcCode->Enabled)
seWcCode->SetFocus();
}
//---------------------------------------------------------------------------
void __fastcall TfrmWc::InitEditControl()
{
PageControl1->ActivePage=BaseInfo;
ClientGroup->AddComponent(2,false,false,true, PageControl1,PageControl1->Name);
ClientGroup->AddComponent(2,true,true,false, sgWc,sgWc->Name);
FillEdit(Handle,seWcRepWc,"SELECT WcCode,WcName FROM sdWc order by WcCode","WcName","WcCode");
FillComboBox(Handle,scWcCc,"SELECT CcCode,CcName FROM sdCc order by CcCode","CcName","CcCode");
FillComboBox(Handle,scWcShopCode,"SELECT ShopCode,ShopName FROM sdShop order by ShopCode","ShopName","ShopCode");
}
//---------------------------------------------------------------------------
void __fastcall TfrmWc::RefreshUpdateData(int MsgSrc,int MsgType)
{
/*
try
{
AnsiString KeyCode;
switch (MsgSrc)
{
case euSdCc:
if(ShowUpdateMessage(MsgSrc,MsgType)){
StartWaitForm("正在刷新引用数据!");
KeyCode=scWcCc->ItemData[1];
FillComboBox(Handle,scWcCc,"SELECT CcCode,CcName FROM sdCc order by CcCode","CcName","CcCode");
scWcCc->LocateKey(KeyCode);
EndWaitForm();
break;
}
case euSdWc:
if(ShowUpdateMessage(MsgSrc,MsgType)){
StartWaitForm("正在刷新引用数据!");
KeyCode=seWcRepWc->ItemData[1];
FillEdit(Handle,seWcRepWc,"SELECT WcCode,WcName FROM sdWc order by WcCode","WcName","WcCode");
seWcRepWc->LocateKey(KeyCode);
EndWaitForm();
break;
}
case euSdShop:
if(ShowUpdateMessage(MsgSrc,MsgType)){
StartWaitForm("正在刷新引用数据!");
KeyCode=scWcShopCode->ItemData[1];
FillComboBox(Handle,scWcShopCode,"SELECT ShopCode,ShopName FROM sdShop order by ShopCode","ShopName","ShopCode");
scWcShopCode->LocateKey(KeyCode);
EndWaitForm();
break;
}
default:
break;
}
}
catch(Exception &e)
{
throw Exception(e.Message);
}
*/
}
//---------------------------------------------------------------------------
void __fastcall TfrmWc::FillGridWithData()
{
AnsiString ItemStr;
comServer->MoveFirst();
sgWc->RowCount = 1;
while(comServer->Eof == 0)
{
ItemStr = GetDataToGrid();
sgWc->AddItem(ItemStr);
comServer->MoveNext();
}
}
//---------------------------------------------------------------------------
void __fastcall TfrmWc::FormShow(TObject *Sender)
{
if(comServer->RecordCount>0)
{
FillGridWithData();
comServer->MoveFirst();
GetDataFromComObject();
}
else
{
ClearControl(false);
sgWc->RowCount=1;
}
}
//---------------------------------------------------------------------------
void __fastcall TfrmWc::FormClose(TObject *Sender, TCloseAction &Action)
{
TRecBaseForm::FormClose(Sender,Action);
}
//---------------------------------------------------------------------------
void __fastcall TfrmWc::sgWcClick(TObject *Sender)
{
int ARow;
ARow=sgWc->Row;
if(ARow > 0)
comServer->LocateByKey(sgWc->TextMatrix[ARow][0]);
if(!comServer->Eof)
GetDataFromComObject();
}
//---------------------------------------------------------------------------
void __fastcall TfrmWc::seWcRepWcButtonClick(TObject *Sender)
{
AnsiString SqlStr;
SqlStr="003[工作中心代码][工作中心名称][关键工作中心]SELECT WcCode,WcName,WcKey FROM sdWc ";
SqlStr=SqlStr+"ORDER BY WcCode";
TfrmWnQuery *p;
try
{
StartWaitForm("正在查询,请稍候...");
p=new TfrmWnQuery(this,"工作中心资料查询",SqlStr);
}
__finally
{
EndWaitForm();
}
if(p->ShowModal()==mrOk)
{
seWcRepWc->LocateKey(p->ColData[1]);
}
delete p;
}
//---------------------------------------------------------------------------
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -