⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 main.cpp

📁 民航飞机生产管理系统,实现了飞机定检坚控,小时卡起落卡等的坚控,并能生成工作任务包
💻 CPP
📖 第 1 页 / 共 5 页
字号:
  delete f45;
  return;
  }

}
else
{
delete f45;
return;
}


TForm44* f44=new TForm44(this);
f44->title1->Caption=f45->jx->Text+"飞机"+f45->jn->Text+"年"+f45->qy->Text+"到"+f45->jy->Text+
"月份飞行数据比较直方图";
int fh[20],fhzong;
fhzong=0;
DataModule1->bzcsjtj->First();
int yuecount=DataModule1->bzcsjtj->RecordCount;
AnsiString fhlabel;
float rlyl,zongrlyl,kyl,zongkyl;
zongrlyl=0;
zongkyl=0;
for(int i=0;i<yuecount;i++)
{
 rlyl=(float)(DataModule1->bzcsjtjkz->AsInteger/DataModule1->bzcsjtjzyjr->AsInteger);
 zongrlyl=zongrlyl+rlyl/60;
 kyl=DataModule1->bzcsjtjkyl->AsFloat;
 zongkyl=zongkyl+kyl;
 fh[i]=DataModule1->bzcsjtjfh->AsInteger;
 fhlabel=IntToStr(DataModule1->bzcsjtjyue->AsInteger);
 fhzong=fhzong+fh[i];
  f44->BarSeries1->AddBar(fh[i]/60,fhlabel,clRed);
 DataModule1->bzcsjtj->Next();
}
f44->BarSeries6->AddBar(fhzong/60,f45->jx->Text,clGreen);
f44->rlylpj->Caption="日利用率各月平均值:"+FormatFloat("###.##",zongrlyl/yuecount);
f44->kylpj->Caption="可用率各月平均值:"+FormatFloat("###.##",zongkyl/yuecount);
f44->QuickRep1->Preview();

delete f45;
delete f44;
}
//---------------------------------------------------------------------------

void __fastcall TForm1::N53_oldClick(TObject *Sender)
{
AnsiString d1=DateToStr(Now()-30);
int l=d1.Length();
AnsiString tmp1=d1.SubString(1,2);
AnsiString nian=d1.SubString(l-1,2);
//nian="20"+nian;
if(tmp1.SubString(2,1)=="/")
{
  tmp1=d1.SubString(1,1);
}
else
{
  tmp1=d1.SubString(1,2);
}

DataModule1->dingjian->Filtered=false;
DataModule1->dingjian->Filter="日期 >= '"+tmp1+"/1/"+nian+"' AND 日期 <= '"+tmp1+"/30/"+nian+"'";
DataModule1->dingjian->Filtered=true;
if(DataModule1->dingjian->RecordCount==0)
{
  M1->ShowMessage("无记录!");
  return;
}
TForm33* f33=new TForm33(this);
f33->QuickRep1->Preview();
delete f33;
}
//---------------------------------------------------------------------------

void __fastcall TForm1::N54_oldClick(TObject *Sender)
{
AnsiString d1=DateToStr(Now()-30);
int l=d1.Length();
AnsiString tmp1=d1.SubString(1,2);
AnsiString nian=d1.SubString(l-1,2);
//nian="20"+nian;
if(tmp1.SubString(2,1)=="/")
{
  tmp1=d1.SubString(1,1);
}
else
{
  tmp1=d1.SubString(1,2);
}

DataModule1->md82ctrl->Filtered=false;
DataModule1->md82ctrl->Filter="日期 >= '"+tmp1+"/1/"+nian+"' AND 日期 <= '"+tmp1+"/30/"+nian+"'";
DataModule1->md82ctrl->Filtered=true;
TForm34* f34=new TForm34(this);
f34->QuickRep1->Preview();
delete f34;
 
}
//---------------------------------------------------------------------------


