📄 yddldffx.cpp
字号:
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "YDdldffx.h"
#include "YDdatam.h"
#include "YDmain.h"
#include "YDdldffxdy.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TFdldffx *Fdldffx;
//---------------------------------------------------------------------------
__fastcall TFdldffx::TFdldffx(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TFdldffx::FormCreate(TObject *Sender)
{
YDData->TBhsdw->Open();
YDData->TBxtcs->Open();
}
//---------------------------------------------------------------------------
void TFdldffx::bbcs()
{
Table1->Close();
Table1->EmptyTable();
Table1->Open();
AnsiString sql,nf,hsqx;
nf=YDData->TBxtcs->FieldByName("xt_hsqx")->AsString.SubString(1,4);
hsqx=YDData->TBxtcs->FieldByName("xt_hsqx")->AsString;
AnsiString c1,c2,c3,c4;
TQuery * Query1=new TQuery(this);
Query1->DatabaseName="YDDB";
TQuery * Query2=new TQuery(this);
Query2->DatabaseName="YDDB";
TQuery * Query3=new TQuery(this);
Query3->DatabaseName="YDDB";
TQuery * Query4=new TQuery(this);
Query4->DatabaseName="YDDB";
TQuery * Query5=new TQuery(this);
Query5->DatabaseName="YDDB";
if (RadioButton1->Checked)
{
sql="select * from xlcs";
}
if (RadioButton2->Checked)
{
c1=YDData->TBhsdw->FieldByName("xt_pqbm")->AsString.SubString(1,1);
sql="select * from pqdm where datalength(Rtrim(pqdm))="+c1;
}
if (RadioButton3->Checked)
{
c2=IntToStr(StrToInt(YDData->TBhsdw->FieldByName("xt_pqbm")->AsString.SubString(1,1)+
YDData->TBhsdw->FieldByName("xt_pqbm")->AsString.SubString(3,1)));
sql="select * from pqdm where datalength(Rtrim(pqdm))="+c2;
}
if (RadioButton4->Checked)
{
c3=IntToStr(StrToInt(YDData->TBhsdw->FieldByName("xt_pqbm")->AsString.SubString(1,1)+
YDData->TBhsdw->FieldByName("xt_pqbm")->AsString.SubString(3,1)+
YDData->TBhsdw->FieldByName("xt_pqbm")->AsString.SubString(5,1)));
sql="select * from pqdm where datalength(Rtrim(pqdm))="+c3;
}
if (RadioButton5->Checked)
{
c4=IntToStr(StrToInt(YDData->TBhsdw->FieldByName("xt_pqbm")->AsString.SubString(1,1)+
YDData->TBhsdw->FieldByName("xt_pqbm")->AsString.SubString(3,1)+
YDData->TBhsdw->FieldByName("xt_pqbm")->AsString.SubString(5,1)+
YDData->TBhsdw->FieldByName("xt_pqbm")->AsString.SubString(7,1)));
sql="select * from pqdm where datalength(Rtrim(pqdm))="+c4;
}
double zhdl,zhdf,gdltq,sdltq,dftq,df1,df2,df3,df4,df5,df6,df7,df8,df9,df10,df11,df12,df13,df14,df15,df16,df17;
zhdl=0;zhdf=0;df1=0;sdltq=0;gdltq=0;dftq=0;df2=0;df3=0;df4=0;df5=0;df6=0;df7=0;df8=0;df9=0;df10=0;df11=0;df12=0;df13=0;df14=0;df15=0;df16=0;df17=0;
double fdf2,fdf5,fdf16;
Query1->SQL->Clear();
Query1->SQL->Add(sql);
Query1->ExecSQL();
Query1->Open();
while (!Query1->Eof)
{
fdf2=0;fdf5=0;fdf16=0;
Table1->Append();
if (RadioButton1->Checked)
{
Table1->FieldByName("name")->AsString=Query1->FieldByName("xlmc")->AsString;
sql="select 'df8'=sum(tjbsdl),'df9'=sum(tjxsdl),'df1'=sum(zjygdl) from yhda0000 where klbs='"+Query1->FieldByName("xlmc")->AsString+"'";
sql=sql+" and ydfl='关口表'";
Query2->Close();
Query2->SQL->Clear();
Query2->SQL->Add(sql);
Query2->ExecSQL();
Query2->Open();
sql="select 'df4'=sum(sdl),'df15'=sum(hjdf) from yhda0000 where klbs='"+Query1->FieldByName("xlmc")->AsString+"'";
sql=sql+" and (ydfl='照明户' or ydfl='动力户' or ydfl='大用户')";
Query3->Close();
Query3->SQL->Clear();
Query3->SQL->Add(sql);
Query3->ExecSQL();
Query3->Open();
sql="select 'df2'=sum(zjygdl)from yhda"+nf+" where klbs='"+Query1->FieldByName("xlmc")->AsString+"'";
sql=sql+" and ydfl='关口表' and hsqx='"+hsqx+"'";
Query4->Close();
Query4->SQL->Clear();
Query4->SQL->Add(sql);
Query4->ExecSQL();
Query4->Open();
fdf2=Query4->FieldByName("df2")->AsFloat+Query2->FieldByName("df1")->AsFloat;
sql="select 'df5'=sum(sdl),'df16'=sum(hjdf) from yhda"+nf+" where klbs='"+Query1->FieldByName("xlmc")->AsString+"'";
sql=sql+" and (ydfl='照明户' or ydfl='动力户' or ydfl='大用户') and hsqx='"+hsqx+"'";
Query5->Close();
Query5->SQL->Clear();
Query5->SQL->Add(sql);
Query5->ExecSQL();
Query5->Open();
fdf5=Query5->FieldByName("df5")->AsFloat+Query3->FieldByName("df4")->AsFloat;
fdf16=Query5->FieldByName("df16")->AsFloat+Query3->FieldByName("df15")->AsFloat;
}
else
{
Table1->FieldByName("name")->AsString=Query1->FieldByName("pqmc")->AsString;
sql="select 'df1'=sum(zjygdl),'df8'=sum(tjbsdl),'df9'=sum(tjxsdl) from yhda0000";
sql=sql+" where ydfl='总表' and xzq like '"+Query1->FieldByName("pqdm")->AsString+"%'";
Query2->Close();
Query2->SQL->Clear();
Query2->SQL->Add(sql);
Query2->ExecSQL();
Query2->Open();
sql="select 'df4'=sum(sdl),'df15'=sum(hjdf)";
sql=sql+" from yhda0000 where xzq like '"+Query1->FieldByName("pqdm")->AsString+"%'";
sql=sql+" and (ydfl='照明户' or ydfl='动力户' or ydfl='大用户')";
Query3->Close();
Query3->SQL->Clear();
Query3->SQL->Add(sql);
Query3->ExecSQL();
Query3->Open();
sql="select 'df2'=sum(zjygdl)from yhda"+nf+" where xzq like '"+Query1->FieldByName("pqdm")->AsString+"%'";
sql=sql+" and ydfl='总表' and hsqx='"+hsqx+"'";
Query4->Close();
Query4->SQL->Clear();
Query4->SQL->Add(sql);
Query4->ExecSQL();
Query4->Open();
fdf2=Query4->FieldByName("df2")->AsFloat+Query2->FieldByName("df1")->AsFloat;
sql="select 'df5'=sum(sdl),'df16'=sum(hjdf) from yhda"+nf+" where xzq like '"+Query1->FieldByName("pqdm")->AsString+"%'";
sql=sql+" and (ydfl='照明户' or ydfl='动力户' or ydfl='大用户') and hsqx='"+hsqx+"'";
Query5->Close();
Query5->SQL->Clear();
Query5->SQL->Add(sql);
Query5->ExecSQL();
Query5->Open();
fdf5=Query5->FieldByName("df5")->AsFloat+Query3->FieldByName("df4")->AsFloat;
fdf16=Query5->FieldByName("df16")->AsFloat+Query3->FieldByName("df15")->AsFloat;
}
Table1->FieldByName("df1")->AsFloat=Query2->FieldByName("df1")->AsFloat;
Table1->FieldByName("df2")->AsFloat=fdf2;
Table1->FieldByName("df4")->AsFloat=Query3->FieldByName("df4")->AsFloat;
Table1->FieldByName("df5")->AsFloat=fdf5;
Table1->FieldByName("df8")->AsFloat=Query2->FieldByName("df8")->AsFloat;
Table1->FieldByName("df9")->AsFloat=Query2->FieldByName("df9")->AsFloat;
Table1->FieldByName("df15")->AsFloat=Query3->FieldByName("df15")->AsFloat;
Table1->FieldByName("df16")->AsFloat=fdf16;
Table1->FieldByName("df7")->AsFloat=Query2->FieldByName("df1")->AsFloat-Query3->FieldByName("df4")->AsFloat;
if (Query3->FieldByName("df4")->AsFloat>0)
Table1->FieldByName("df13")->AsFloat=Query3->FieldByName("df15")->AsFloat/Query3->FieldByName("df4")->AsFloat*100;
if (Query2->FieldByName("df1")->AsFloat>0)
Table1->FieldByName("df11")->AsFloat=Query2->FieldByName("df9")->AsFloat/Query2->FieldByName("df1")->AsFloat*100;
Table1->Post();
df1=df1+Table1->FieldByName("df1")->AsFloat;
df2=df2+Table1->FieldByName("df2")->AsFloat;
df4=df4+Table1->FieldByName("df4")->AsFloat;
df5=df5+Table1->FieldByName("df5")->AsFloat;
df7=df7+Table1->FieldByName("df7")->AsFloat;
df8=df8+Table1->FieldByName("df8")->AsFloat;
df9=df9+Table1->FieldByName("df9")->AsFloat;
df10=df10+Table1->FieldByName("df7")->AsFloat-Table1->FieldByName("df8")->AsFloat-
Table1->FieldByName("df9")->AsFloat;
df15=df15+Table1->FieldByName("df15")->AsFloat;
df16=df16+Table1->FieldByName("df16")->AsFloat;
Query1->Next();
}
Table1->Append();
Table1->FieldByName("name")->AsString="合计";
Table1->FieldByName("df1")->AsFloat=df1;
Table1->FieldByName("df2")->AsFloat=df2;
Table1->FieldByName("df4")->AsFloat=df4;
Table1->FieldByName("df5")->AsFloat=df5;
Table1->FieldByName("df7")->AsFloat=df7;
Table1->FieldByName("df8")->AsFloat=df8;
Table1->FieldByName("df9")->AsFloat=df9;
Table1->FieldByName("df10")->AsFloat=df10;
if (df1>0)
Table1->FieldByName("df11")->AsFloat=df9/df1*100;
if (df4>0)
Table1->FieldByName("df13")->AsFloat=df15/df4*100;
Table1->Post();
delete Query1;
delete Query2;
delete Query3;
delete Query4;
delete Query5;
}
//-----------------------------------------
void __fastcall TFdldffx::SpeedButton1Click(TObject *Sender)
{
bbcs();
}
//---------------------------------------------------------------------------
void __fastcall TFdldffx::SpeedButton3Click(TObject *Sender)
{
Fdldffxdy=new TFdldffxdy(Application);
Fdldffxdy->QuickRep1->Preview();
delete Fdldffxdy;
}
//---------------------------------------------------------------------------
void __fastcall TFdldffx::FormClose(TObject *Sender, TCloseAction &Action)
{
YDData->TBhsdw->Close();
YDData->TBxtcs->Close();
Table1->Close();
Fmain->gnjs(Fmain->tcjc);
}
//---------------------------------------------------------------------------
void __fastcall TFdldffx::SpeedButton5Click(TObject *Sender)
{
Close();
}
//---------------------------------------------------------------------------
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -