📄 dayqryset.~cpp
字号:
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "dayqryset.h"
#include "dm.h"
#include "repplane.h"
#include "control.h"
#include "main.h"
#include "Unit24.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma link "KsSkinButtons"
#pragma link "KsSkinCheckBoxs"
#pragma link "KsSkinComboBoxs"
#pragma link "KsSkinForms"
#pragma link "KsSkinGroupBoxs"
#pragma link "KsSkinPanels"
#pragma link "se_controls"
#pragma link "XLSDbRead"
#pragma link "XLSReadWriteII"
#pragma resource "*.dfm"
TForm15 *Form15;
AnsiString tj1str,tj2str,tj3str;
extern TMemo *memo;
extern int cishu[20],rectlength[20],jiange[20];
extern AnsiString djming[20],lujing;
//---------------------------------------------------------------------------
__fastcall TForm15::TForm15(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TForm15::FormCreate(TObject *Sender)
{
DateTimePicker1->Date=Date();
DateTimePicker2->Date=Date();
TMemo *memo=new TMemo(Form15->Handle);
memo->Lines->LoadFromFile(lujing+"plane.txt");
for(int i=0;i<memo->Lines->Count;i++)
ComboBox2->Items->Add(memo->Lines->Strings[i]);
}
//---------------------------------------------------------------------------
void __fastcall TForm15::Button1Click(TObject *Sender)
{
/*if(CheckBox3->Checked)
{
if(CheckBox1->Checked&&AnsiString(ComboBox2->Text)!="")
tj1str="机号= '"+AnsiString(ComboBox2->Text)+"' AND ";
if(CheckBox2->Checked)
tj2str="日期>= '"+DateToStr(DateTimePicker1->Date)+"'";
tj3str="日期<= '"+DateToStr(DateTimePicker2->Date)+"'";
tj2str=tj1str+tj2str+" AND "+tj3str;
}
else
{
if(CheckBox1->Checked&&AnsiString(ComboBox2->Text)!="")
tj1str="机号= '"+AnsiString(ComboBox2->Text)+"'";
if(CheckBox2->Checked)
tj2str="日期>= '"+DateToStr(DateTimePicker1->Date)+"'";
if(tj1str!=""&&tj2str!="")
tj1str+=" AND ";
}
tj1str+=tj2str;} */
//if(CheckBox2->Checked&&!CheckBox1->Checked&&!CheckBox3->Checked)
//{
TDate d=DateTimePicker1->Date;
String dstr=d.FormatString("YYYY-MM-DD");
d=d+1;
String dstr2=d.FormatString("YYYY-MM-DD");
tj1str="日期 >= '"+dstr+"'";
DataModule1->dayreport->Filtered=false;
DataModule1->dayreport->Filter=tj1str;
DataModule1->dayreport->Filtered=true;
DataModule1->dayreport->IndexFieldNames="机号";
TMemo* m1=new TMemo(Handle);
m1->Lines->LoadFromFile(lujing+"plane.txt");
DataModule1->dayreport->First();
AnsiString jhstr,jh[20],rq[20];
int tingchang=0;
int i=0;
int xb=0;
while(i<m1->Lines->Count)
{
//jhstr=DataModule1->dayreportField2->AsString;
// if(jhstr!=m1->Lines->Strings[i])
// {
jh[xb]=m1->Lines->Strings[i];
xb++;
i++;
// }
// else
// {
//i++;
// DataModule1->dayreport->Next();
//}
}
if(xb>0)
{
tj1str="机号 = '"+jh[0]+"' AND 日期 < '"+dstr2+"'";
DataModule1->dayreport->Filtered=false;
DataModule1->dayreport->Filter=tj1str;
DataModule1->dayreport->Filtered=true;
DataModule1->dayreport->IndexFieldNames="日期;机号";
DataModule1->dayreport->Last();
rq[0]=DataModule1->dayreportField->AsDateTime.FormatString("YYYY-MM-DD");
for(int j=1;j<xb;j++)
{
// tj1str=tj1str+" OR 机号= '"+jh[j]+"' AND 日期 <= '"+DateToStr(DateTimePicker1->Date)+"'";
DataModule1->dayreport->Filtered=false;
DataModule1->dayreport->Filter="机号 = '"+jh[j]+"' AND 日期 < '"+dstr2+"'";
DataModule1->dayreport->Filtered=true;
DataModule1->dayreport->IndexFieldNames="日期;机号";
DataModule1->dayreport->Last();
rq[j]=DataModule1->dayreportField->AsDateTime.FormatString("YYYY-MM-DD");
}
tj1str="(机号 = '"+jh[0]+"' AND 日期 >= '"+rq[0]+"' AND 日期<= '"+dstr+"')";
for(int n=1;n<xb;n++)
{
tj1str=tj1str+" OR (机号 = '"+jh[n]+"' AND 日期 >= '"+rq[n]+"' AND 日期<= '"+dstr+"')";
}
// tj1str=tj1str+" OR 日期>= '"+DateTimePicker1->Date.DateString()+"'";
DataModule1->dayreport->Close();
DataModule1->dayreport->Active=true;
DataModule1->dayreport->Filter=tj1str;
DataModule1->dayreport->Filtered=true;
DataModule1->dayreport->Last();
DataModule1->dayreport->IndexFieldNames="机号";
}
/*}
else
{
DataModule1->dayreport->Filtered=false;
DataModule1->dayreport->Filter=tj1str;
DataModule1->dayreport->Filtered=true;
DataModule1->dayreport->Last();
}*/
if(oRadio->ItemIndex==0)
{
Form6->createdata();
Form6->QuickRep1->Preview();
}
else
{
if(S1->Execute())
{
const int i_line=DataModule1->dayreport->RecordCount;
const int i_col=DataModule1->dayreport->FieldCount;
String s_fname[20];
String s_value[20];
XLS->Clear();
XLS->Filename=S1->FileName;
for(int i=0;i<i_col;i++)
{
DataModule1->dayreport->First();
s_fname[i]=DataModule1->dayreport->Fields->Fields[i]->FieldName;
XLS->Sheets->Items[0]->WriteWideString(i,0,-1,s_fname[i]);
for(int j=0;j<i_line;j++)
{
s_value[j]=DataModule1->dayreport->FieldByName(s_fname[i])->AsString;
if(s_fname[i]=="机身修后"||s_fname[i]=="机身总"||s_fname[i]=="左发总"||s_fname[i]=="右发总")
s_value[j]=FormatFloat("###,###0.00",StrToInt(s_value[j])/60.0);
XLS->Sheets->Items[0]->WriteWideString(i,j+1,-1,s_value[j]);
DataModule1->dayreport->Next();
}
}
XLS->Write();
}
}
//delete Form6;
tj1str=tj2str=tj3str="";
CheckBox1->Checked=false;
CheckBox2->Checked=false;
CheckBox3->Checked=false;
DateTimePicker2->Enabled=false;
}
//---------------------------------------------------------------------------
void __fastcall TForm15::CheckBox3Click(TObject *Sender)
{
DateTimePicker2->Enabled=true;
}
//---------------------------------------------------------------------------
void __fastcall TForm15::Button2Click(TObject *Sender)
{
DataModule1->dayreport->Filtered=false;
Close();
}
//---------------------------------------------------------------------------
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -