psite.cpp
来自「一个以前收集的基于C/S架构的ERP客户端源代码」· C++ 代码 · 共 241 行
CPP
241 行
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "Psite.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma link "RecBaseForm"
#pragma link "SDGrid"
#pragma link "fpanel"
#pragma link "SDEdit"
#pragma link "SDComboBox"
#pragma resource "*.dfm"
TfrmPsite *frmPsite;
AnsiString LastPsiteSupply;
//---------------------------------------------------------------------------
void __fastcall TfrmPsite::ClearControl(bool BringToNext)
{
if(BringToNext)
{
return;
}
// StrFlg =false;
sePsiteCode->Text = "";
sePsiteName->Text = "";
sePsiteAddr->Text = "";
sePsiteLinkman->Text = "";
sePsiteTel->Text = "";
sePsiteFax->Text = "";
sePsiteZip->Text = "";
sePsiteEmail->Text = "";
scPsiteTransModeCode->ItemIndex=-1;
CBDSite->Checked =false;//缺省交货地点
}
//---------------------------------------------------------------------------
void __fastcall TfrmPsite::GetDataFromComObject()
{
sePsiteCode->Text = GetFieldValue("PsiteCode");
sgPsite->LocateGrid(1,GetFieldValue("PsiteCode"));
sePsiteName->Text = GetFieldValue("PsiteName");
sePsiteAddr->Text = GetFieldValue("PsiteAddr");
sePsiteLinkman->Text = GetFieldValue("PsiteLinkman");
sePsiteTel->Text = GetFieldValue("PsiteTel");
sePsiteFax->Text = GetFieldValue("PsiteFax");
sePsiteZip->Text = GetFieldValue("PsiteZip");
sePsiteEmail->Text = GetFieldValue("PsiteEmail");
scPsiteTransModeCode->LocateKey(GetFieldValue("PsiteTransModeCode"));
if(GetFieldValue("PsiteDefault")==1)
CBDSite->Checked =true;
else
CBDSite->Checked =false;
}
//---------------------------------------------------------------------------
void __fastcall TfrmPsite::SendDataToComObject()
{
if(sePsiteCode->Text=="")
throw Exception("交货地点代码不能为空");
SetFieldValue("PsiteSupplyCode",WideString(scPsiteSupplyCode->ItemData[1]));
SetFieldValue("PsiteCode",WideString(sePsiteCode->Text));
SetFieldValue("PsiteName",WideString(sePsiteName->Text));
SetFieldValue("PsiteAddr",WideString(sePsiteAddr->Text));
SetFieldValue("PsiteLinkman",WideString(sePsiteLinkman->Text));
SetFieldValue("PsiteTel",WideString(sePsiteTel->Text));
SetFieldValue("PsiteFax",WideString(sePsiteFax->Text));
SetFieldValue("PsiteZip",WideString(sePsiteZip->Text));
SetFieldValue("PsiteEmail",WideString(sePsiteEmail->Text));
SetFieldValue("PsiteTransModeCode",WideString(scPsiteTransModeCode->ItemData[1]));
if(CBDSite->Checked ==true)
SetFieldValue("PsiteDefault",1);
else
SetFieldValue("PsiteDefault",0);
}
//---------------------------------------------------------------------------
void __fastcall TfrmPsite::WaitUserInput()
{
sePsiteCode->SetFocus();
}
//---------------------------------------------------------------------------
AnsiString __fastcall TfrmPsite::GetDataToGrid()
{
AnsiString s;
s = "\t" + GetFieldValue("PsiteCode") +
"\t" + GetFieldValue("PsiteName") +
"\t" + GetFieldValue("PsiteAddr") +
"\t" + GetFieldValue("PsiteLinkman");
return(s);
}
//---------------------------------------------------------------------------
void __fastcall TfrmPsite::RefreshGridData(int mAction)
{
AnsiString ItemStr;
ItemStr = GetDataToGrid();
// 新增
if (mAction == 0)
{
sgPsite->AddItem(ItemStr);
}
// 修改
else if(mAction == 1)
{
int i = sgPsite->Row;
sgPsite->ChangeItem(ItemStr,i);
}
// 删除 0
else if(mAction == 2)
{
sgPsite->RemoveItem(sgPsite->Row);
}
}
//---------------------------------------------------------------------------
void __fastcall TfrmPsite::FillGridWithData()
{
AnsiString ItemStr;
comServer->MoveFirst();
sgPsite->RowCount = 1;
while(comServer->Eof == 0)
{
ItemStr=GetDataToGrid();
sgPsite->AddItem(ItemStr);
comServer->MoveNext();
}
}
//---------------------------------------------------------------------------
void __fastcall TfrmPsite::InitEditControl()
{
ClientGroup->AddComponent(2,false,false,true, FloatPanel1,FloatPanel1->Name);
// ClientGroup->AddComponent(2,false,false,false, sePsiteCode,sePsiteCode->Name);
ClientGroup->AddComponent(2,true,true,false, sgPsite,sgPsite->Name);
ClientGroup->AddComponent(2,true,true,false,scPsiteSupplyCode,scPsiteSupplyCode->Name);
FillComboBox(Handle,scPsiteSupplyCode,"SELECT SUPPLYCODE,supplyName FROM SDSUPPLY where supplycancel=0 order by SupplyCode","supplyName","SUPPLYCODE");
FillComboBox(Handle,scPsiteTransModeCode,"select TransModeCode,TransModeName from sdTransMode order by transmodecode","TransModeName","TransModeCode");
}
//---------------------------------------------------------------------------
__fastcall TfrmPsite::TfrmPsite(TComponent* Owner, HWND chWnd, AnsiString MidCode,AnsiString WhereStr)
: TRecBaseForm(Owner,chWnd,MidCode,WhereStr)
{
}
//---------------------------------------------------------------------------
void __fastcall TfrmPsite::FormClose(TObject *Sender,
TCloseAction &Action)
{
TRecBaseForm::FormClose(Sender,Action);
}
//---------------------------------------------------------------------------
void __fastcall TfrmPsite::FormShow(TObject *Sender)
{
ClearControl(false);
LastPsiteSupply="";
scPsiteSupplyCodeClick(Sender);
}
//---------------------------------------------------------------------------
void __fastcall TfrmPsite::scPsiteSupplyCodeClick(TObject *Sender)
{
AnsiString s;
s = scPsiteSupplyCode->ItemData[1];
if(s.IsEmpty())
return;
if( LastPsiteSupply==s)
return;
LastPsiteSupply=s;
s = "PsiteSupplyCode = '" + s + "'";
comServer->FilterString = WideString(s);
comServer->Query();
FillGridWithData();
comServer->MoveFirst();
GetDataFromComObject();
}
//---------------------------------------------------------------------------
void __fastcall TfrmPsite::sgPsiteClick(TObject *Sender)
{
int ARow=sgPsite->Row;
AnsiString s;
if (ARow > 0) {
s=sgPsite->TextMatrix[ARow][1]+ "\t"+scPsiteSupplyCode->ItemData[1];
comServer->LocateByKey(WideString(s));
}
if (!comServer->Eof)
GetDataFromComObject();
}
//---------------------------------------------------------------------------
void __fastcall TfrmPsite::RefreshUpdateData(int MsgSrc,int MsgType)
{
}
//---------------------------------------------------------------------------
void __fastcall TfrmPsite::sePsiteCodeKeyDown(TObject *Sender, WORD &Key,
TShiftState Shift)
{
if(Key==13 && CurrentState==caNormal)
{
comServer->LocateByKey(WideString(sePsiteCode->Text));
GetDataFromComObject();
}
}
//---------------------------------------------------
void __fastcall TfrmPsite::SupplyCodeButtonButtonClick(TObject *Sender)
{
if(OpenSupplyForm("")==true)
{
scPsiteSupplyCode->LocateKey(GetSupplyValue(gtOpenForm,"SupplyName"));
scPsiteSupplyCodeClick(Sender);
}
}
//---------------------------------------------------------------------------
void __fastcall TfrmPsite::scPsiteSupplyCodeExit(TObject *Sender)
{
TComResultSet * TempRes = new TComResultSet(Handle,g_ClientHandle);
TempRes->Open("select parametercode,parametervalue from sdparameter where parametercode = '10302' and parametervalue =1","parametercode");
if(TempRes->RecordCount > 0)
{
TempRes->Close();
TempRes->Open("select supplycode,supplyname,supplybuyer from sdsupply where supplybyuer ='"+g_sdUserCode+"' and supplycode ='"+scPsiteSupplyCode->Text+"' or supplyname = '"+scPsiteSupplyCode->Text+"'","supplycode");
}
else
{
TempRes->Close();
TempRes->Open("select supplycode,supplyname,supplybuyer from sdsupply where supplycode = '"+scPsiteSupplyCode->Text+"' or supplyname = '"+scPsiteSupplyCode->Text+"'", "supplycode");
}
if(scPsiteSupplyCode->LocateKey(TempRes->FieldByName("supplycode"))==0)
{
scPsiteSupplyCode->ItemIndex =-1;
}
delete TempRes;
}
//---------------------------------------------------------------------------
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?