📄 yddftzd.cpp
字号:
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "YDdftzd.h"
#include "YDdatam.h"
#include "YDdytzd.h"
#include "YDmain.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TFdftzd *Fdftzd;
//---------------------------------------------------------------------------
__fastcall TFdftzd::TFdftzd(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TFdftzd::FormCreate(TObject *Sender)
{
YDData->TBxtcs->Open();
YDData->TByhda->Open();
YDData->TBdbda->Open();
YDData->TBdjkp->Open();
YDData->TBfjjj->Open();
YDData->TBxlcs->Open();
while (!YDData->TBxlcs->Eof)
{
ComboBox1->Items->Add(YDData->TBxlcs->FieldByName("xlmc")->AsString);
YDData->TBxlcs->Next();
}
YDData->TBpqdm->Open();
while (!YDData->TBpqdm->Eof)
{
ComboBox2->Items->Add(Trim(YDData->TBpqdm->FieldByName("pqdm")->AsString)+":"+YDData->TBpqdm->FieldByName("pqmc")->AsString);
YDData->TBpqdm->Next();
}
Label1->Caption=YDData->TBxtcs->FieldByName("XT_HSQX")->AsString.SubString(1,4)+"年"+
YDData->TBxtcs->FieldByName("XT_HSQX")->AsString.SubString(6,2)+"月份电费通知单";
Fdytzd=new TFdytzd(Application);
}
//-----------------------------------
//-------------------------------------------
void TFdftzd::tzdjs(int jsfw)
{
bool tj;
Table1->Close();
Table1->EmptyTable();
Table1->Open();
YDData->TByhda->First();
while (!YDData->TByhda->Eof)
{
if (jsfw==1)
tj=YDData->TByhda->FieldByName("klbs")->AsString==ComboBox1->Text;
if (jsfw==2)
tj=YDData->TByhda->FieldByName("xzq")->AsString.AnsiPos(ComboBox2->Text.SubString(1,ComboBox2->Text.AnsiPos(":")-1))==1;
if (jsfw==3)
tj=YDData->TByhda->FieldByName("hhhh")->AsString==Edit1->Text;
if (tj)
{
Table1->Append();
Table1->FieldByName("hhhh")->AsString=YDData->TByhda->FieldByName("hhhh")->AsString;
Table1->FieldByName("yhmc")->AsString=YDData->TByhda->FieldByName("yhmc")->AsString;
Table1->FieldByName("yhdz")->AsString=YDData->TByhda->FieldByName("yhdz")->AsString;
AnsiString lb,dl,dj,df,bz;
int kps=1;
AnsiString dblb,bb,sycj,bycj,cs,bl,bldl,bsdl,xsdl,fldl,zdl;
int dbs=1;
YDData->TBdbda->First();
while (!YDData->TBdbda->Eof&&dbs<=5)
{
dblb=YDData->TBdbda->FieldByName("dblb")->AsString;
bb="B"+IntToStr(dbs)+"01";
sycj="B"+IntToStr(dbs)+"02";
bycj="B"+IntToStr(dbs)+"03";
cs="B"+IntToStr(dbs)+"04";
bl="B"+IntToStr(dbs)+"05";
bldl="B"+IntToStr(dbs)+"06";
bsdl="B"+IntToStr(dbs)+"07";
xsdl="B"+IntToStr(dbs)+"08";
fldl="B"+IntToStr(dbs)+"09";
zdl="B"+IntToStr(dbs)+"10";
Table1->FieldByName(sycj)->AsFloat=YDData->TBdbda->FieldByName("sycj")->AsFloat;
Table1->FieldByName(bycj)->AsFloat=YDData->TBdbda->FieldByName("bycj")->AsFloat;
Table1->FieldByName(cs)->AsFloat=YDData->TBdbda->FieldByName("cs")->AsFloat;
Table1->FieldByName(bl)->AsFloat=YDData->TBdbda->FieldByName("bl")->AsFloat;
Table1->FieldByName(bldl)->AsFloat=YDData->TBdbda->FieldByName("bldl")->AsFloat;
Table1->FieldByName(bsdl)->AsFloat=YDData->TBdbda->FieldByName("bsdl")->AsFloat;
Table1->FieldByName(xsdl)->AsFloat=YDData->TBdbda->FieldByName("xsdl")->AsFloat;
Table1->FieldByName(fldl)->AsFloat=YDData->TBdbda->FieldByName("fldl")->AsFloat;
Table1->FieldByName(zdl)->AsFloat=YDData->TBdbda->FieldByName("zdl")->AsFloat;
if (dblb.SubString(5,2)!="复")
Table1->FieldByName(bb)->AsString=YDData->TBdbda->FieldByName("dblb")->AsString;
else
{
Table1->FieldByName(bb)->AsString=YDData->TBdbda->FieldByName("dblb")->AsString.SubString(1,4)+"(平)";
dbs=dbs+1;
bb="B"+IntToStr(dbs)+"01";
sycj="B"+IntToStr(dbs)+"02";
bycj="B"+IntToStr(dbs)+"03";
cs="B"+IntToStr(dbs)+"04";
bl="B"+IntToStr(dbs)+"05";
bldl="B"+IntToStr(dbs)+"06";
bsdl="B"+IntToStr(dbs)+"07";
xsdl="B"+IntToStr(dbs)+"08";
fldl="B"+IntToStr(dbs)+"09";
zdl="B"+IntToStr(dbs)+"10";
Table1->FieldByName(bb)->AsString=YDData->TBdbda->FieldByName("dblb")->AsString.SubString(1,4)+"(峰)";
Table1->FieldByName(sycj)->AsFloat=YDData->TBdbda->FieldByName("sycjf")->AsFloat;
Table1->FieldByName(bycj)->AsFloat=YDData->TBdbda->FieldByName("bycjf")->AsFloat;
Table1->FieldByName(cs)->AsFloat=YDData->TBdbda->FieldByName("csf")->AsFloat;
Table1->FieldByName(bl)->AsFloat=YDData->TBdbda->FieldByName("blf")->AsFloat;
Table1->FieldByName(bldl)->AsFloat=YDData->TBdbda->FieldByName("bldlf")->AsFloat;
Table1->FieldByName(bsdl)->AsFloat=YDData->TBdbda->FieldByName("bsdlf")->AsFloat;
Table1->FieldByName(xsdl)->AsFloat=YDData->TBdbda->FieldByName("xsdlf")->AsFloat;
Table1->FieldByName(fldl)->AsFloat=YDData->TBdbda->FieldByName("fldlf")->AsFloat;
Table1->FieldByName(zdl)->AsFloat=YDData->TBdbda->FieldByName("zdlf")->AsFloat;
dbs=dbs+1;
bb="B"+IntToStr(dbs)+"01";
sycj="B"+IntToStr(dbs)+"02";
bycj="B"+IntToStr(dbs)+"03";
cs="B"+IntToStr(dbs)+"04";
bl="B"+IntToStr(dbs)+"05";
bldl="B"+IntToStr(dbs)+"06";
bsdl="B"+IntToStr(dbs)+"07";
xsdl="B"+IntToStr(dbs)+"08";
fldl="B"+IntToStr(dbs)+"09";
zdl="B"+IntToStr(dbs)+"10";
Table1->FieldByName(bb)->AsString=YDData->TBdbda->FieldByName("dblb")->AsString.SubString(1,4)+"(谷)";
Table1->FieldByName(sycj)->AsFloat=YDData->TBdbda->FieldByName("sycjg")->AsFloat;
Table1->FieldByName(bycj)->AsFloat=YDData->TBdbda->FieldByName("bycjg")->AsFloat;
Table1->FieldByName(cs)->AsFloat=YDData->TBdbda->FieldByName("csg")->AsFloat;
Table1->FieldByName(bl)->AsFloat=YDData->TBdbda->FieldByName("blg")->AsFloat;
Table1->FieldByName(bldl)->AsFloat=YDData->TBdbda->FieldByName("bldlg")->AsFloat;
Table1->FieldByName(bsdl)->AsFloat=YDData->TBdbda->FieldByName("bsdlg")->AsFloat;
Table1->FieldByName(xsdl)->AsFloat=YDData->TBdbda->FieldByName("xsdlg")->AsFloat;
Table1->FieldByName(fldl)->AsFloat=YDData->TBdbda->FieldByName("fldlg")->AsFloat;
Table1->FieldByName(zdl)->AsFloat=YDData->TBdbda->FieldByName("zdlg")->AsFloat;
}
YDData->TBdjkp->First();
while (!YDData->TBdjkp->Eof&&kps<=9)
{
if (YDData->TBdjkp->FieldByName("jsfsp")->AsString=="居民优待"||YDData->TBdjkp->FieldByName("jsfsp")->AsString=="职工优待")
{
if (dblb.SubString(1,4)!="无功"&&dblb.SubString(1,4)!="反向")
{
kps=ydjs(kps);
YDData->TBdjkp->Next();
continue;
}
}
if (dblb.SubString(1,4)!="无功"&&dblb.SubString(1,4)!="反向")
{
lb="F"+IntToStr(kps)+"01";
dl="F"+IntToStr(kps)+"02";
dj="F"+IntToStr(kps)+"03";
df="F"+IntToStr(kps)+"04";
bz="F"+IntToStr(kps)+"05";
Table1->FieldByName(dl)->AsFloat=YDData->TBdjkp->FieldByName("dlp")->AsFloat;
Table1->FieldByName(dj)->AsFloat=YDData->TBdjkp->FieldByName("djp")->AsFloat;
Table1->FieldByName(df)->AsFloat=YDData->TBdjkp->FieldByName("jep")->AsFloat;
Table1->FieldByName(bz)->AsString="";
if (dblb.SubString(5,2)!="复")
Table1->FieldByName(lb)->AsString=YDData->TBdjkp->FieldByName("lb")->AsString;
else
{
Table1->FieldByName(lb)->AsString=YDData->TBdjkp->FieldByName("lb")->AsString+"平";
kps=kps+1;
lb="F"+IntToStr(kps)+"01";
dl="F"+IntToStr(kps)+"02";
dj="F"+IntToStr(kps)+"03";
df="F"+IntToStr(kps)+"04";
bz="F"+IntToStr(kps)+"05";
Table1->FieldByName(lb)->AsString=YDData->TBdjkp->FieldByName("lb")->AsString+"峰";
Table1->FieldByName(dl)->AsFloat=YDData->TBdjkp->FieldByName("dlf")->AsFloat;
Table1->FieldByName(dj)->AsFloat=YDData->TBdjkp->FieldByName("djf")->AsFloat;
Table1->FieldByName(df)->AsFloat=YDData->TBdjkp->FieldByName("jef")->AsFloat;
kps=kps+1;
lb="F"+IntToStr(kps)+"01";
dl="F"+IntToStr(kps)+"02";
dj="F"+IntToStr(kps)+"03";
df="F"+IntToStr(kps)+"04";
bz="F"+IntToStr(kps)+"05";
Table1->FieldByName(lb)->AsString=YDData->TBdjkp->FieldByName("lb")->AsString+"谷";
Table1->FieldByName(dl)->AsFloat=YDData->TBdjkp->FieldByName("dlg")->AsFloat;
Table1->FieldByName(dj)->AsFloat=YDData->TBdjkp->FieldByName("djg")->AsFloat;
Table1->FieldByName(df)->AsFloat=YDData->TBdjkp->FieldByName("jeg")->AsFloat;
}
}
kps=kps+1;
YDData->TBdjkp->Next();
}
dbs=dbs+1;
YDData->TBdbda->Next();
}
if (kps<=9&&YDData->TByhda->FieldByName("jbdf")->AsFloat!=0)
{
kps=kps+1;
lb="F"+IntToStr(kps)+"01";
dl="F"+IntToStr(kps)+"02";
dj="F"+IntToStr(kps)+"03";
df="F"+IntToStr(kps)+"04";
bz="F"+IntToStr(kps)+"05";
Table1->FieldByName(lb)->AsString="基本电费";
Table1->FieldByName(dl)->AsFloat=YDData->TByhda->FieldByName("syrl")->AsFloat;
Table1->FieldByName(dj)->AsFloat=YDData->TByhda->FieldByName("jbdj")->AsFloat;
Table1->FieldByName(df)->AsFloat=YDData->TByhda->FieldByName("jbdf")->AsFloat;
Table1->FieldByName(bz)->AsString="";
}
if (kps<=9&&YDData->TByhda->FieldByName("lldf")->AsFloat!=0)
{
kps=kps+1;
lb="F"+IntToStr(kps)+"01";
dl="F"+IntToStr(kps)+"02";
dj="F"+IntToStr(kps)+"03";
df="F"+IntToStr(kps)+"04";
bz="F"+IntToStr(kps)+"05";
Table1->FieldByName(lb)->AsString="力率电费";
Table1->FieldByName(dl)->AsFloat=0;
Table1->FieldByName(dj)->AsFloat=0;
Table1->FieldByName(df)->AsFloat=YDData->TByhda->FieldByName("lldf")->AsFloat;
Table1->FieldByName(bz)->AsString="无功:"+FloatToStr(YDData->TByhda->FieldByName("zjwgdl")->AsFloat)+
"KWH 力率:"+FloatToStr(YDData->TByhda->FieldByName("byll")->AsFloat)+
"奖罚比"+FloatToStr(YDData->TByhda->FieldByName("jfbl")->AsFloat)+"%";
}
if (kps<=9&&YDData->TByhda->FieldByName("www")->AsFloat!=0)
{
kps=kps+1;
lb="F"+IntToStr(kps)+"01";
dl="F"+IntToStr(kps)+"02";
dj="F"+IntToStr(kps)+"03";
df="F"+IntToStr(kps)+"04";
bz="F"+IntToStr(kps)+"05";
Table1->FieldByName(lb)->AsString="维管费";
Table1->FieldByName(dl)->AsFloat=YDData->TByhda->FieldByName("zjygdl")->AsFloat;
Table1->FieldByName(dj)->AsFloat=YDData->TBxtcs->FieldByName("xt_wgfdj")->AsFloat;
Table1->FieldByName(df)->AsFloat=YDData->TByhda->FieldByName("www")->AsFloat;
Table1->FieldByName(bz)->AsString="";
}
if (kps<=9)
{
YDData->TBfjjj->First();
while (!YDData->TBfjjj->Eof&&kps<=9)
{
kps=kps+1;
lb="F"+IntToStr(kps)+"01";
dl="F"+IntToStr(kps)+"02";
dj="F"+IntToStr(kps)+"03";
df="F"+IntToStr(kps)+"04";
bz="F"+IntToStr(kps)+"05";
Table1->FieldByName(lb)->AsString=YDData->TBfjjj->FieldByName("fj_mc")->AsString;
Table1->FieldByName(dl)->AsFloat=YDData->TByhda->FieldByName("zjygdl")->AsFloat;
Table1->FieldByName(dj)->AsFloat=YDData->TBfjjj->FieldByName("fj_dj")->AsFloat;
Table1->FieldByName(df)->AsFloat=YDData->TByhda->FieldByName("zjygdl")->AsFloat*
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -