📄 mps.cpp
字号:
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "Mps.h"
#include "Mpsd.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma link "QueryBaseForm"
#pragma link "SDGrid"
#pragma resource "*.dfm"
TfrmMps *frmMps;
//---------------------------------------------------------------------------
__fastcall TfrmMps::TfrmMps(TComponent* Owner)
: TQueryBaseForm(Owner,euSdMps,"")
{
ItemTemp="";
sgMps->RowCount=1;
}
//---------------------------------------------------------------------------
AnsiString __fastcall TfrmMps::GetFieldValue(int FieldIndex)
{
WideString S;
S = ReadFieldValue(comServer,FieldIndex);
return(S);
}
void __fastcall TfrmMps::ClearControl(bool BringToNext)
{
return;
}
//---------------------------------------------------------------------------
void __fastcall TfrmMps::GetDataFromComObject()
{
return;
}
//---------------------------------------------------------------------------
void __fastcall TfrmMps::WaitUserInput()
{
return;
}
//---------------------------------------------------------------------------
void __fastcall TfrmMps::RefreshGridData(int mAction)
{
int i,Num;
AnsiString ItemStr,s="";
switch(mAction)
{
case 0:
ItemStr ="\t" + GetFieldValue(fiMpsGoods)+
"\t" + GetFieldValue(fiMpsRDate)+
"\t" + GetFieldValue(fiMpsRQty)+
"\t" + GetFieldValue(fiMpsGQty)+
"\t" + GetFieldValue(fiMpsDate)+
"\t" + GetFieldValue(fiMpsPlanner)+
"\t" + (GetFieldValue(fiMpsCheck)=="1"?"已审核":"未审核")+
"\t" + GetFieldValue(fiMpsChecker)+
"\t" + GetFieldValue(fiMpsCheckDate)+
"\t" + GetFieldValue(fiMpsState)+
"\t" + GetFieldValue(fiMpsSysDate);
sgMps->AddItem(ItemStr);
break;
case 1:
ItemStr ="\t" + GetFieldValue(fiMpsGoods)+
"\t" + GetFieldValue(fiMpsRDate)+
"\t" + GetFieldValue(fiMpsRQty)+
"\t" + GetFieldValue(fiMpsGQty)+
"\t" + GetFieldValue(fiMpsDate)+
"\t" + GetFieldValue(fiMpsPlanner)+
"\t" + (GetFieldValue(fiMpsCheck)=="1"?"已审核":"未审核")+
"\t" + GetFieldValue(fiMpsChecker)+
"\t" + GetFieldValue(fiMpsCheckDate)+
"\t" + GetFieldValue(fiMpsState)+
"\t" + GetFieldValue(fiMpsSysDate);
sgMps->ChangeItem(ItemStr,sgMps->Row);
break;
case 2:
sgMps->RemoveItem(sgMps->Row);
}
}
//---------------------------------------------------------------------------
void __fastcall TfrmMps::DisplayBill()
{
// FillGridWithData();
}
//---------------------------------------------------------------------------
void __fastcall TfrmMps::GetBill(AnsiString BillID)
{
return;
}
//---------------------------------------------------------------------------
void __fastcall TfrmMps::FillGridWithData()
{
AnsiString ItemStr;
comServer->Query();
comServer->MoveFirst();
sgMps->RowCount = 1;
while (comServer->Eof == 0)
{
RefreshGridData(0);
comServer->MoveNext();
}
sgMpsClick(NULL);
}
//---------------------------------------------------------------------------
void __fastcall TfrmMps::muFirstClick(TObject *Sender)
{
if(sgMps->RowCount>1)
sgMps->Row=1;
}
//---------------------------------------------------------------------------
void __fastcall TfrmMps::muPreviousClick(TObject *Sender)
{
if(sgMps->Row>1)
sgMps->Row--;
}
//---------------------------------------------------------------------------
void __fastcall TfrmMps::muNextClick(TObject *Sender)
{
if(sgMps->Row<sgMps->RowCount-1)
sgMps->Row++;
}
//---------------------------------------------------------------------------
void __fastcall TfrmMps::muLastClick(TObject *Sender)
{
sgMps->Row=sgMps->RowCount-1;
}
//---------------------------------------------------------------------------
void __fastcall TfrmMps::sgMpsClick(TObject *Sender)
{
int iRow;
iRow=sgMps->Row;
if (iRow == 0)
{
return;
}
comServer->LocateByKey(WideString(sgMps->TextMatrix[iRow][1]+sgMps->TextMatrix[iRow][2]));
tbCheck->Enabled=(GetFieldValue(fiMpsCheck)=="0");
}
//---------------------------------------------------------------------------
void __fastcall TfrmMps::sgMpsDblClick(TObject *Sender)
{
if(sgMps->Row>0&&sgMps->Row<sgMps->RowCount)
{
try
{
TfrmMpsd *frmMpsd= new TfrmMpsd(this);
frmMpsd->MpsGoods=Trim(sgMps->TextMatrix[sgMps->Row][1]);
frmMpsd->MpsRDate=Trim(sgMps->TextMatrix[sgMps->Row][2]);
frmMpsd->seMpsGoods->Text=Trim(sgMps->TextMatrix[sgMps->Row][1]);
frmMpsd->seMpsRDate->Text=Trim(sgMps->TextMatrix[sgMps->Row][2]);
frmMpsd->seMpsRQty->Text=Trim(sgMps->TextMatrix[sgMps->Row][3]);
frmMpsd->ShowModal();
}
__finally
{
delete frmMpsd;
}
}
}
//---------------------------------------------------------------------------
void __fastcall TfrmMps::pMenuPopup(TObject *Sender)
{
if(sgMps->Row > 0)
{
MICheck->Enabled=tbCheck->Enabled;
MIMpsd->Enabled=true;
}
else
{
MICheck->Enabled=false;
MIMpsd->Enabled=false;
}
}
//---------------------------------------------------------------------------
void __fastcall TfrmMps::GenData()
{
if(comServer->RecordCount>0)
if(Application->MessageBox("确定要重新生成主生产计划吗?","系统提示",MB_YESNO) != IDYES)
return;
try
{
TComResultSet *RsQuery;
AnsiString ItemStr,sSql;
RsQuery=NewResultSet();
sSql=" select PlannerCode from sdPlanner where PlannerCode='"+g_sdUserCode+"'";
try
{
StartWaitForm("正在MPS计划生成,请稍等!");
RsQuery->Open(sSql,"");
RsQuery->MoveFirst();
if( RsQuery->RecordCount < 1 )
{
RsQuery->Close();
delete RsQuery;
throw Exception("当前用户不是计划员,操作被禁止");
}
sSql="exec sdGen_Mps "+g_sdUserCode;
RsQuery->Execute(sSql);
// comServer->Query();
FillGridWithData();
}
__finally
{
RsQuery->Close();
delete RsQuery;
EndWaitForm();
}
}
catch(Exception &e)
{
throw Exception(e.Message);
}
}
//---------------------------------------------------------------------------
void __fastcall TfrmMps::tbCheckClick(TObject *Sender)
{
try
{
if(GetFieldValue(fiMpsCheck)=="0")
{
comServer->Check(1);
if(GetFieldValue(fiMpsCheck)=="1")
{
RefreshGridData(1);
tbCheck->Enabled=false;
}
}
}
catch(Exception &e)
{
throw Exception(e.Message);
}
}
//---------------------------------------------------------------------------
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -