glbqtywillrev.cpp
来自「一个以前收集的基于C/S架构的ERP客户端源代码」· C++ 代码 · 共 263 行
CPP
263 行
//---------------------------------------------------------------------------
#include <vcl.h>
#include "GlbQtyWillRev.h"
#include "GlbQF_NeedGet.h"
#include "GlbmQtyWillRev.h"
//---------------------------------------------------------------------------
#pragma hdrstop
#pragma package(smart_init)
#pragma link "QueryBaseForm"
#pragma link "SDGrid"
#pragma link "KSAdvReport"
#pragma resource "*.dfm"
TfrmGlbQtyWillRev *frmGlbQtyWillRev;
TfrmGlbmQtyWillRev *TmpGlbmQtyWillRev;
TfrmGlbQF_NeedGet *TmpGlbQtyWillRev;
//---------------------------------------------------------------------------
__fastcall TfrmGlbQtyWillRev::TfrmGlbQtyWillRev(TComponent* Owner, HWND chWnd, AnsiString MidCode,AnsiString WhereStr)
: TQueryBaseForm(Owner,chWnd,MidCode,WhereStr)
{
//InitGridControl();
labMemory->Caption="";
QueryGrid=sgGlbQtyWillRev;
}
//---------------------------------------------------------------------------
void __fastcall TfrmGlbQtyWillRev::InitGridControl()
{
}
//---------------------------------------------------------------------------
void __fastcall TfrmGlbQtyWillRev::tbQueryClick(TObject *Sender)
{
if(!ShowQueryWindow())
return;
try{
StartWaitForm("正在查询,请稍候...");
labMemory->Caption="--"+FGfcmonthInfo;
FillGridWithData();
}
__finally
{
EndWaitForm();
}
}
//---------------------------------------------------------------------------
bool __fastcall TfrmGlbQtyWillRev::ShowQueryWindow()
{
TmpGlbQtyWillRev=new TfrmGlbQF_NeedGet(this);
TmpGlbQtyWillRev->Caption="预付帐款总帐查询过滤";
TmpGlbQtyWillRev->FQtyAmtSign="1";
TmpGlbQtyWillRev->ShowModal();
if(TmpGlbQtyWillRev->CancelQuery)
{
delete TmpGlbQtyWillRev;
return false;
}
FilterStr=TmpGlbQtyWillRev->CreateSqlString;
FGfcmonthInfo=TmpGlbQtyWillRev->FmonthInfo;
delete TmpGlbQtyWillRev;
return true;
}
//---------------------------------------------------------------------------
void __fastcall TfrmGlbQtyWillRev::ClearControl(bool BringToNext)
{
return;
}
//---------------------------------------------------------------------------
void __fastcall TfrmGlbQtyWillRev::GetDataFromComObject()
{
return;
}
//---------------------------------------------------------------------------
void __fastcall TfrmGlbQtyWillRev::WaitUserInput()
{
return;
}
//---------------------------------------------------------------------------
void __fastcall TfrmGlbQtyWillRev::RefreshGridData(int mAction)
{
return;
}
//---------------------------------------------------------------------------
void __fastcall TfrmGlbQtyWillRev::DisplayBill()
{
return;
}
//---------------------------------------------------------------------------
void __fastcall TfrmGlbQtyWillRev::GetBill(AnsiString BillID)
{
return;
}
//---------------------------------------------------------------------------
AnsiString __fastcall TfrmGlbQtyWillRev::GetHeadQueryStr()
{
AnsiString Selectstr,Fromstr,Wherestr,Orderstr;
//客户编码,客户名称,财务月份,摘要,方向,
Selectstr = "select PzdClient,ClientName,PzhFmonth,NoteBookText=IsNULL(NoteBookText,''),PzdDir,KmName = IsNULL(GlkmName,'')";
Selectstr += ",GlbBopAmt,GlbDopAmt,GlbCopAmt,GlbDoyAmt,GlbCoyAmt,GlbAoyAmt";
Fromstr = " From sdPzd,sdPzh,sdClient,sdNoteBook,sdGlkm,sdGlb";
Wherestr = " where PzdClient=IsNULL(ClientCode,'') and PzhCode=PzdCode and PzdZy*=NoteBookCode and PzdGlkm*=GlkmCode and PzhCheck=1";
Wherestr += " and pzdGlkm like '115%'";
Wherestr += " and pzhFmonth=GlbFmonth and pzdGlkm=Glbglkm";
if(FilterStr.Trim() != "")
Wherestr += " and " + FilterStr;
Orderstr = " order by PzdClient,PzhFmonth";
sSQL=Selectstr+Fromstr+Wherestr+Orderstr;
return(sSQL);
}
//---------------------------------------------------------------------------
AnsiString __fastcall TfrmGlbQtyWillRev::GetSpace(int iNum)
{
AnsiString strSpace;
for(int i=1;i<iNum;i++)
strSpace=strSpace+AnsiString(" ");
return strSpace;
}
//---------------------------------------------------------------------------
void __fastcall TfrmGlbQtyWillRev::FillGridWithData()
{
TComResultSet *RsQuery;
AnsiString ItemStr0,ItemStr1,ItemStr2,sSql;
sSql=GetHeadQueryStr(); //取Head查询的SQL语句
if(sSql=="")
return;
sgGlbQtyWillRev->RowCount=1;
RecentBillCode="";
RsQuery=new TComResultSet(Handle,g_ClientHandle);
RsQuery->Open(sSql,"");
RsQuery->MoveFirst();
ItemStr0 = "";
ItemStr1 = "";
ItemStr2 = "";
while(RsQuery->Eof == 0)
{
double pAmtsum = RsQuery->FieldByName("GlbDopAmt").ToDouble() - RsQuery->FieldByName("GlbCopAmt").ToDouble(); //本期余额
double yAmtsum = RsQuery->FieldByName("GlbAoyAmt").ToDouble(); //本年累计
//期初
ItemStr0 = RsQuery->FieldByName("pzdClient") + "\t" +
RsQuery->FieldByName("ClientName") + "\t" +
RsQuery->FieldByName("PzhFmonth") + "\t" +
"期初余额\t\t\t" ;
if(RsQuery->FieldByName("GlbBopAmt")==0)
ItemStr0 += "平\t0.00" ;
else
ItemStr0 += (RsQuery->FieldByName("PzdDir")=="1" ? "借":"贷") ;
ItemStr0 += "\t" + FormatFloat("#,##0.00",RsQuery->FieldByName("GlbBopAmt").ToDouble());
//本期 --------------------------------------------------------------------------
ItemStr1 = "\t\t" +
RsQuery->FieldByName("PzhFmonth") + "\t" +
"本期合计\t" +
FormatFloat("#,##0.00",RsQuery->FieldByName("GlbDopAmt").ToDouble()) + "\t" +
FormatFloat("#,##0.00",RsQuery->FieldByName("GlbCopAmt").ToDouble()) + "\t" ;
if(pAmtsum == 0)
ItemStr1 += "平\t0.00" ;
else
ItemStr1 += (RsQuery->FieldByName("PzdDir")=="1" ? "借":"贷") ;
ItemStr1 += "\t" + FormatFloat("#,##0.00",pAmtsum) ;
//本年---------------------------------------------------------------------------
ItemStr2 = "\t\t" +
RsQuery->FieldByName("PzhFmonth") + "\t" +
"本年合计\t" +
FormatFloat("#,##0.00",RsQuery->FieldByName("GlbDoyAmt").ToDouble()) + "\t" +
FormatFloat("#,##0.00",RsQuery->FieldByName("GlbCoyAmt").ToDouble()) + "\t" ;
if(yAmtsum == 0)
ItemStr2 += "平\t0.00" ;
else
ItemStr2 += (RsQuery->FieldByName("PzdDir")=="1" ? "借":"贷") ;
ItemStr2 += "\t" + FormatFloat("#,##0.00",yAmtsum) ;
sgGlbQtyWillRev->AddItem(ItemStr0);
sgGlbQtyWillRev->AddItem(ItemStr1);
sgGlbQtyWillRev->AddItem(ItemStr2);
RsQuery->MoveNext();
}
RsQuery->Close();
delete RsQuery;
}
//---------------------------------------------------------------------------
void __fastcall TfrmGlbQtyWillRev::muFirstClick(TObject *Sender)
{
if(sgGlbQtyWillRev->RowCount > 1)
sgGlbQtyWillRev->Row=1;
}
//---------------------------------------------------------------------------
void __fastcall TfrmGlbQtyWillRev::muNextClick(TObject *Sender)
{
if(sgGlbQtyWillRev->RowCount > 1 && sgGlbQtyWillRev->Row < sgGlbQtyWillRev->RowCount-1)
sgGlbQtyWillRev->Row=sgGlbQtyWillRev->Row+1;
}
//---------------------------------------------------------------------------
void __fastcall TfrmGlbQtyWillRev::muLastClick(TObject *Sender)
{
if(sgGlbQtyWillRev->RowCount > 1)
sgGlbQtyWillRev->Row=sgGlbQtyWillRev->RowCount-1;
}
//---------------------------------------------------------------------------
void __fastcall TfrmGlbQtyWillRev::muPreviousClick(TObject *Sender)
{
if(sgGlbQtyWillRev->RowCount > 1 && sgGlbQtyWillRev->Row > 1)
sgGlbQtyWillRev->Row=sgGlbQtyWillRev->Row-1;
}
//---------------------------------------------------------------------------
void __fastcall TfrmGlbQtyWillRev::tbRefreshClick(TObject *Sender)
{
if(sSQL=="")
return;
FillGridWithData();
}
//---------------------------------------------------------------------------
void __fastcall TfrmGlbQtyWillRev::FormShow(TObject *Sender)
{
tbQueryClick(this);
}
//---------------------------------------------------------------------------
void __fastcall TfrmGlbQtyWillRev::sgGlbQtyWillRevDblClick(TObject *Sender)
{
int iRow;
iRow=sgGlbQtyWillRev->Row;
if(iRow > 1)
if(sgGlbQtyWillRev->Cells[2][iRow].Trim()!="")
{
try
{
TmpGlbmQtyWillRev=new TfrmGlbmQtyWillRev(this);
//TmpGlbmQtyWillRev->FQtyAmtGlkm=Trim(sgGlbQtyWillRev->Cells[0][iRow]);
TmpGlbmQtyWillRev->FQtyAmtFmonth=Trim(sgGlbQtyWillRev->Cells[2][iRow]);
TmpGlbmQtyWillRev->FMfcmonthInfo=FGfcmonthInfo;
TmpGlbmQtyWillRev->FGlbQtyAmtSign=1;
TmpGlbmQtyWillRev->ShowModal();
}
__finally
{
delete TmpGlbmQtyWillRev;
}
}
}
//---------------------------------------------------------------------------
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?