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

📄 labh_t.cpp

📁 科思ERP部分源码及控件
💻 CPP
📖 第 1 页 / 共 2 页
字号:
//---------------------------------------------------------------------------
#include <vcl.h>
#include "Labh_T.h"
#include "Labd_T.h"
//---------------------------------------------------------------------------
#pragma hdrstop
#pragma package(smart_init)
#pragma link "GenBaseForm"
#pragma link "DateEdit"
#pragma link "fpanel"
#pragma link "SDComboBox"
#pragma link "SDEdit"
#pragma link "SDGrid"
#pragma link "GenBaseForm"
#pragma resource "*.dfm"

TfrmLabh_T *frmLabh_T;
TfrmLabd_T *Labd_Tfrm;
//---------------------------------------------------------------------------
__fastcall TfrmLabh_T::TfrmLabh_T(TComponent* Owner, HWND chWnd, AnsiString MidCode,AnsiString WhereStr)
    : TGenBaseForm(Owner,chWnd,MidCode,WhereStr)
{
    AutoCtl=seLabhCode;
}
//---------------------------------------------------------------------------
void __fastcall TfrmLabh_T::InitEditControl()
{
    ClientGroup->AddComponent(1,true,true,false,sgLabh,sgLabh->Name);
    ClientGroup->AddComponent(1,false,false,true,FloatPanel1,FloatPanel1->Name);
    ClientGroup->AddComponent(1,false,true,false,seLabhCode,seLabhCode->Name);
    ClientGroup->AddComponent(1,true,true,true,cheLabhCheck,cheLabhCheck->Name);
    ClientGroup->AddComponent(1,true,true,true,scLabhState,scLabhState->Name);
    ClientGroup->AddComponent(1,false,true,true,scLabhShop,scLabhShop->Name);
    ClientGroup->AddComponent(1,false,true,true,seLabhTeam,seLabhTeam->Name);
    ClientGroup->AddComponent(1,true,true,true,scLabhFmon,scLabhFmon->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);
    ClientGroup->AddComponent(2,true,true,true,scLabdDType,scLabdDType->Name);

    scLabhState->ClearAll();
    scLabhState->AddItems("1-预备","1");
    scLabhState->AddItems("2-确认","2");
    scLabhState->AddItems("3-完成","3");
    scLabdDType->ClearAll();
    scLabdDType->AddItems("0-手工分配","0");
    scLabdDType->AddItems("1-平均分配","1");
    //Labh
    FillComboBox(Handle,scLabhFmon,"SELECT FcMonth from sdFc Order by FcMonth","FcMonth");
    FillComboBox(Handle,scLabhShop,"SELECT ShopCode,ShopName from sdShop order by ShopCode","ShopName","ShopCode");
    FillEdit(Handle,seLabhTeam,"SELECT TeamCode,TeamName from sdTeam order by TeamCode","TeamName","TeamCode");
    //Labd
    FillEdit(Handle,seLabdEmployee,"SELECT EmployeeCode,EmployeeName,EmployeeSex,EmployeeDept,EmployeeTow,EmployeeRank FROM sdEmployee order by EmployeeCode",
            "EmployeeCode","EmployeeName","EmployeeSex","EmployeeDept","EmployeeTow","EmployeeRank");
    FillComboBox(Handle,scEmployeeDept,"SELECT DeptCode,DeptName FROM sdDept where DeptEnd=1 order by DeptCode","DeptName","DeptCode");
    FillEdit(Handle,seLabdProcess,"SELECT ProcessCode,ProcessName FROM sdProcess order by ProcessCode","ProcessName","ProcessCode");
}
//---------------------------------------------------------------------------
void __fastcall TfrmLabh_T::RefreshUpdateData(int MsgSrc,int MsgType)
{
/*
    try
    {
       switch (MsgSrc)
       {
         case euSdFc:
           if(ShowUpdateMessage(MsgSrc,MsgType)){
	           StartWaitForm("正在刷新引用数据!");
	           FillComboBox(Handle,scLabhFmon,"select FcMonth from sdFc Order by FcMonth","FcMonth");
	           EndWaitForm();
	           break;
           }
         case euSdShop:
           if(ShowUpdateMessage(MsgSrc,MsgType)){
	           StartWaitForm("正在刷新引用数据!");
               FillComboBox(Handle,scLabhShop,"SELECT ShopCode,ShopName from sdShop order by ShopCode","ShopName","ShopCode");
	           EndWaitForm();
	           break;
           }
         case euSdTeam:
           if(ShowUpdateMessage(MsgSrc,MsgType)){
	           StartWaitForm("正在刷新引用数据!");
               FillEdit(Handle,seLabhTeam,"SELECT TeamCode,TeamName from sdTeam order by TeamCode","TeamName","TeamCode");
	           EndWaitForm();
	           break;
           }
         case euSdEmployee:
           if(ShowUpdateMessage(MsgSrc,MsgType)){
	           StartWaitForm("正在刷新引用数据!");
               FillEdit(Handle,seLabdEmployee,"SELECT EmployeeCode,EmployeeName,EmployeeSex,EmployeeDept,EmployeeTow,EmployeeRank FROM sdEmployee order by EmployeeCode",
                        "EmployeeCode","EmployeeName","EmployeeSex","EmployeeDept","EmployeeTow","EmployeeRank");
	           EndWaitForm();
	           break;
           }
         case euSdDept:
           if(ShowUpdateMessage(MsgSrc,MsgType)){
	           StartWaitForm("正在刷新引用数据!");
               FillComboBox(Handle,scEmployeeDept,"SELECT DeptCode,DeptName FROM sdDept where DeptEnd=1 order by DeptCode","DeptName","DeptCode");
	           EndWaitForm();
	           break;
           }
         case euSdProcess:
           if(ShowUpdateMessage(MsgSrc,MsgType)){
	           StartWaitForm("正在刷新引用数据!");
               FillEdit(Handle,seLabdProcess,"SELECT ProcessCode,ProcessName FROM sdProcess order by ProcessCode","ProcessName","ProcessCode");
	           EndWaitForm();
	           break;
           }
         default:
           break;
       }
    }
    __finally
    {
      //AddCode;
    }
*/
}
//---------------------------------------------------------------------------
void __fastcall TfrmLabh_T::ClearControl(int Section,bool BringToNext)
{
    if(Section==1){
      if(!BringToNext){
        seLabhCode->Text ="";
        deLabhDate->Text =g_sdCurDate;
        scLabhFmon->LocateKey(g_sdMMonth);
        scLabhShop->ItemIndex = -1;
        seLabhTeam->ItemIndex = -1;
        scLabhState->ItemIndex= 0;
        labUserCode->Caption=g_sdUserCode;
        cheLabhCheck->Checked=false;
        labChecker->Caption = "";
        labCheckDate->Caption = "";
        memLabhDesc->Text="";
      }
      sgLabh->RowCount=1;
    }
    else if(Section==2){
      if(!BringToNext)
      {
        seLabdLine->Text =AnsiString(comServer->ItemCount+1);
        seLabdEmployee->ItemIndex=-1;
        seEmployeeName->Text ="";
        seEmployeeSex->Text="";
        scEmployeeDept->ItemIndex=-1;
        seEmployeeTow->Text ="";
        seEmployeeRank->Text ="";
        seLabdWo->Text="";
        seLabdProcess->ItemIndex=-1;
        seLabdTime->Text="0.00";
        seLabdPrice->Text="0.00";
        scLabdDType->ItemIndex=1;
        memLabdDesc->Text="";
      }
    }
}
//---------------------------------------------------------------------------
void __fastcall TfrmLabh_T::GetDataFromComObject(int Section)
{
    if(Section==1){
      seLabhCode->Text=GetHeadValue("LabhCode");
      deLabhDate->Text=GetHeadValue("LabhDate");
      scLabhFmon->LocateKey(GetHeadValue("LabhFmonth"));
      scLabhShop->LocateKey(GetHeadValue("LabhShop"));
      seLabhTeam->LocateKey(GetHeadValue("LabhTeam"));
      scLabhState->LocateKey(GetHeadValue("LabhState"));
      labUserCode->Caption=GetHeadValue("LabhUser");
      cheLabhCheck->Checked=GetHeadValue("LabhCheck")=="1";
      //设置审核的操作权限
      if(cheLabhCheck->Checked)
        SetCheckToolbarStatus(true);
      else
        SetCheckToolbarStatus(false);
      labChecker->Caption=GetHeadValue("LabhChecker");
      labCheckDate->Caption=GetHeadValue("LabhCheckDate");
      memLabhDesc->Text=GetHeadValue("LabhDesc");
    }
    else{
      seLabdLine->Text=GetDetailValue("LabdLine");
      seLabdEmployee->LocateKey(GetDetailValue("LabdEmployee"));
      //取员工相应的资料
      seEmployeeName->Text=seLabdEmployee->ItemData[1];
      if(!seLabdEmployee->ItemData[2].IsEmpty())
         seEmployeeSex->Text=seLabdEmployee->ItemData[2]=="0"? "男":"女";
      else
         seEmployeeSex->Text="";
      scEmployeeDept->LocateKey(seLabdEmployee->ItemData[3]);
      seEmployeeTow->Text=seLabdEmployee->ItemData[4];
      seEmployeeRank->Text=seLabdEmployee->ItemData[5];
      //
      seLabdWo->Text=GetDetailValue("LabdWo");
      seLabdProcess->LocateKey(GetDetailValue("LabdProcess"));
      seLabdTime->Text =GetDetailValue("LabdTime");
      seLabdPrice->Text=GetDetailValue("LabdPrice");
      scLabdDType->LocateKey(GetDetailValue("LabdDType"));
      memLabdDesc->Text=GetDetailValue("LabdDesc");
    }
}
//---------------------------------------------------------------------------
void __fastcall TfrmLabh_T::SendDataToComObject(int Section)
{
    if(Section==1)
    {
      SetHeadValue("LabhCode",seLabhCode->Text);
      SetHeadValue("LabhDate",deLabhDate->Text);
      SetHeadValue("LabhFmonth",scLabhFmon->Text);
      SetHeadValue("LabhShop",scLabhShop->ItemData[1]);
      SetHeadValue("LabhTeam",seLabhTeam->ItemData[1]);

      SetHeadValue("LabhState",scLabhState->ItemData[1]);
      SetHeadValue("LabhUser",labUserCode->Caption);
      SetHeadValue("LabhCheck",cheLabhCheck->Checked ? "1":"0");
      if(cheLabhCheck->Checked){
         SetHeadValue("LabhChecker",labChecker->Caption);
         SetHeadValue("LabhCheckDate",labCheckDate->Caption);
      }
      SetHeadValue("LabhDesc",memLabhDesc->Text);
    }
    else{
      //团体计时单号(LabdCode)赋值
      SetDetailValue("LabdCode",seLabhCode->Text);
      SetDetailValue("LabdLine",seLabdLine->Text);
      SetDetailValue("LabdEmployee",seLabdEmployee->Text);
      SetDetailValue("LabdWo",seLabdWo->Text);
      SetDetailValue("LabdProcess",seLabdProcess->ItemData[1]);
      SetDetailValue("LabdTime",seLabdTime->Text);
      SetDetailValue("LabdPrice",seLabdPrice->Text);
      SetDetailValue("LabdDType",scLabdDType->ItemData[1]);
      SetDetailValue("LabdDesc",memLabdDesc->Text);
    }
}
//---------------------------------------------------------------------------
void __fastcall TfrmLabh_T::WaitUserInput(int Section)
{
    if(Section==1){
      if(CurrentState==caAddHead)
         seLabhCode->SetFocus();
      else
         deLabhDate->SetFocus();
    }
    else
    {
      ChangeToBrowseState(false);
      if(CurrentState!=caNormal)
         seLabdLine->SetFocus();
    }
}
//---------------------------------------------------------------------------
void __fastcall TfrmLabh_T::RefreshGridData(int mAction)
{
    int i;
    AnsiString ItemStr=GetItemStringToGrid();
    switch(mAction)
    {
       case 0:
         sgLabh->AddItem(ItemStr);
         sgLabh->Row=sgLabh->RowCount-1;
         break;
       case 1:
         sgLabh->ChangeItem(ItemStr,sgLabh->Row);
         break;
       case 2:
         sgLabh->RemoveItem(sgLabh->Row);
    }
}
//---------------------------------------------------------------------------
AnsiString __fastcall TfrmLabh_T::GetItemStringToGrid()
{
    AnsiString s_ItemStr,s;
    s_ItemStr=GetDetailValue("LabdLine")+
              "\t"+GetDetailValue("LabdEmployee")+
              "\t"+GetDetailValue("LabdWo")+
              "\t"+GetDetailValue("LabdProcess")+
              "\t"+GetDetailValue("LabdTime")+
              "\t"+GetDetailValue("LabdPrice");
    return s_ItemStr;
}
//---------------------------------------------------------------------------
void __fastcall TfrmLabh_T::DisplayBill()
{
    if(comServer->RecordCount>0)
    {
      GetDataFromComObject(1);

⌨️ 快捷键说明

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