team.cpp

来自「速达开源ERP系统」· C++ 代码 · 共 168 行

CPP
168
字号
//---------------------------------------------------------------------------
#include <vcl.h>
#include "Team.h"
//---------------------------------------------------------------------------
#pragma hdrstop
#pragma package(smart_init)
#pragma link "RecBaseForm"
#pragma link "SDEdit"
#pragma link "SDGrid"
#pragma link "fpanel"
#pragma link "SDComboBox"
#pragma resource "*.dfm"

TfrmTeam *frmTeam;
//---------------------------------------------------------------------------
__fastcall TfrmTeam::TfrmTeam(TComponent* Owner)
        : TRecBaseForm(Owner,euSdTeam,"")
{
}
//---------------------------------------------------------------------------
void __fastcall TfrmTeam::InitEditControl()
{
    ClientGroup->AddComponent(2,false,false,true, FloatPanel1,FloatPanel1->Name);
    ClientGroup->AddComponent(2,true,true,false,sgTeam,sgTeam->Name);
    FillComboBox(scTeamShopCode,"Select ShopCode,ShopName from sdShop order by ShopCode","ShopName","ShopCode");
}
//---------------------------------------------------------------------------
AnsiString  __fastcall TfrmTeam::GetFieldValue(int iFieldIndex)
{
    return ReadFieldValue(comServer,iFieldIndex);
}
//---------------------------------------------------------------------------
void __fastcall TfrmTeam::SetFieldValue(int iFieldIndex,AnsiString sFieldValue)
{
    WriteFieldValue(comServer,iFieldIndex,sFieldValue);
}
//---------------------------------------------------------------------------
void __fastcall TfrmTeam::ClearControl(bool BringToNext)
{
    if(!BringToNext)
    {
       seTeamCode->Text="";
       seTeamName->Text="";
       scTeamShopCode->ItemIndex=-1;
    }
}
//---------------------------------------------------------------------
void __fastcall TfrmTeam::WaitUserInput()
{
    seTeamCode->SetFocus();
}
//---------------------------------------------------------------------
void __fastcall TfrmTeam::SendDataToComObject()
{
    SetFieldValue(fiTeamCode,seTeamCode->Text);
    SetFieldValue(fiTeamName,seTeamName->Text);
    SetFieldValue(fiTeamShopCode,scTeamShopCode->ItemData[1]);
}
//---------------------------------------------------------------------
void __fastcall TfrmTeam::GetDataFromComObject()
{
    seTeamCode->Text=GetFieldValue(fiTeamCode);
    //MoveFirst,MovePrority,MoveNext,MoveLast
    sgTeam->LocateGrid(0,GetFieldValue(fiTeamCode));
    seTeamName->Text=GetFieldValue(fiTeamName);
    scTeamShopCode->LocateKey(GetFieldValue(fiTeamShopCode));
}
//---------------------------------------------------------------------
void __fastcall TfrmTeam::RefreshUpdateData(int MsgSrc,int MsgType)
{
    try
    {
       if(MsgSrc==euSdShop)
       {
          if(ShowUpdateMessage(MsgSrc,MsgType)){
	          StartWaitForm("正在刷新引用数据!");
             FillComboBox(scTeamShopCode,"Select ShopCode,ShopName from sdShop order by ShopCode","ShopName","ShopCode");
	          EndWaitForm();
          }
       }

    }
    __finally
    {
    	 //AddCode;
    }
}
//---------------------------------------------------------------------
void __fastcall TfrmTeam::RefreshGridData(int mAction)
{
    AnsiString sItemString=GetItemStringToGrid();
    int i;
    switch(mAction)
    {
      case 0:    //新增
         sgTeam->AddItem(sItemString);
         sgTeam->Row=sgTeam->RowCount-1;
         break;
      case 1:    //修改
         sgTeam->ChangeItem(sItemString,sgTeam->Row);
         break;
      case 2:    //删除
         sgTeam->RemoveItem(sgTeam->Row);
    }
}
//-----------------------------------------------------------------------
AnsiString __fastcall TfrmTeam::GetItemStringToGrid()
{
    AnsiString ItemStr,pStr;
    pStr=GetFieldValue(fiTeamShopCode);
    scTeamShopCode->LocateKey(pStr);
    pStr=scTeamShopCode->ItemData[0];
    ItemStr=GetFieldValue(fiTeamCode)+
            "\t" + GetFieldValue(fiTeamName)+
            "\t" + pStr;
    return ItemStr;
}
//---------------------------------------------------------------------
void __fastcall TfrmTeam::FillGridWithData()
{
     AnsiString ItemStr;
     comServer->MoveFirst();
     sgTeam->RowCount=1;
     while (comServer->Eof == 0)
     {
        ItemStr =GetItemStringToGrid();
        sgTeam->AddItem(ItemStr);
        comServer->MoveNext();
     }
}
//----------------------------------------------------------------------
void __fastcall TfrmTeam::FormShow(TObject *Sender)
{
    if(comServer->RecordCount>0){
      FillGridWithData();
      comServer->MoveFirst();
      GetDataFromComObject();
    }
    else{
       ClearControl(false);
       sgTeam->RowCount=1;
    }
}
//---------------------------------------------------------------------------
void __fastcall TfrmTeam::FormCreate(TObject *Sender)
{
    FormIniFile="D:\Test.Ini";
    SetGridWidth(Name,sgTeam,FormIniFile);
}
//---------------------------------------------------------------------------
void __fastcall TfrmTeam::FormClose(TObject *Sender, TCloseAction &Action)
{
    TRecBaseForm::FormClose(Sender,Action);
    WriteGridWidth(Name,sgTeam,FormIniFile);
}
//---------------------------------------------------------------------------
void __fastcall TfrmTeam::sgTeamClick(TObject *Sender)
{
    int ARow;
    ARow=sgTeam->Row;
    if(ARow > 0)
       comServer->LocateByKey(sgTeam->TextMatrix[ARow][0]);
    if(!comServer->Eof)
       GetDataFromComObject();
}
//---------------------------------------------------------------------------

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?