📄 frmttzf.cpp
字号:
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "frmttzf.h"
#include "fuzhu.h"
#include "dlgttzfpr.h"
#include "frmprintform2.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma link "model"
#pragma resource "*.dfm"
Tttzf *ttzf;
//---------------------------------------------------------------------------
__fastcall Tttzf::Tttzf(TComponent* Owner)
: TMDIChild(Owner)
{
order_field="DWBH";
order_str="ASC";
}
//---------------------------------------------------------------------------
void __fastcall Tttzf::BitBtn2Click(TObject *Sender)
{
//////
AnsiString temp_str,m_where,m_sql;
TStringList *list_temp,*list_temp1,*list_dwbh,*list_value,*list_ttzfmc,*list_ttzffzbh;
int i=0,k;
list_temp=new TStringList;
list_temp1=new TStringList;
list_dwbh=new TStringList;
list_value=new TStringList;
list_ttzfmc=new TStringList;
list_ttzffzbh=new TStringList;
grid->DataSource=NULL;
m_sql="truncate table ttzf";
exe(m_sql);
m_sql="insert ttzf (DWBH,DWJC) select BH,DWJC from jsdwb";
exe(m_sql);
temp_str="select MC,FZBH from ttzfszb";
open(temp_str);
while(!m_query->Eof){
list_ttzffzbh->Add(m_query->Fields->FieldByName("FZBH")->AsString.Trim());
list_ttzfmc->Add(m_query->Fields->FieldByName("MC")->AsString.Trim());
m_query->Next();
}
for(i=0;i<list_ttzfmc->Count;i++){
list_dwbh->Clear();
list_value->Clear();
temp_str=list_ttzffzbh->Strings[i].Trim();
parsestr(temp_str,&list_temp,';');
if(list_temp->Count<=0)continue;
temp_str=list_temp->Strings[0].Trim();
parsestr(temp_str,&list_temp1,':');
m_where=" (LBBH='"+list_temp1->Strings[0].Trim()+"' and FZBH='"+list_temp1->Strings[1].Trim()+"') ";
for(k=1;k<list_temp->Count;k++){
temp_str=list_temp->Strings[k].Trim();
parsestr(temp_str,&list_temp1,':');
m_where=m_where+" or (LBBH='"+list_temp1->Strings[0].Trim()+"' and FZBH='"+list_temp1->Strings[1].Trim()+"') ";
}
m_sql="select DWBH,sum(DF) as DF from cal_ttzf where "+m_where+" group by DWBH";
open(m_sql);
while(!m_query->Eof){
list_dwbh->Add(m_query->Fields->FieldByName("DWBH")->AsString.Trim());
list_value->Add(m_query->Fields->FieldByName("DF")->AsString.Trim());
m_query->Next();
}
for(k=0;k<list_dwbh->Count;k++){
m_sql="update ttzf set ["+list_ttzfmc->Strings[i].Trim()+"]="+list_value->Strings[k]+" where DWBH='"+list_dwbh->Strings[k].Trim()+"'";
exe(m_sql);
} /////计算正常得分.....
m_sql="select YDYBH,MAX(PJLDF) as PJLDF from cal_ttzf where "+m_where+" group by ydybh,xmbh having MAX(PJLDF)>0";
list_dwbh->Clear();
list_value->Clear();
open(m_sql);
while(!m_query->Eof){
list_dwbh->Add(m_query->Fields->FieldByName("YDYBH")->AsString.Trim());
list_value->Add(m_query->Fields->FieldByName("PJLDF")->AsString.Trim());
m_query->Next();
}
for(k=0;k<list_dwbh->Count;k++){
m_sql="update ttzf set ["+list_ttzfmc->Strings[i].Trim()+"]=["+list_ttzfmc->Strings[i].Trim()+"]+"+list_value->Strings[k].Trim()+" from ydyb a where ttzf.DWBH=a.DWBH and a.YDYBH='"+list_dwbh->Strings[k].Trim()+"'";
exe(m_sql);
}
}
delete list_temp;
delete list_temp1;
delete list_dwbh;
delete list_value;
delete list_ttzfmc;
delete list_ttzffzbh;
refresh();
////
}
//---------------------------------------------------------------------------
void __fastcall Tttzf::close()
{
m_con->Connected=false;
m_query->Active=false;
//TODO: Add your source code here
}
void __fastcall Tttzf::open()
{
m_con->Connected=true;
m_query->Active=true;
//TODO: Add your source code here
}
void __fastcall Tttzf::open(AnsiString m_sql)
{
close();
m_query->SQL->Clear();
m_query->SQL->Add(m_sql);
open();
//TODO: Add your source code here
}
void __fastcall Tttzf::exe(AnsiString m_sql)
{
close();
m_query->SQL->Clear();
m_query->SQL->Add(m_sql);
m_query->ExecSQL();
//TODO: Add your source code here
}
void __fastcall Tttzf::refresh()
{
grid->DataSource=this->source;
close();
open("select * from ttzf order by "+order_field+" "+order_str);
grid->Columns->Items[0]->Visible=false;
grid->Columns->Items[2]->Width=150;
//TODO: Add your source code here
}
void __fastcall Tttzf::FormDestroy(TObject *Sender)
{
close();
delete list_pdwbh;
}
//---------------------------------------------------------------------------
void __fastcall Tttzf::gridTitleClick(TColumn *Column)
{
order_field=Column->Title->Caption;
if(order_str=="ASC")
order_str="DESC";
else
order_str="ASC";
refresh();
//ShowMessage(Column->Title->Caption);
}
//---------------------------------------------------------------------------
void __fastcall Tttzf::FormShow(TObject *Sender)
{
this->Width=620;
this->Height=510;
}
//---------------------------------------------------------------------------
void __fastcall Tttzf::FormCreate(TObject *Sender)
{
list_pdwbh=new TStringList;
}
//---------------------------------------------------------------------------
void __fastcall Tttzf::BitBtn3Click(TObject *Sender)
{
int idok;
AnsiString m_field,dwjc,value,dwjc1,value2,m_sql;
int index;
ttzfprint=new Tttzfprint(this);
grid->DataSource=NULL;
open("select MC from ttzfszb");
while(!m_query->Eof)
{
ttzfprint->ttzf->Items->Add(m_query->Fields->FieldByName("MC")->AsString.Trim());
m_query->Next();
}
idok=ttzfprint->ShowModal();
if(idok==IDOK)
{
index=1;
m_field=ttzfprint->ttzf->Text.Trim();
print_form2->count_row=1;
print_form2->bz->Caption=ttzfprint->bz->Text.Trim();
print_form2->ttzf_title->Caption=m_field;
m_sql="select DWJC,["+m_field+"] as ZF from ttzf order by ["+m_field+"] DESC ";
print_form2->open(m_sql);
print_form2->ttzf_print->Preview();
}
delete ttzfprint;
refresh();
}
//---------------------------------------------------------------------------
void __fastcall Tttzf::BitBtn1Click(TObject *Sender)
{
AnsiString m_dwbh;
if(dwmc->ItemIndex>=0)
m_dwbh=list_pdwbh->Strings[dwmc->ItemIndex].Trim();
m_query->DisableControls();
m_query->First();
while(m_query->Fields->FieldByName("DWBH")->AsString.Trim()!=m_dwbh&&!m_query->Eof)m_query->Next();
m_query->EnableControls();
}
//---------------------------------------------------------------------------
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -