fadc.cpp

来自「一个以前收集的基于C/S架构的ERP客户端源代码」· C++ 代码 · 共 499 行 · 第 1/2 页

CPP
499
字号
//---------------------------------------------------------------------------

#include <vcl.h>
#pragma hdrstop

#include "FaDc.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma link "RecBaseForm"
#pragma link "fpanel"
#pragma link "SDComboBox"
#pragma link "SDEdit"
#pragma link "SDGrid"
#pragma resource "*.dfm"
TfrmFaDc *frmFaDc;
//---------------------------------------------------------------------------
__fastcall TfrmFaDc::TfrmFaDc(TComponent* Owner, HWND chWnd, AnsiString MidCode,AnsiString WhereStr)
        : TRecBaseForm(Owner,chWnd,MidCode,WhereStr)
{
    m_FiItem[0].Name="原值";
    m_FiItem[1].Name="总工作量";
    m_FiItem[2].Name="本期工作量";
    m_FiItem[3].Name="使用期限";
    m_FiItem[4].Name="累计使用期限";
    m_FiItem[5].Name="预计净残值";
    m_FiItem[6].Name="清理费用";
    m_FiItem[7].Name="入帐前累计折旧";
    m_FiItem[8].Name="入帐前累计工作量";
    m_FiItem[9].Name="入帐前累计使用期限";
    for(int i=0;i<=9;i++)
    {
     m_FiItem[i].Numb=0.00;
    }
}
//---------------------------------------------------------------------------
void __fastcall TfrmFaDc::InitEditControl()
{
    AnsiString SQL="select fadncode,fadnname,fadnfadm,fadnOval,fadneval from sdfadn ,sdfause where FAUSEDEPRE='1' and FADNFAUSE=fausecode order By fadncode";
    FillComboBox(Handle,scFaDcFadm,"select fadmcode,fadmname from sdfadm order By fadmcode","fadmName","fadmCode");
    FillComboBox(Handle,scFaDcFadn,SQL,"fadncode","fadnName","fadnfadm","fadnOval","fadneval");
    FillComboBox(Handle,scFaDcFMonth,"select FcMonth from sdFc order By FcMonth","FcMonth");
   //FillComboBox(Handle,scFaDcUser,"select UserCode,UserName from sdUser order By UserCode","UserName","UserCode");
    ClientGroup->AddComponent(2,false,false,true,FloatPanel1,FloatPanel1->Name);
    ClientGroup->AddComponent(2,true,true,false, sgFaDc,sgFaDc->Name);
    ClientGroup->AddComponent(2,true,true,false,scFaDcFMonth,scFaDcFMonth->Name);
}

//---------------------------------------------------------------------------
void __fastcall TfrmFaDc::ClearControl(bool BringToNext)
{
     if(!BringToNext)
    {
       scFaDcFadn->Text      ="";         //设备编码
       seFaDcFadnName->Text  ="";         //设备名称
       scFaDcFMonth->Text    =g_sdEMonth; //财务月份
       scFaDcFadm->Text      ="";         //折旧方法
       seFaDcOVal->Text      ="0";         //原值
       seFaDcDVal->Text      ="0";         //累计折旧
       seFaDcEVal->Text      ="0";         //预计净残值
       seFaDcTWork->Text     ="0";         //总工作量
       seFaDcAWork->Text     ="0";         //累计工作量
       seFaDcPeriod->Text    ="0";         //使用期限
       seFaDcAPeriod->Text   ="0";         //累计使用期限
       seFaDcVal->Text       ="0";         //本期折旧额
//       scFaDcUser->LocateKey(g_sdUserCode); //操作员
       scFaDcUser->Text=g_sdUserCode; //操作员
       chkFaDcPost->Checked  =false;         //制凭证标志
       seFaDcPzCode->Text    ="";         //凭证号
       seFaDcPzCode->Enabled =false;
   }

}
//---------------------------------------------------------------------------
void __fastcall TfrmFaDc::GetDataFromComObject()
{
    scFaDcFadn->LocateKey(GetFieldValue("FaDcFadn"));
    scFaDcFadn->Text=scFaDcFadn->ItemData[0];
    seFaDcFadnName->Text=scFaDcFadn->ItemData[1];
    sgFaDc->LocateGrid(1,scFaDcFadn->Text);
    scFaDcFadm->LocateKey(GetFieldValue("FaDcFadm"));
    scFaDcFadm->Text=scFaDcFadm->ItemData[0];
    seFaDcOVal->Text=GetFieldValue("FaDcOVal");
    seFaDcDVal->Text=GetFieldValue("FaDcDVal");
    seFaDcEVal->Text=GetFieldValue("FaDcEVal");
    seFaDcTWork->Text=GetFieldValue("FaDcTWork");
    seFaDcAWork->Text=GetFieldValue("FaDcAWork");
    seFaDcPeriod->Text=GetFieldValue("FaDcPeriod");
    seFaDcAPeriod->Text=GetFieldValue("FaDcAPeriod");
    seFaDcVal->Text=GetFieldValue("FaDcVal");
    scFaDcUser->LocateKey(GetFieldValue("FaDcUser"));
    scFaDcUser->Text=scFaDcUser->ItemData[0];
    chkFaDcPost->Checked=((GetFieldValue("FaDcPost")=="1")?true:false);
    seFaDcPzCode->Text=GetFieldValue("FaDcPzCode");
}
//---------------------------------------------------------------------------
void __fastcall TfrmFaDc::SendDataToComObject()
{
    //add 2003-02-21
    SetFieldValue("FaDcFadn",scFaDcFadn->Text);
    SetFieldValue("FaDcFMonth",scFaDcFMonth->Text);
    AnsiString StrFadm = "Select FadmCode from sdFadm where FadmName='"+scFaDcFadm->Text+"'";
    if(GetComboBox(StrFadm, StrFadm))
    SetFieldValue("FaDcFadm",StrFadm);
    else
    SetFieldValue("FaDcFadm", "");
    SetFieldValue("FaDcOVal",seFaDcOVal->Text);
    SetFieldValue("FaDcEVal",seFaDcEVal->Text);
    SetFieldValue("FaDcTWork",seFaDcTWork->Text);
    SetFieldValue("FaDcAWork",seFaDcAWork->Text);
    SetFieldValue("FaDcPeriod",seFaDcPeriod->Text);
    SetFieldValue("FaDcAPeriod",seFaDcAPeriod->Text);
    SetFieldValue("FaDcDVal",seFaDcDVal->Text);
    SetFieldValue("FaDcVal",seFaDcVal->Text);
    SetFieldValue("FaDcUser",scFaDcUser->Text);
    SetFieldValue("FaDcPost",IntToStr(chkFaDcPost->Checked));
    if(chkFaDcPost->Checked)
    SetFieldValue("FaDcPzCode",seFaDcPzCode->Text);
    //add 2003-02-21
}
//---------------------------------------------------------------------------
void __fastcall TfrmFaDc::WaitUserInput()
{
   scFaDcFadn->SetFocus();
}
//---------------------------------------------------------------------------
AnsiString __fastcall TfrmFaDc::GetDataToGrid()
{
    AnsiString  s;
    scFaDcFadm->LocateKey(GetFieldValue("FaDcFadm"));
    s = "\t" +GetFieldValue("FaDcFadn")+
        "\t" +scFaDcFadm->ItemData[0]+
        "\t" +GetFieldValue("FaDcVal")+
        "\t" +GetFieldValue("FaDcDVal");
    return(s);
}
//---------------------------------------------------------------------------
void __fastcall TfrmFaDc::RefreshGridData(int mAction)
{
    AnsiString ItemStr;
    ItemStr = GetDataToGrid();
    if (mAction ==  0)   //Add
    {
        sgFaDc->AddItem(ItemStr);
    }
    else if(mAction ==  1)   //Modify
    {
        int i   =   sgFaDc->Row;
        sgFaDc->RemoveItem(i);
        sgFaDc->AddItem(ItemStr,i);
    }
    else if(mAction ==  2)      //Delete
    {
        sgFaDc->RemoveItem(sgFaDc->Row);
    }
}
//---------------------------------------------------------------------------
void __fastcall TfrmFaDc::FillGridWithData()
{
    AnsiString ItemStr;
    comServer->MoveFirst();
    sgFaDc->RowCount    =   1;
    while (comServer->Eof   ==  0)
    {
        ItemStr =  GetDataToGrid();
        sgFaDc->AddItem(ItemStr);
        comServer->MoveNext();
    }
}
//---------------------------------------------------------------------------
void __fastcall TfrmFaDc::scFaDcFMonthClick(TObject *Sender)
{
    AnsiString s;
    s = scFaDcFMonth->Text;
    if(s.IsEmpty())
      return;
    if(LastFaDcFMonth==s)
      return;
    LastFaDcFMonth=s;
    if(scFaDcFMonth->ItemIndex==-1)
    {
      MessageDlg("财务月份不存在",mtWarning,TMsgDlgButtons()<<mbOK,0);
      scFaDcFMonth->LocateKey(LastFaDcFMonth);
    }
    else
    {
      s = " FaDcFMonth = '" + s + "'";
      comServer->FilterString = s;
      comServer->Query();
      FillGridWithData();
      comServer->MoveFirst();
      GetDataFromComObject();
     }

}
//---------------------------------------------------------------------------
void __fastcall TfrmFaDc::chkFaDcPostClick(TObject *Sender)
{
     if(chkFaDcPost->Checked)
        seFaDcPzCode->Enabled=true;
     else
        seFaDcPzCode->Enabled=false;
}
//---------------------------------------------------------------------------
void __fastcall TfrmFaDc::RefreshUpdateData(int MsgSrc,int MsgType)
{
/*
        switch(MsgSrc)
      {
        case euSdFadm:
          if(ShowUpdateMessage(MsgSrc,MsgType))
            FillComboBox(Query,scFaDcFadm,"select fadmcode,fadmname from sdfadm order By fadmcode","fadmName","fadmCode");
         break;
        case euSdUser:
          if(ShowUpdateMessage(MsgSrc,MsgType))
             FillComboBox(Query,scFaDcUser,"select UserCode,UserName from sdUser order By UserCode","UserName","UserCode");
         break;
        case euSdFadn:
          if(ShowUpdateMessage(MsgSrc,MsgType))
           FillComboBox(Query,scFaDcFadn,"select  fadncode,fadnname,fadnfadm,fadnpval,fadneval  from sdfadn order By fadncode","fadncode","fadnName","fadnfadm","fadnpval","fadneval");
         break;
        case euSdFc:
          if(ShowUpdateMessage(MsgSrc,MsgType))
           FillComboBox(Query,scFaDcFMonth,"select FcMonth from sdFc order By FcMonth","FcMonth");
         break;
       default:
         break;
      }
*/
}
//---------------------------------------------------------------------------
void __fastcall TfrmFaDc::scFaDcFadnKeyDown(TObject *Sender, WORD &Key,
      TShiftState Shift)
{
    if(Key==13 && CurrentState==caNormal)
    {
      comServer->LocateByKey(scFaDcFadn->Text+scFaDcFMonth->Text);
      GetDataFromComObject();
    }

}
//---------------------------------------------------------------------------
void __fastcall TfrmFaDc::sgFaDcClick(TObject *Sender)
{
    if (sgFaDc->Row > 0)
       comServer->LocateByKey(sgFaDc->TextMatrix[sgFaDc->Row][1]+"\t"+scFaDcFMonth->Text+"\t");
    if (!comServer->Eof)
         GetDataFromComObject();
}
//---------------------------------------------------------------------------
void __fastcall TfrmFaDc::muEditDetailClick(TObject *Sender) //符合计提条件计提折旧

⌨️ 快捷键说明

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