📄 wagescrip.cpp
字号:
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "WageScrip.h"
//#include "VW_MaccBatch.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma link "QueryBaseForm"
#pragma link "SDGrid"
#pragma link "KSAdvReport"
#pragma link "SDComboBox"
#pragma resource "*.dfm"
TfrmWageScrip *frmWageScrip;
//---------------------------------------------------------------------------
__fastcall TfrmWageScrip::TfrmWageScrip(TComponent* Owner, HWND chWnd, AnsiString MidCode,AnsiString WhereStr)
: TQueryBaseForm(Owner,chWnd,MidCode,WhereStr)
{
scMonth->ItemIndex=-1;
FillComboBox(Handle,scMonth,"select FcMonth from sdfc ","FcMonth");
FilterStr="";
sSQL="";
sgWageScrip->RowCount=1;
QueryGrid=sgWageScrip;
TComResultSet *RQuery;
AnsiString ItemStr,sSql;
sSql="select WageItemCode,WageItemName,WageItemFormula from kswageitem order by wageitemNO"; //取Head查询的SQL语句
RQuery=new TComResultSet(Handle,g_ClientHandle);
RQuery->Open(sSql,"");
RQuery->MoveFirst();
fi_count = RQuery->RecordCount ;
Formula_n="";
for (i=0;i<fi_count;i++)
{
m_WItem[i].Code=RQuery->FieldByName("WageItemCode");
m_WItem[i].Name=RQuery->FieldByName("WageItemName") ;
m_WItem[i].Formula=RQuery->FieldByName("WageItemFormula");
Formula_n=Formula_n+m_WItem[i].Code+",";
RQuery->MoveNext();
}
sgWage->ColCount = fi_count + 3;
for (i=3;i<=fi_count+2;i++)
sgWage->Columns->Items[i]->TitleString= m_WItem[i-3].Name ;
RQuery->Close();
FillGridWithData();
}
//---------------------------------------------------------------------------
__fastcall TfrmWageScrip::TfrmWageScrip(TComponent* Owner,AnsiString wherestr)
: TQueryBaseForm(Owner)
{
scMonth->ItemIndex=-1;
FillComboBox(Handle,scMonth,"select FcMonth from sdfc ","FcMonth");
FilterStr="";
sSQL="";
sgWageScrip->RowCount=1;
QueryGrid=sgWageScrip;
TComResultSet *RQuery;
AnsiString ItemStr,sSql;
sSql="select WageItemCode,WageItemName,WageItemFormula from kswageitem order by wageitemtype,wageitemcode"; //取Head查询的SQL语句
RQuery=new TComResultSet(Handle,g_ClientHandle);
RQuery->Open(sSql,"");
RQuery->MoveFirst();
fi_count = RQuery->RecordCount ;
Formula_n="";
for (i=0;i<fi_count;i++)
{
m_WItem[i].Code=RQuery->FieldByName("WageItemCode");
m_WItem[i].Name=RQuery->FieldByName("WageItemName") ;
m_WItem[i].Formula=RQuery->FieldByName("WageItemFormula");
Formula_n=Formula_n+m_WItem[i].Code+",";
RQuery->MoveNext();
}
sgWage->ColCount = fi_count + 3;
for (i=3;i<=fi_count+2;i++)
sgWage->Columns->Items[i]->TitleString= m_WItem[i-3].Name ;
RQuery->Close();
tbControl->Enabled=false;
TBorderIcons tempBI = BorderIcons;
tempBI >> biMinimize;
BorderIcons = tempBI;
FilterStr=wherestr;
FillGridWithData();
}
//---------------------------------------------------------------------------
void __fastcall TfrmWageScrip::tbQueryClick(TObject *Sender)
{
try{
StartWaitForm("正在查询,请稍候...");
FillGridWithData();
}
__finally
{
EndWaitForm();
}
}
//---------------------------------------------------------------------------
//---------------------------------------------------------------------------
void __fastcall TfrmWageScrip::ClearControl(bool BringToNext)
{
return;
}
//---------------------------------------------------------------------------
void __fastcall TfrmWageScrip::GetDataFromComObject()
{
return;
}
//---------------------------------------------------------------------------
void __fastcall TfrmWageScrip::WaitUserInput()
{
return;
}
//---------------------------------------------------------------------------
void __fastcall TfrmWageScrip::RefreshGridData(int mAction)
{
return;
}
//---------------------------------------------------------------------------
void __fastcall TfrmWageScrip::DisplayBill()
{
return;
}
//---------------------------------------------------------------------------
void __fastcall TfrmWageScrip::GetBill(AnsiString BillID)
{
return;
}
//---------------------------------------------------------------------------
//获取查询语句
AnsiString __fastcall TfrmWageScrip::GetQueryStr()
{
AnsiString Selectstr,Fromstr,Wherestr,Orderstr;
Selectstr =" select *";
Fromstr=" from ksVW_WageScrip ";
Wherestr=" where wageFmonth='"+scMonth->Text+"' ";
Orderstr=" order by wageFmonth";
sSQL=Selectstr+Fromstr+Wherestr+Orderstr;
return(sSQL);
}
//---------------------------------------------------------------------------
void __fastcall TfrmWageScrip::FillGridWithData()
{
TComResultSet *RsQuery;
AnsiString ItemStr,sSql;
//获取查询语句
sSql=GetQueryStr();
if(sSql=="")
return;
sgWage->RowCount=1;
sgWageScrip->RowCount=1;
RsQuery=new TComResultSet(Handle,g_ClientHandle);
RsQuery->Open(sSql,"");
RsQuery->MoveFirst();
while( RsQuery->Eof == 0)
{
ItemStr= RsQuery->FieldByName("wageFmonth")+
"\t"+RsQuery->FieldByName("wageEmployee" )+
"\t"+RsQuery->FieldByName("WageEmployeeName" );
for ( int k=0;k<fi_count;k++)
ItemStr=ItemStr+"\t"+RsQuery->FieldByName(m_WItem[k].Code );
sgWage->AddItem(ItemStr);
for(int i=0; i< sgWage->ColCount; i++)
{
sgWageScrip->Cells[i][0] = sgWage->Columns->Items[i]->TitleString;
}
AnsiString ss;
sgWageScrip->AddItem(ItemStr);
if( sgWage->RowCount>RsQuery->RecordCount)
break;
for(int j=0;j<sgWage->ColCount;j++)
ss=ss+"\t";
sgWageScrip->AddItem(ss);
if( sgWage->RowCount>RsQuery->RecordCount)
break;
AnsiString s;
for(int i=0;i<sgWage->ColCount;i++)
s=s+sgWage->Columns->Items[i]->TitleString+"\t";
sgWageScrip->AddItem(s);
RsQuery->MoveNext();
}
RsQuery->Close();
delete RsQuery;
}
//---------------------------------------------------------------------------
void __fastcall TfrmWageScrip::muFirstClick(TObject *Sender)
{
if(sgWage->RowCount > 1)
sgWage->Row=1;
}
//---------------------------------------------------------------------------
void __fastcall TfrmWageScrip::muPreviousClick(TObject *Sender)
{
if(sgWage->RowCount > 1 && sgWage->Row > 1)
sgWage->Row=sgWage->Row-1;
}
//---------------------------------------------------------------------------
void __fastcall TfrmWageScrip::muNextClick(TObject *Sender)
{
if(sgWage->RowCount > 1 && sgWage->Row < sgWage->RowCount-1)
sgWage->Row=sgWage->Row+1;
}
//---------------------------------------------------------------------------
void __fastcall TfrmWageScrip::muLastClick(TObject *Sender)
{
if(sgWage->RowCount > 1)
sgWage->Row=sgWage->RowCount-1;
}
//---------------------------------------------------------------------------
void __fastcall TfrmWageScrip::tbRefreshClick(TObject *Sender)
{
if(sSQL=="")
return;
FillGridWithData();
}
//-------------------------------------------------------------------------------
void __fastcall TfrmWageScrip::sgWageDblClick(TObject *Sender)
{
/*int ARow=sgMacc->Row;
if(ARow>0)
{
FillGridWithDetail();
} */
}
//---------------------------------------------------------------------------
void __fastcall TfrmWageScrip::scMonthClick(TObject *Sender)
{
FillGridWithData();
}
//---------------------------------------------------------------------------
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -