glb_dlzfil.cpp

来自「科思ERP部分源码及控件」· C++ 代码 · 共 133 行

CPP
133
字号
//---------------------------------------------------------------------------
#include <vcl.h>
#include "Glb_DlzFil.h"
//---------------------------------------------------------------------------
#pragma hdrstop
#pragma package(smart_init)
#pragma link "StdBaseForm"
#pragma link "SDComboBox"
#pragma link "cspin"
#pragma link "CSPIN"
#pragma resource "*.dfm"

TfrmGlb_DlzFil *frmGlb_DlzFil;
//---------------------------------------------------------------------------
__fastcall TfrmGlb_DlzFil::TfrmGlb_DlzFil(TComponent* Owner)
   : TStdBaseForm(Owner)
{
}
//---------------------------------------------------------------------------
__fastcall TfrmGlb_DlzFil::TfrmGlb_DlzFil(TComponent* Owner, HWND chWnd, AnsiString MidCode,AnsiString WhereStr)
   : TStdBaseForm(Owner,chWnd,MidCode,WhereStr)
{
}
//---------------------------------------------------------------------------
void __fastcall TfrmGlb_DlzFil::InitEditControl()
{
   AnsiString sSQL;
   TComResultSet *RsQuery;

   sSQL="select GlkmCode,memo=GlkmCode+space(12-Len(GlkmCode))+GlkmName";
   sSQL+=" from sdGlkm where GlkmBookType=3 Order by GlkmCode";
   FillComboBox(Handle,scGlkm_Dlz,sSQL,"memo","GlkmCode");

   RsQuery=new  TComResultSet(Handle,g_ClientHandle);
   RsQuery->Open("select MinYear=Min(FcYear),MaxYear=Max(FcYear) from sdFc","");
   RsQuery->MoveFirst();
   while(!RsQuery->Eof)
   {
      CsFcYearF->MinValue=RsQuery->FieldByName("MinYear").ToInt();
      CsFcYearT->MinValue=RsQuery->FieldByName("MinYear").ToInt();
      CsFcYearF->MaxValue=RsQuery->FieldByName("MaxYear").ToInt();
      CsFcYearT->MaxValue=RsQuery->FieldByName("MaxYear").ToInt();
      CsFcYearF->Increment=1;
      CsFcYearT->Increment=1;
      RsQuery->MoveNext();
   }
   RsQuery->Close();
   delete RsQuery;
}
//---------------------------------------------------------------------------
void __fastcall TfrmGlb_DlzFil::FormShow(TObject *Sender)
{
   int CurYear,CurMonth;
   CurYear=g_sdFMonth.SubString(1,4).ToInt();
   CurMonth=g_sdFMonth.SubString(5,2).ToInt();
   InitEditControl();
   cheGlkmWb->Checked=true;
   chePzUnPost->Checked=false;
   rbOrderByDG->Checked=true;
   CsFcYearF->Text=CurYear;
   CsFcYearT->Text=CurYear;
   CsMonthF->Text=CurMonth;
   CsMonthT->Text=CurMonth;
   if(scGlkm_Dlz->Items->Count>0)
     scGlkm_Dlz->ItemIndex=0;
}
//---------------------------------------------------------------------------
void __fastcall TfrmGlb_DlzFil::GetSQLWhereString()
{
   AnsiString fFcFmonth,tFcFmonth;
   AnsiString CreatGlbSQLString="";
   AnsiString CreatPzhSQLString="";

   if((Trim(CsMonthF->Text)).Length()==1)
      fFcFmonth=Trim(CsFcYearF->Text)+"0"+Trim(CsMonthF->Text);
   else
      fFcFmonth=Trim(CsFcYearF->Text)+Trim(CsMonthF->Text);
   if((Trim(CsMonthT->Text)).Length()==1)
      tFcFmonth=Trim(CsFcYearT->Text)+"0"+Trim(CsMonthT->Text);
   else
      tFcFmonth=Trim(CsFcYearT->Text)+Trim(CsMonthT->Text);

   if(tFcFmonth<fFcFmonth)
     throw Exception("结束的会计期间:'"+tFcFmonth+"'不能小于开始的会计期间:'"+fFcFmonth+"'");

   CreatGlbSQLString = "GlbFmonth>='" + fFcFmonth + "' and GlbFmonth<='" + tFcFmonth+ "' and ";
   CreatPzhSQLString = "PzhFmonth>='" + fFcFmonth + "' and PzhFmonth<='" + tFcFmonth+ "' and ";

   if(Trim(scGlkm_Dlz->ItemData[1]) != "")
   {
     m_GlkmCodeDlz = Trim(scGlkm_Dlz->ItemData[1]);
     CreatPzhSQLString += "PzdGlkm Like '" + Trim(scGlkm_Dlz->ItemData[1]) + "%' and ";
   }
   else
     throw Exception("多栏帐不能为空!");

   if(chePzUnPost->Checked)
     CreatPzhSQLString += "PzhCheck=1 and (PzhPost=0 or PzhPost=1) and ";
   else
     CreatPzhSQLString += "PzhCheck=1 and PzhPost=1 and ";

   if(rbOrderByDG->Checked)
     m_OrderString=" Order by PzhDate,PzdGlkm";
   else
     m_OrderString=" Order by PzdGlkm,PzhDate";

   if(CreatPzhSQLString.Length()>5)
     m_CreatePzhSQLString = CreatPzhSQLString.SubString(1,CreatPzhSQLString.Length()-5);
   else
     m_CreatePzhSQLString = "";

   if(CreatGlbSQLString.Length()>5)
     m_CreateGlbSQLString = CreatGlbSQLString.SubString(1,CreatGlbSQLString.Length()-5);
   else
     m_CreateGlbSQLString = "";
}
//---------------------------------------------------------------------------
void __fastcall TfrmGlb_DlzFil::bbtOKClick(TObject *Sender)
{
   GetSQLWhereString();
   m_CancelQuery=false;
   Close();
}
//---------------------------------------------------------------------------
void __fastcall TfrmGlb_DlzFil::bbtCancelClick(TObject *Sender)
{
   m_CancelQuery=true;
   Close();
}
//---------------------------------------------------------------------------


⌨️ 快捷键说明

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