⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 tap.cpp

📁 科思ERP部分源码及控件
💻 CPP
字号:
//---------------------------------------------------------------------------
#include <vcl.h>
#include "Tap.h"
//---------------------------------------------------------------------------
#pragma hdrstop
#pragma package(smart_init)
#pragma link "fpanel"
#pragma link "RecBaseForm"
#pragma link "SDEdit"
#pragma link "SDGrid"
#pragma link "DateEdit"
#pragma link "SDComboBox"
#pragma resource "*.dfm"

TfrmTap *frmTap;
//---------------------------------------------------------------------------
//---------------------------------------------------------------------------
void __fastcall TfrmTap::ClearControl(bool BringToNext)
{
    if(!BringToNext)
    {
      seTapCode->Text="";
      memTapDesc->Text="";
      seTapEmployee->Text="";
      scTapMgr->Text="";
      deTapDate->Text=g_sdCurDate;
      deTapEdate->Text="";
      scTapState->ItemIndex=0;
      seTapUser->LocateKey(g_sdUserCode);
      lbTapSysDate->Caption="";
      seTapORank->Text="";
      seTapOShop->Text="";
      seTapOTeam->Text="";
      scTapNRank->Text="";
      scTapNShop->Text="";
      scTapNTeam->Text="";
    }
}
//---------------------------------------------------------------------------
void __fastcall TfrmTap::GetDataFromComObject()
{
    seTapCode->Text=GetFieldValue("TapCode");
    sgTap->LocateGrid(0,seTapCode->Text);
    memTapDesc->Text=GetFieldValue("TapDesc");
    seTapEmployee->LocateKey(GetFieldValue("TapEmployee"));
    seTapEmployee->Text=seTapEmployee->ItemData[cbItem1];
    scTapMgr->Text=GetFieldValue("TapMgr");
    deTapDate->Text=GetFieldValue("TapDate");
    deTapEdate->Text=GetFieldValue("TapEdate");
    scTapState->LocateKey(GetFieldValue("TapState"));
    seTapUser->LocateKey(GetFieldValue("TapUser"));
    lbTapSysDate->Caption=GetFieldValue("TapSysDate");
    seTapORank->LocateKey(GetFieldValue("TapORank"));
    seTapOShop->LocateKey(GetFieldValue("TapOShop"));
    seTapOTeam->LocateKey(GetFieldValue("TapOTeam"));
    scTapNRank->LocateKey(GetFieldValue("TapNRank"));
    scTapNShop->LocateKey(GetFieldValue("TapNShop"));
    scTapNTeam->LocateKey(GetFieldValue("TapNTeam"));
}
//---------------------------------------------------------------------------
void __fastcall TfrmTap::SendDataToComObject()
{
    SetFieldValue("TapCode",WideString(seTapCode->Text));
    SetFieldValue("TapDesc",WideString(memTapDesc->Text));
    SetFieldValue("TapEmployee",WideString(seTapEmployee->ItemData[cbItem2]));
    SetFieldValue("TapMgr",WideString(scTapMgr->Text));
    SetFieldValue("TapDate",WideString(deTapDate->Text));
    SetFieldValue("TapEdate",WideString(deTapEdate->Text));
    SetFieldValue("TapState",WideString(scTapState->ItemData[cbItem2]));
    SetFieldValue("TapUser",WideString(g_sdUserCode));
    SetFieldValue("TapORank",WideString(seTapORank->ItemData[cbItem2]));
    SetFieldValue("TapOShop",WideString(seTapOShop->ItemData[cbItem2]));
    SetFieldValue("TapOTeam",WideString(seTapOTeam->ItemData[cbItem2]));
    SetFieldValue("TapNRank",WideString(scTapNRank->ItemData[cbItem2]));
    SetFieldValue("TapNShop",WideString(scTapNShop->ItemData[cbItem2]));
    SetFieldValue("TapNTeam",WideString(scTapNTeam->ItemData[cbItem2]));
//    SetFieldValue("TapSysDate",lbTapSysDate->Caption);
}
//---------------------------------------------------------------------------
void __fastcall TfrmTap::WaitUserInput()
{
    if(seTapCode->Enabled)
      seTapCode->SetFocus();
}
//---------------------------------------------------------------------------
AnsiString __fastcall TfrmTap::GetDataToGrid()
{
    AnsiString  ItemStr;
    ItemStr = GetFieldValue("TapCode")+
              "\t" + GetFieldValue("TapEmployee")+
              "\t" + GetFieldValue("TapORank")+
              "\t" + GetFieldValue("TapNRank");
    return(ItemStr);
}
//---------------------------------------------------------------------------
void __fastcall TfrmTap::RefreshGridData(int mAction)
{
    AnsiString ItemStr;
    ItemStr = GetDataToGrid();
    // 新增
    if(mAction == 0)
    {
       sgTap->AddItem(ItemStr);
       sgTap->Row=sgTap->RowCount-1;
    }
    // 修改
    else if(mAction ==  1)
    {
       sgTap->ChangeItem(ItemStr,sgTap->Row);
    }
    // 删除
    else if(mAction ==  2)
    {
       sgTap->RemoveItem(sgTap->Row);
    }
}
//---------------------------------------------------------------------------
void __fastcall TfrmTap::FillGridWithData()
{
    AnsiString ItemStr;
    comServer->MoveFirst();
    sgTap->RowCount = 1;
    while(comServer->Eof == 0)
    {
      ItemStr = GetDataToGrid();
      sgTap->AddItem(ItemStr);
      comServer->MoveNext();
    }
}
//---------------------------------------------------------------------------
void __fastcall TfrmTap::InitEditControl()
{
    ClientGroup->AddComponent(2,true,true,false, sgTap,sgTap->Name);
    ClientGroup->AddComponent(2,false,false,true, FloatPanel1,FloatPanel1->Name);
    ClientGroup->AddComponent(2,false,true,true, seTapEmployee,seTapEmployee->Name);
    ClientGroup->AddComponent(2,false,true,false, seTapCode,seTapCode->Name);
    ClientGroup->AddComponent(2,true,true,true, seTapORank,seTapORank->Name);
    ClientGroup->AddComponent(2,true,true,true, seTapOShop,seTapOShop->Name);
    ClientGroup->AddComponent(2,true,true,true, seTapOTeam,seTapOTeam->Name);
    ClientGroup->AddComponent(2,true,true,true, scTapState,scTapState->Name);
    scTapState->ClearAll();
    scTapState->AddItems("预备","0");
    scTapState->AddItems("确认","1");
    FillEdit(Handle,seTapEmployee,"select Employee=EmployeeCode+'('+EmployeeName+')',EmployeeCode from sdEmployee where EmployeeState <>1 order by EmployeeCode",
                 "Employee","EmployeeCode");
    FillEdit(Handle,seTapORank,"select RankCode,RankName from sdRank","RankName","RankCode");
    FillComboBox(Handle,scTapNRank,"select RankCode,RankName from sdRank","RankName","RankCode");
    FillEdit(Handle,seTapOShop,"Select ShopCode,ShopName,ShopDeptCode from sdShop","ShopName","ShopCode","ShopDeptCode");
    FillComboBox(Handle,scTapNShop,"Select ShopCode,ShopName from sdShop","ShopName","ShopCode");
    FillEdit(Handle,seTapOTeam,"select TeamCode,TeamName from sdTeam","TeamName","TeamCode");
    FillComboBox(Handle,scTapNTeam,"select TeamCode,TeamName from sdTeam","TeamName","TeamCode");
    FillEdit(Handle,seTapUser,"select UserCode,UserName from SdUser","UserName","UserCode");
}
//---------------------------------------------------------------------------
__fastcall TfrmTap::TfrmTap(TComponent* Owner, HWND chWnd, AnsiString MidCode,AnsiString WhereStr)
    : TRecBaseForm(Owner,chWnd,MidCode,WhereStr)
{
    AutoCtl=seTapCode;
}
//---------------------------------------------------------------------------
void __fastcall TfrmTap::FormShow(TObject *Sender)
{
    FillGridWithData();
    ClearControl(false);
    comServer->MoveFirst();
    GetDataFromComObject();
}
//---------------------------------------------------------------------------
void __fastcall TfrmTap::sgTapClick(TObject *Sender)
{
    if(sgTap->Row > 0)
      comServer->LocateByKey(WideString(sgTap->TextMatrix[sgTap->Row][0]));
    if(!comServer->Eof)
      GetDataFromComObject();
}
//---------------------------------------------------------------------------
void  __fastcall TfrmTap::RefreshUpdateData(int MsgSrc,int MsgType)
{
/*    switch(MsgSrc)
    {
      case euSdEmployee:
       if(ShowUpdateMessage(MsgSrc,MsgType))
       {
         KeyCode=scTapEmployee->ItemData[cbItem2];
         FillComboBox(Query,scTapEmployee,"select Employee=EmployeeCode+'|'+EmployeeName,EmployeeCode from sdEmployee","Employee","EmployeeCode");
         scTapEmployee->LocateKey(KeyCode);
       }
       break;
      case euSdRank:
       if(ShowUpdateMessage(MsgSrc,MsgType))
       {
         KeyCode=scTapNRank->ItemData[cbItem2];
         FillComboBox(Query,scTapNRank,"select RankCode,RankName from sdRank","RankName","RankCode");
         scTapNRank->LocateKey(KeyCode);
       }
       break;
      case euSdShop:
       if(ShowUpdateMessage(MsgSrc,MsgType))
       {
         KeyCode=scTapNShop->ItemData[cbItem2];
         if(CurrentState==caNormal)
           FillComboBox(Query,scTapNShop,"Select ShopCode,ShopName from sdShop","ShopName","ShopCode");
         else
          FillComboBox(Query,scTapNShop,"Select ShopCode,ShopName from sdShop where ShopDeptCode='"+seTapOShop->ItemData[cbItem3]+"'","ShopName","ShopCode");
         scTapNShop->LocateKey(KeyCode);
       }
       break;
      case euSdTeam:
       if(ShowUpdateMessage(MsgSrc,MsgType))
       {
         KeyCode=scTapNTeam->ItemData[cbItem2];
         if(CurrentState==caNormal)
          FillComboBox(Query,scTapNTeam,"select TeamCode,TeamName from sdTeam","TeamName","TeamCode");
         else
          FillComboBox(Query,scTapNTeam,"select TeamCode,TeamName from sdTeam where TeamShopCode='"+scTapNShop->ItemData[cbItem2]+"'","TeamName","TeamCode");
         scTapNTeam->LocateKey(KeyCode);
       }
       break;
    }*/
}
//---------------------------------------------------------------------------
void __fastcall TfrmTap::scTapNShopClick(TObject *Sender)
{
    KeyCode=scTapNTeam->ItemData[cbItem2];
    FillComboBox(Handle,scTapNTeam,"select TeamCode,TeamName from sdTeam where TeamShopCode='"+scTapNShop->ItemData[cbItem2]+"'","TeamName","TeamCode");
    scTapNTeam->LocateKey(KeyCode);
}
//---------------------------------------------------------------------------
void __fastcall TfrmTap::muCancelClick(TObject *Sender)
{
    TRecBaseForm::muCancelClick(Sender);
    KeyCode=scTapNTeam->ItemData[cbItem2];
    FillComboBox(Handle,scTapNTeam,"select TeamCode,TeamName from sdTeam","TeamName","TeamCode");
    scTapNTeam->LocateKey(KeyCode);
}
//---------------------------------------------------------------------------
void __fastcall TfrmTap::muSaveClick(TObject *Sender)
{
    TRecBaseForm::muSaveClick(Sender);
    KeyCode=scTapNShop->ItemData[cbItem2];
    FillComboBox(Handle,scTapNShop,"Select ShopCode,ShopName from sdShop ","ShopName","ShopCode");
    scTapNShop->LocateKey(KeyCode);
    KeyCode=scTapNTeam->ItemData[cbItem2];
    FillComboBox(Handle,scTapNTeam,"select TeamCode,TeamName from sdTeam","TeamName","TeamCode");
    scTapNTeam->LocateKey(KeyCode);
}
//---------------------------------------------------------------------------
void __fastcall TfrmTap::seTapCodeKeyDown(TObject *Sender, WORD &Key,
      TShiftState Shift)
{
    if(Key==13 && CurrentState==caNormal)
    {
      comServer->LocateByKey(WideString(seTapCode->Text));
      GetDataFromComObject();
    }
}
//---------------------------------------------------------------------------
void __fastcall TfrmTap::muEditDetailClick(TObject *Sender)
{
    TRecBaseForm::muEditDetailClick(Sender);
    KeyCode=scTapNShop->ItemData[cbItem2];
    FillComboBox(Handle,scTapNShop,"Select ShopCode,ShopName from sdShop where ShopDeptCode='"+seTapOShop->ItemData[cbItem3]+"'","ShopName","ShopCode");
    scTapNShop->LocateKey(KeyCode);
    scTapNShopClick(Sender);
}
//---------------------------------------------------------------------------
void __fastcall TfrmTap::muAddDetailClick(TObject *Sender)
{
    TRecBaseForm::muAddDetailClick(Sender);
    scTapNShop->ClearAll();
    scTapNTeam->ClearAll();
}
//---------------------------------------------------------------------------

void __fastcall TfrmTap::seTapEmployeeButtonClick(TObject *Sender)
{
  AnsiString SqlStr;
  SqlStr="006[员工编码][员工名称][部门][职位][车间][班组]select employeecode,employeename,employeeDept,employeeRank,employeeshop,employeeTeam from sdemployee";
  SqlStr+=" order by employeecode";
  TfrmWnQuery *p;
  try
  {
    StartWaitForm("正在查询,请稍候...");
    p=new TfrmWnQuery(this,"员工资料查询",SqlStr);
  }
  __finally
  {
    EndWaitForm();
  }
  if(p->ShowModal()==mrOk)
  {
    seTapEmployee->LocateKey(p->ColData[1]);
    seTapORank->LocateKey(p->ColData[4]);
    seTapOShop->LocateKey(p->ColData[5]);
    seTapOTeam->LocateKey(p->ColData[6]);
  }
  delete p;

}
//---------------------------------------------------------------------------

⌨️ 快捷键说明

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