void __fastcall TForm1::N56_oldClick(TObject *Sender)
{
AnsiString d1=DateToStr(Now()-30);
int l=d1.Length();
AnsiString tmp1=d1.SubString(1,2);
AnsiString nian=d1.SubString(l-1,2);
nian="20"+nian;
if(tmp1.SubString(2,1)=="/")
{
  tmp1=d1.SubString(1,1);
}
else
{
  tmp1=d1.SubString(1,2);
}

DataModule1->bzcsjtj->Filtered=false;
DataModule1->bzcsjtj->Filter="月 = '"+tmp1+"' AND 年 ='"+nian+"'";
DataModule1->bzcsjtj->Filtered=true;
if(DataModule1->bzcsjtj->RecordCount==0)
{
   M1->ShowMessage("无记录!");
   return;
}
TForm40* f40=new TForm40(this);
f40->QuickRep1->Preview();
delete f40;        
}
//---------------------------------------------------------------------------

void __fastcall TForm1::N55_oldClick(TObject *Sender)
{
AnsiString d1=DateToStr(Now()-30);
int l=d1.Length();
AnsiString tmp1=d1.SubString(1,2);
AnsiString nian=d1.SubString(l-1,2);
nian="20"+nian;
if(tmp1.SubString(2,1)=="/")
{
  tmp1=d1.SubString(1,1);
}
else
{
  tmp1=d1.SubString(1,2);
}

DataModule1->fjyb->Filtered=false;
DataModule1->fjyb->Filter="月份 = '"+tmp1+"' AND 年 ='"+nian+"'";
DataModule1->fjyb->Filtered=true;
if(DataModule1->fjyb->RecordCount==0)
{
   M1->ShowMessage("无记录!");
   return;
}
TForm37* f37=new TForm37(this);
f37->QuickRep1->Preview();
delete f37;               
}
//---------------------------------------------------------------------------

void __fastcall TForm1::N57_oldClick(TObject *Sender)
{
TForm42* f42=new TForm42(this);
f42->ShowModal();
if(f42->ComboBox1->Text!=NULL&&f42->ComboBox2->Text!=NULL)
{
   DataModule1->fjyb->Filtered=false;
   DataModule1->fjyb->Filter="年 = '"+f42->ComboBox1->Text+"' AND 月份 = '"+f42->ComboBox2->Text+"'";
   DataModule1->fjyb->Filtered=false;
   if(DataModule1->fjyb->RecordCount==0)
   {
    M1->ShowMessage("无此记录!");
   }
   else
   {
  TForm12* Form12=new TForm12(Application);
        Form12->QuickRep1->Preview();
        delete Form12;
   }
}
delete f42;
}
//---------------------------------------------------------------------------

void __fastcall TForm1::N58_oldClick(TObject *Sender)
{
TForm42* f42=new TForm42(this);
f42->ShowModal();
if(f42->ComboBox1->Text!=NULL&&f42->ComboBox2->Text!=NULL)
{
   DataModule1->bzcsjtj->Filtered=false;
   DataModule1->bzcsjtj->Filter="年 = '"+f42->ComboBox1->Text+"' AND 月 = '"+f42->ComboBox2->Text+"'";
   DataModule1->bzcsjtj->Filtered=true;
   if(DataModule1->bzcsjtj->RecordCount==0)
   {
    M1->ShowMessage("无此记录!");
   }
   else
   {
 TForm40* f40=new TForm40(this);
f40->QuickRep1->Preview();
delete f40;        
   }
}
delete f42;
}
//---------------------------------------------------------------------------


void __fastcall TForm1::N8282901_oldClick(TObject *Sender)
{
TForm46* f46 =new TForm46(this);
f46->ShowModal();
AnsiString tj1,tj2,tj3,tj4;
if(f46->CheckBox1->Checked&&f46->jixing->Text!=NULL)
        tj1="机型='"+f46->jixing->Text+"'";
else
        tj1="";
if(f46->CheckBox2->Checked&&f46->leixing->Text!=NULL)
        tj2="类型='"+f46->leixing->Text+"'";
else
        tj2="";
if(f46->CheckBox3->Checked&&f46->jiange->Text!=NULL)
        tj3="间隔='"+f46->jiange->Text+"'";
else
        tj3="";
if(f46->CheckBox4->Checked&&f46->zhuanye->Text!=NULL)
        tj4="专业='"+f46->zhuanye->Text+"'";
else
        tj4="";
DataModule1->hours->Filtered=false;
if((tj1!="")&&((tj2!="")||(tj3!="")||(tj4!="")))
        tj1+=" AND ";
if((tj2!="")&&((tj3!="")||(tj4!="")))
        tj2+=" AND ";
if((tj3!="")&&(tj4!=""))
        tj3+=" AND ";
AnsiString fstr=tj1+tj2+tj3+tj4;
DataModule1->hours->Filter=fstr;
DataModule1->hours->Filtered=true;
TForm10* Form10=new TForm10(this);
if(Form10->DBGrid1->DataSource!=DataModule1->hour)
      Form10->DBGrid1->DataSource=DataModule1->hour;
        Form10->Caption="满足查询条件:"+fstr+"的工卡清单";
Form10->ShowModal();

delete Form10;
delete f46;
}
//---------------------------------------------------------------------------


void __fastcall TForm1::N47_oldClick(TObject *Sender)
{
AnsiString d1=DateToStr(Now());
int l=d1.Length();
AnsiString yue=d1.SubString(1,2);
AnsiString nian=d1.SubString(l-1,2);

if(yue.SubString(2,1)=="/")
{
  yue=d1.SubString(1,1);
}
else
{
  yue=d1.SubString(1,2);
}
if(yue=="12")
if((StrToInt(nian)+1)>9)
 nian=IntToStr(StrToInt(nian)+1);
 else
 nian="0"+IntToStr(StrToInt(nian)+1);
yue=IntToStr(StrToInt(yue)%12+1);


DataModule1->jihua->Filtered=false;
DataModule1->jihua->Filter="年 = '20"+nian+"' AND 月 = '"+yue+"'";
DataModule1->jihua->Filtered=true;
if(DataModule1->jihua->RecordCount!=0)
{
 TForm47* f47=new TForm47(this);
  f47->QuickRep1->Preview();
  delete f47;
return;
}
TDate min=StrToDate(yue+"/1/"+nian);
TDate  max;
if(yue=="2")
 max=StrToDate(yue+"/28/"+nian);
 else
 {
if(yue=="4"||yue=="6"||yue=="9"||yue=="11")
  max=StrToDate(yue+"/30/"+nian);
  else
  max=StrToDate(yue+"/31/"+nian);
  }
int maxi=max-Now();
int mini=min-Now();
int days;
TDate jihuadate;
DataModule1->bzcsjtj->Filtered=false;
if(yue=="2")
DataModule1->bzcsjtj->Filter="月= '12'";
else
DataModule1->bzcsjtj->Filter="月 = '"+IntToStr((StrToInt(yue)+10)%12)+"'";
DataModule1->bzcsjtj->Filtered=false;
float rkyl=DataModule1->bzcsjtjrkyl->AsFloat;
TMemo* m1=new TMemo(Form1->Handle);
m1->Lines->LoadFromFile(lujing+"plane.txt");
for(int i=0;i<m1->Lines->Count;i++)
{
    days=int((jiange[i]-(jizong[i]/60-qidian[i])-iwucha[i])/rkyl);
   if(days>mini&&days<maxi)
   {
      jihuadate=Now()+days;
      DataModule1->jihua->Append();
      DataModule1->jihuanian->AsInteger=StrToInt("20"+nian);
      DataModule1->jihuayue->AsInteger=StrToInt(yue);
      DataModule1->jihuajihao->AsInteger=StrToInt(m1->Lines->Strings[i]);
      DataModule1->jihuajixing->AsString=jixing[i];
      DataModule1->jihuajiange->AsInteger=jiange[i];
      if(jixing[i]=="MD90")
      DataModule1->jihualeixing->AsString=IntToStr(cishu[i]%100+1)+"A";
      else
      DataModule1->jihualeixing->AsString=IntToStr(cishu[i]%8+1)+"A";
      DataModule1->jihuaxyrq->AsDateTime=jihuadate;
      DataModule1->jihua->Post();
   }
   else
   {
   days=int((2*jiange[i]-(jizong[i]/60-qidian[i])-iwucha[i])/rkyl);
        if(days>mini&&days<maxi)
   {
      jihuadate=Now()+days;
      DataModule1->jihua->Append();
      DataModule1->jihuanian->AsInteger=StrToInt("20"+nian);
      DataModule1->jihuayue->AsInteger=StrToInt(yue);
      DataModule1->jihuajihao->AsInteger=StrToInt(m1->Lines->Strings[i]);
      DataModule1->jihuajixing->AsString=jixing[i];
      DataModule1->jihuajiange->AsInteger=jiange[i];
      if(jixing[i]=="MD90")
      DataModule1->jihualeixing->AsString=IntToStr(cishu[i]%100+1)+"A";
      else
      DataModule1->jihualeixing->AsString=IntToStr(cishu[i]%8+1)+"A";
      DataModule1->jihuaxyrq->AsDateTime=jihuadate;
      DataModule1->jihua->Post();
   }
    }
}

int jihao;

AnsiString jixing;
int jiashu=m1->Lines->Count;
 for(int jia=0;jia<jiashu;jia++)
 {       jihao=StrToInt(memo->Lines->Strings[jia]);
         if(jihao>2200)
            jixing="MD90";
           else
           jixing="MD82";
     DataModule1->tiaojian->Filtered=false;
     DataModule1->tiaojian->Filter="定检名称 <> 'A' AND 定检名称 <> 'C' AND 机型 = '"+jixing+"'";
     DataModule1->tiaojian->Filtered=true;
     int tjcount=DataModule1->tiaojian->RecordCount;
     DataModule1->tiaojian->First();
      AnsiString leixing,jiange,wucha;

     for(int i=0;i<tjcount;i++)
     {

        leixing=DataModule1->tiaojianField->AsString;
        jiange=DataModule1->tiaojianField2->AsString;
        wucha=DataModule1->tiaojianField3->AsString;

        if(jiange=="")
        jiange="0";
        if(wucha=="")
        wucha="0";
        DataModule1->md82ctrl->Filtered=false;
        DataModule1->md82ctrl->Filter="机号 = '"+IntToStr(jihao)+
        "' AND 类型 = '"+leixing+"' AND 间隔 = '"+jiange+"' AND 备注 = '新'";
        DataModule1->md82ctrl->Filtered=true;

        if(DataModule1->md82ctrl->RecordCount==0)
        {
        DataModule1->tiaojian->Next();
        continue;
        }
        DataModule1->md82ctrl->Last();
        //int leijicishu=DataModule1->md82cishu->AsInteger;
        int shangcishijian=DataModule1->md82shangcishijian->AsInteger;
     DataModule1->dayreport->IndexFieldNames="机身总";
        DataModule1->dayreport->Filtered=false;
        DataModule1->dayreport->Filter="机号 = '"+IntToStr(jihao)+"'";
        DataModule1->dayreport->Filtered=true;
        if(DataModule1->dayreport->RecordCount==0)
        {
        DataModule1->tiaojian->Next();
        continue;
        }
        DataModule1->dayreport->Last();
        int dangqian=0;
        if(leixing=="FH")
           dangqian=DataModule1->dayreportField4->AsInteger/60;
        if(leixing=="LD")
            dangqian=DataModule1->dayreportField10->AsInteger;
         if(leixing=="EC")
            dangqian=DataModule1->dayreportField11->AsInteger;
         if(leixing=="EH")
            dangqian=DataModule1->dayreportField6->AsInteger/60;
        if(leixing=="M")
                {
                dangqian=Now();

⌨️ 快捷键说明

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