📄 pbomh.cpp
字号:
//---------------------------------------------------------------------------
#include <vcl.h>
#include "Pbomh.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"
TfrmPbomh *frmPbomh;
//---------------------------------------------------------------------------
__fastcall TfrmPbomh::TfrmPbomh(TComponent* Owner)
: TBillBaseForm(Owner,euSdPbomh,"")
{
}
//---------------------------------------------------------------------------
void __fastcall TfrmPbomh::InitEditControl()
{
ClientGroup->AddComponent(1,true,true,false,sgPbomh,sgPbomh->Name);
ClientGroup->AddComponent(1,false,false,true,FloatPanel1,FloatPanel1->Name);
ClientGroup->AddComponent(1,true,true,true,Panel2,Panel2->Name);
ClientGroup->AddComponent(1,true,true,true,sePbomhEoq,sePbomhEoq->Name);
ClientGroup->AddComponent(1,false,true,false,sePbomhGoods,sePbomhGoods->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);
//Pbomh
FillComboBox(scPbomhProducter,"SELECT ProducterCode,memo=ProducterCode+space(1)+'('+UserName+')' from sdProducter,sdUser where UserCode=ProducterCode order by ProducterCode","memo","ProducterCode");
FillComboBox(scPbomhUnit,"SELECT UnitCode,UnitName FROM sdUnit order by UnitCode","UnitName","UnitCode");
//Pbomd
FillComboBox(scPbomdUnit,"SELECT UnitCode,UnitName FROM sdUnit order by UnitCode","UnitName","UnitCode");
FillComboBox(scPbomdProcess,"SELECT ProcessCode+Space(1)+'('+ProcessName+')' memo,ProcessCode,ProcessName FROM sdProcess order by ProcessCode","memo","ProcessCode","ProcessName");
}
//---------------------------------------------------------------------------
void __fastcall TfrmPbomh::RefreshUpdateData(int MsgSrc,int MsgType)
{
try
{
switch (MsgSrc)
{
case euSdUnit:
if(ShowUpdateMessage(MsgSrc,MsgType)){
StartWaitForm("正在刷新引用数据!");
FillComboBox(scPbomhUnit,"select UnitCode,UnitName from sdUnit order by UnitCode","UnitName","UnitCode");
FillComboBox(scPbomdUnit,"Select UnitCode,UnitName from sdUnit order by UnitCode","UnitName","UnitCode");
EndWaitForm();
break;
}
case euSdProcess:
if(ShowUpdateMessage(MsgSrc,MsgType)){
StartWaitForm("正在刷新引用数据!");
FillComboBox(scPbomdProcess,"SELECT ProcessCode+Space(1)+'('+ProcessName+')' memo,ProcessCode,ProcessName FROM sdProcess order by ProcessCode","memo","ProcessCode","ProcessName");
EndWaitForm();
break;
}
case euSdProducter:
if(ShowUpdateMessage(MsgSrc,MsgType)){
StartWaitForm("正在刷新引用数据!");
FillComboBox(scPbomhProducter,"SELECT ProducterCode,memo=ProducterCode+space(1)+'('+UserName+')' from sdProducter,sdUser where UserCode=ProducterCode order by ProducterCode","memo","ProducterCode");
EndWaitForm();
break;
}
default:
break;
}
}
__finally
{
//AddCode;
}
}
//---------------------------------------------------------------------------
void __fastcall TfrmPbomh::ClearControl(int Section,bool BringToNext)
{
if (Section == 1)
{
if (! BringToNext)
{
sePbomhGoods->Text ="";
sePbomhGoodsName->Text ="";
sePbomhVer->Text = "";
sePbomhModel->Text = "";
scPbomhUnit->ItemIndex=-1;
sePbomhEoq->Text = "0";
sePbomhRlt->Text = "0";
scPbomhType->ItemIndex=0;
scPbomhOp->ItemIndex=0;
scPbomhPp->ItemIndex=0;
sePbomhFpr->Text = "1.00";
scPbomhProducter->ItemIndex =-1;
labSysDate->Caption="";
labPbomhUser->Caption=g_sdUserCode;
dePbomhEdate->Text=g_sdCurDate;
dePbomhIdate->Text="";
memPbomhDesc->Text="";
}
sgPbomh->RowCount=1;
}
else if (Section==2)
{
if (!BringToNext)
{
sePbomdSn->Text =AnsiString(comServer->ItemCount+1);
sePbomdGoods->Text="";
sePbomdGoodsName->Text="";
sePbomdVer->Text="";
sePbomdModel->Text="";
scPbomdUnit->ItemIndex=-1;
sePbomdQty->Text="0";
sePbomdShl->Text="0.00";
sePbomdFcp->Text="0.00";
sePbomdOptNo->Text="1";
scPbomdFrom->ItemIndex=0;
scPbomdType->ItemIndex=0;
scPbomdProcess->ItemIndex=-1;
chePbomdOption->Checked=false;
scPbomdOp->ItemIndex=0;
scPbomdPp->ItemIndex=0;
sePbomdLot->Text="0";
memPbomdDesc->Text="";
}
}
}
//---------------------------------------------------------------------------
void __fastcall TfrmPbomh::GetDataFromComObject(int Section)
{
if (Section==1)
{
sePbomhGoods->Text=GetHeadValue(fiPbomhGoods);
g_sdRsGoods->LocateByKey(WideString(GetHeadValue(fiPbomhGoods)));
sePbomhGoodsName->Text=GetGoodsValue("GoodsName");
sePbomhVer->Text=GetGoodsValue("GoodsVer");
sePbomhModel->Text=GetGoodsValue("GoodsModel");
if(GetGoodsValue("GoodsType")!="")
scPbomhType->ItemIndex=StrToInt(GetGoodsValue("GoodsType"));
else
scPbomhType->ItemIndex=-1;
scPbomhUnit->LocateKey(GetGoodsValue("GoodsUnitCode"));
sePbomhEoq->Text=GetHeadValue(fiPbomhEoq);
sePbomhRlt->Text=GetHeadValue(fiPbomhRlt);
scPbomhOp->ItemIndex=StrToInt(GetHeadValue(fiPbomhOp))-1;
scPbomhPp->ItemIndex=StrToInt(GetHeadValue(fiPbomhPp))-1;
sePbomhFpr->Text=GetHeadValue(fiPbomhFpr);
scPbomhProducter->LocateKey(GetHeadValue(fiPbomhProducter));
labSysDate->Caption=GetHeadValue(fiPbomhSysDate);
labPbomhUser->Caption=GetHeadValue(fiPbomhUser);
dePbomhEdate->Text=GetHeadValue(fiPbomhEdate);
dePbomhIdate->Text=GetHeadValue(fiPbomhIdate);
memPbomhDesc->Text=GetHeadValue(fiPbomhDesc);
}
else
{
sePbomdSn->Text=GetDetailValue(fiPbomdSn);
sePbomdGoods->Text=GetDetailValue(fiPbomdGoods);
g_sdRsGoods->LocateByKey(WideString(GetDetailValue(fiPbomdGoods)));
sePbomdGoodsName->Text=GetGoodsValue("GoodsName");
sePbomdVer->Text=GetGoodsValue("GoodsVer");
sePbomdModel->Text=GetGoodsValue("GoodsModel");
scPbomdUnit->LocateKey(GetGoodsValue("GoodsUnitCode"));
scPbomdType->ItemIndex=StrToInt(GetGoodsValue("GoodsType"))-1;
scPbomdFrom->ItemIndex=StrToInt(GetGoodsValue("GoodsFrom"))-1;
sePbomdQty->Text=GetDetailValue(fiPbomdQty);
sePbomdShl->Text=GetDetailValue(fiPbomdShl);
sePbomdFcp->Text=GetDetailValue(fiPbomdFcp);
sePbomdOptNo->Text=GetDetailValue(fiPbomdOptNo);
scPbomdProcess->LocateKey(GetDetailValue(fiPbomdProcess));
chePbomdOption->Checked=GetDetailValue(fiPbomdOption)=="1";
scPbomdOp->ItemIndex=StrToInt(GetDetailValue(fiPbomdOp))-1;
scPbomdPp->ItemIndex=StrToInt(GetDetailValue(fiPbomdPp))-1;
sePbomdLot->Text=GetDetailValue(fiPbomdLot);
memPbomdDesc->Text=GetDetailValue(fiPbomdDesc);
}
}
//---------------------------------------------------------------------------
void __fastcall TfrmPbomh::SendDataToComObject(int Section)
{
if (Section==1)
{
SetHeadValue(fiPbomhGoods,sePbomhGoods->Text);
SetHeadValue(fiPbomhEoq,sePbomhEoq->Text);
SetHeadValue(fiPbomhRlt,sePbomhRlt->Text);
SetHeadValue(fiPbomhOp,IntToStr(scPbomhOp->ItemIndex+1));
SetHeadValue(fiPbomhPp,IntToStr(scPbomhPp->ItemIndex+1));
SetHeadValue(fiPbomhFpr,sePbomhFpr->Text);
SetHeadValue(fiPbomhProducter,scPbomhProducter->ItemData[1]);
SetHeadValue(fiPbomhUser,labPbomhUser->Caption);
SetHeadValue(fiPbomhEdate,dePbomhEdate->Text);
SetHeadValue(fiPbomhIdate,dePbomhIdate->Text);
SetHeadValue(fiPbomhDesc,memPbomhDesc->Text);
}
else
{
//给物料单行的父件编码(PbomdPgoods)赋值
SetDetailValue(fiPbomdPgoods,sePbomhGoods->Text);
//---------------------------------------
SetDetailValue(fiPbomdSn,sePbomdSn->Text);
SetDetailValue(fiPbomdGoods,sePbomdGoods->Text);
SetDetailValue(fiPbomdQty,sePbomdQty->Text);
SetDetailValue(fiPbomdShl,sePbomdShl->Text);
SetDetailValue(fiPbomdFcp,sePbomdFcp->Text);
SetDetailValue(fiPbomdOptNo,sePbomdOptNo->Text);
SetDetailValue(fiPbomdProcess,scPbomdProcess->ItemData[cbItem2]);
SetDetailValue(fiPbomdOption,chePbomdOption->Checked ? "1":"0");
SetDetailValue(fiPbomdOp,IntToStr(scPbomdOp->ItemIndex+1));
SetDetailValue(fiPbomdPp,IntToStr(scPbomdPp->ItemIndex+1));
SetDetailValue(fiPbomdLot,sePbomdLot->Text);
SetDetailValue(fiPbomdDesc,memPbomdDesc->Text);
}
}
//---------------------------------------------------------------------------
void __fastcall TfrmPbomh::WaitUserInput(int Section)
{
if(Section ==1){
if(CurrentState==caAddHead)
sePbomhGoods->SetFocus();
else
sePbomhRlt->SetFocus();
}
else
{
ChangeToBrowseState(false);
if(sePbomdSn->Enabled)
sePbomdSn->SetFocus();
}
}
//---------------------------------------------------------------------------
void __fastcall TfrmPbomh::RefreshGridData(int mAction)
{
int i;
AnsiString ItemStr=GetItemStringToGrid();
switch(mAction)
{
case 0:
sgPbomh->AddItem(ItemStr);
sgPbomh->Row=sgPbomh->RowCount-1;
break;
case 1:
sgPbomh->ChangeItem(ItemStr,sgPbomh->Row);
break;
case 2:
sgPbomh->RemoveItem(sgPbomh->Row);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -