nrrm.cpp

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

CPP
203
字号
//---------------------------------------------------------------------------

#include <vcl.h>
#pragma hdrstop

#include "Nrrm.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma link "RecBaseForm"
#pragma link "fpanel"
#pragma link "SDEdit"
#pragma link "SDGrid"
#pragma link "SDComboBox"
#pragma link "DateEdit"
#pragma resource "*.dfm"
TfrmNrrm *frmNrrm;
//---------------------------------------------------------------------------
__fastcall TfrmNrrm::TfrmNrrm(TComponent* Owner, HWND chWnd, AnsiString MidCode,AnsiString WhereStr)
        : TRecBaseForm(Owner,chWnd,MidCode,WhereStr)
{
//SetAutoCodeString(seNrrmCode,"Acm-73");
}
//---------------------------------------------------------------------------
//---------------------------------------------------------------------------
void __fastcall TfrmNrrm::ClearControl(bool BringToNext)
{
    if(!BringToNext)
    {
      seNrrmCode->Text="";  //票据号码
      seNrrmFmonth->Text=g_sdFMonth;  //月份
      deNrrmDate->Text   =g_sdCurDate;  //日期
      seNrrmAmt->Text   ="0.00";
      seNrrmInr->Text   ="0.00";  //利息
      seNrrmExp->Text   ="0.00";  //费用
      scNrrmExpense->ItemIndex =-1;  //费用类型
      lblNrrmUser->Caption =g_sdUserCode;  //操作员
      memNrrmDesc->Text   ="";
    }
}
//---------------------------------------------------------------------------
void __fastcall TfrmNrrm::InitEditControl()
{
       ClientGroup->AddComponent(2,false,false,true, FloatPanel1,FloatPanel1->Name);
       ClientGroup->AddComponent(2,true,true,false, sgNrrm,sgNrrm->Name);
       ClientGroup->AddComponent(2,false,true,true, seNrrmCode,seNrrmCode->Name);
       ClientGroup->AddComponent(2,true,true,true, seNrrmFmonth,seNrrmFmonth->Name);
       FillComboBox(Handle,scNrrmExpense,"select ExpenseCode+'-'+ExpenseName Memo,ExpenseCode from sdExpense order by ExpenseCode" ,"Memo","ExpenseCode");
}
//---------------------------------------------------------------------------
void __fastcall TfrmNrrm::GetDataFromComObject()
{
      seNrrmCode->Text   =GetFieldValue("NrrmCode");
      sgNrrm->LocateGrid(1,GetFieldValue("NrrmCode"));
      seNrrmFmonth->Text =GetFieldValue("NrrmFmonth");
      deNrrmDate->Text   =GetFieldValue("NrrmDate");
      seNrrmAmt->Text   =GetFieldValue("NrrmAmt");
      seNrrmInr->Text   =GetFieldValue("NrrmInr");
      seNrrmExp->Text   =GetFieldValue("NrrmExp");
      scNrrmExpense->LocateKey(GetFieldValue("NrrmExpense"));
      scNrrmExpense->Text  = scNrrmExpense->ItemData[0];
      lblNrrmUser->Caption  = GetFieldValue("NrrmUser");
      memNrrmDesc->Text   =GetFieldValue("NrrmDesc");
}
//---------------------------------------------------------------------------
void __fastcall TfrmNrrm::SendDataToComObject()
{
      SetFieldValue("NrrmCode",seNrrmCode->Text);
      SetFieldValue("NrrmFmonth",seNrrmFmonth->Text);
      SetFieldValue("NrrmDate",deNrrmDate->Text);
      SetFieldValue("NrrmAmt",seNrrmAmt->Text);
      SetFieldValue("NrrmInr",seNrrmInr->Text);
      SetFieldValue("NrrmExp",seNrrmExp->Text);
      SetFieldValue("NrrmExpense",scNrrmExpense->ItemData[1]);
      SetFieldValue("NrrmUser",lblNrrmUser->Caption);
      SetFieldValue("NrrmDesc",memNrrmDesc->Text);
}
//---------------------------------------------------------------------------
void __fastcall TfrmNrrm::WaitUserInput()
{
      if(seNrrmCode->Enabled)
       seNrrmCode->SetFocus();
}
//---------------------------------------------------------------------------
AnsiString __fastcall TfrmNrrm::GetDataToGrid()
{
      scNrrmExpense->LocateKey(GetFieldValue("NrrmExpense"));
      AnsiString  s;
      s = "\t" + GetFieldValue("NrrmCode")    +
          "\t" + GetFieldValue("NrrmAmt")  +
          "\t" + scNrrmExpense->ItemData[0]    ;
      return s;
}
//---------------------------------------------------------------------------
void __fastcall TfrmNrrm::RefreshGridData(int mAction)
{
      AnsiString ItemStr;
      ItemStr = GetDataToGrid();
      if (mAction ==  0)   //Add
      {
          sgNrrm->AddItem(ItemStr);
      }
      else if(mAction ==  1)   //Modify
      {
          int i   =   sgNrrm->Row;
          sgNrrm->ChangeItem(ItemStr,i);
      }
      else if(mAction ==  2)      //Delete
      {
          sgNrrm->RemoveItem(sgNrrm->Row);
      }
}
//---------------------------------------------------------------------------
void __fastcall TfrmNrrm::FillGridWithData()
{
      AnsiString ItemStr;
      comServer->MoveFirst();
      sgNrrm->RowCount    =   1;
      while (comServer->Eof   ==  0)
      {
         ItemStr =  GetDataToGrid();
         sgNrrm->AddItem(ItemStr);
         comServer->MoveNext();
      }
      comServer->MoveFirst();
}
//---------------------------------------------------------------------------

void __fastcall TfrmNrrm::FormShow(TObject *Sender)
{
      FillGridWithData();
      comServer->MoveFirst();
      GetDataFromComObject();
}
//---------------------------------------------------------------------------

void __fastcall TfrmNrrm::sgNrrmClick(TObject *Sender)
{
      if (sgNrrm->Row > 0)
          comServer->LocateByKey(WideString(sgNrrm->TextMatrix[sgNrrm->Row][1]));
      if (comServer->RecordCount>0)
          GetDataFromComObject();
}
//---------------------------------------------------------------------------
void __fastcall TfrmNrrm::seNrrmCodeExit(TObject *Sender)
{
    if(CurrentState==caNormal)
    {
      comServer->LocateByKey(WideString(seNrrmCode->Text));
      GetDataFromComObject();
    }
}
//---------------------------------------------------------------------------

void __fastcall TfrmNrrm::seNrrmCodeButtonClick(TObject *Sender)
{
    if(CurrentState!=caNormal)
    {
      AnsiString SqlStr;
      SqlStr="005[票据编号][登记日期][票据金额][客户名称][币种代码]select ArnrCode,ArnrDate,ArnrAmt,ClientName,ArnrCurrency from sdArnr,sdClient ";
      SqlStr+=" where ArnrClient=ClientCode and ArnrState=1 and ArnrCheck=1 ";
      SqlStr+=" order by ArnrCode ";
      TfrmWnQuery *p;
      try
      {
        StartWaitForm("正在查询,请稍候...");
        p=new TfrmWnQuery(this,"票据查询",SqlStr);
      }
      __finally
      {
        EndWaitForm();
      }
      if(p->ShowModal()==mrOk)
      {
        seNrrmCode->Text=p->ColData[1];
        seNrrmAmt->Text=p->ColData[3];
      }
      delete p;
    }

}
//---------------------------------------------------------------------------
void __fastcall TfrmNrrm::RefreshUpdateData(int MsgSrc,int MsgType)
{
/*
  switch(MsgSrc)
  {
   case euSdExpense:
    if(ShowUpdateMessage(MsgSrc,MsgType))
    {
       FillComboBox(Handle,scNrrmExpense,"select ExpenseCode+'-'+ExpenseName Memo,ExpenseCode from sdExpense order by ExpenseCode" ,"Memo","ExpenseCode");
    }
    break;
   default:
    break;
  }
*/  
}
//---------------------------------------------------------------------------




⌨️ 快捷键说明

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