📄 ydychaxun.cpp
字号:
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "ydychaxun.h"
#include "fuzhu.h"
#include "frmprintform.h"
#include "dlghm.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
Tfrm_ydychaxun *frm_ydychaxun;
//---------------------------------------------------------------------------
__fastcall Tfrm_ydychaxun::Tfrm_ydychaxun(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall Tfrm_ydychaxun::initdata()
{
list_lbbh->Clear();
list_lbmc->Clear();
list_dwjc->Clear();
list_dwbh->Clear();
AnsiString m_sql;
m_sql="select BH,LBMC from jslbz";
open(m_sql);
while(!m_query->Eof){
list_lbbh->Add(m_query->Fields->FieldByName("BH")->AsString.Trim());
list_lbmc->Add(m_query->Fields->FieldByName("LBMC")->AsString.Trim());
m_query->Next();
}
m_sql="select BH,DWMC from jsdwb";
open(m_sql);
while(!m_query->Eof){
list_dwbh->Add(m_query->Fields->FieldByName("BH")->AsString.Trim());
list_dwjc->Add(m_query->Fields->FieldByName("DWMC")->AsString.Trim());
m_query->Next();
}
lb->Items->Assign(list_lbmc);
dw->Items->Assign(list_dwjc);
//TODO: Add your source code here
}
void __fastcall Tfrm_ydychaxun::open()
{
m_con->Connected=true;
m_query->Active=true;
//TODO: Add your source code here
}
void __fastcall Tfrm_ydychaxun::open(AnsiString m_sql,int type)
{
close(); //TODO: Add your source code here
m_query->SQL->Clear();
m_query->SQL->Add(m_sql);
open();
}
void __fastcall Tfrm_ydychaxun::close()
{
m_con->Connected=false;
m_query->Active=false;
//TODO: Add your source code here
}
void __fastcall Tfrm_ydychaxun::exe(AnsiString m_sql)
{
close();
m_query->SQL->Clear();
m_query->SQL->Add(m_sql);
m_con->Connected=true;
m_query->ExecSQL();
close();
//TODO: Add your source code here
}
void __fastcall Tfrm_ydychaxun::createtable()
{
droptable();
m_table_name=getrandom();
AnsiString m_sql;
m_sql="create table "+m_table_name+"( ydybh char(10),XB char(10),ydyxm varchar(50),xm1 char(20),xm2 char(20),xm3 char(20))";
exe(m_sql);
//TODO: Add your source code here
}
void __fastcall Tfrm_ydychaxun::droptable()
{
AnsiString m_sql="";
if(!m_table_name.Trim().IsEmpty()){
m_sql="drop table "+m_table_name;
exe(m_sql);
m_table_name="";
}
//TODO: Add your source code here
}
void __fastcall Tfrm_ydychaxun::FormDestroy(TObject *Sender)
{
close();
droptable();
delete list_lbbh;
delete list_lbmc;
delete list_dwjc;
delete list_dwbh;
}
//---------------------------------------------------------------------------
AnsiString __fastcall Tfrm_ydychaxun::getrandom()
{
AnsiString temp;
WORD hour;
WORD min;
WORD sec;
WORD msec;
Now().DecodeTime(&hour,&min,&sec,&msec);
temp.printf("yuange%d%d%d%d",hour,min,sec,msec);
return temp; //TODO: Add your source code here //TODO: Add your source code here
}
void __fastcall Tfrm_ydychaxun::FormCreate(TObject *Sender)
{
list_lbbh=new TStringList;
list_lbmc=new TStringList;
list_dwjc=new TStringList;
list_dwbh=new TStringList;
}
//---------------------------------------------------------------------------
void __fastcall Tfrm_ydychaxun::BitBtn3Click(TObject *Sender)
{
AnsiString curlbbh,curdwbh,tempstr;
AnsiString m_sql;
TStringList *list_ydybh,*list_ydyxm,*list_sbxm,*list_temp,*list_xb;
int i,k;
list_ydybh=new TStringList;
list_ydyxm=new TStringList;
list_sbxm=new TStringList;
list_temp=new TStringList;
list_xb=new TStringList;
if(lb->Text.Trim().IsEmpty()||dw->Text.Trim().IsEmpty()||lb->ItemIndex<0||dw->ItemIndex<0){
ShowMessage("请选择类别组,单位");
}else{
this->createtable();
curlbbh=list_lbbh->Strings[lb->ItemIndex].Trim();
curdwbh=list_dwbh->Strings[dw->ItemIndex].Trim();
m_sql="select YDYBH,YDYXM,XB,SBXM from ydyb where LBBH='"+curlbbh+"' and DWBH='"+curdwbh+"'";
open(m_sql);
while(!m_query->Eof){
list_ydybh->Add(m_query->Fields->FieldByName("YDYBH")->AsString.Trim());
list_ydyxm->Add(m_query->Fields->FieldByName("YDYXM")->AsString.Trim());
list_sbxm->Add(m_query->Fields->FieldByName("SBXM")->AsString.Trim());
list_xb->Add(m_query->Fields->FieldByName("XB")->AsString.Trim());
m_query->Next();
}
for(i=0;i<list_ydybh->Count;i++){
tempstr=list_sbxm->Strings[i].Trim();
parsestr(tempstr,&list_temp,';');
for(k=list_temp->Count;k<3;k++)list_temp->Add("0");
m_sql="insert "+m_table_name+" (YDYBH,YDYXM,XB,XM1,XM2,XM3) values('"+list_ydybh->Strings[i].Trim()+"','"+list_ydyxm->Strings[i].Trim()+"','"+list_xb->Strings[i].Trim()+"','"+list_temp->Strings[0].Trim()+"','"+list_temp->Strings[1].Trim()+"','"+list_temp->Strings[2].Trim()+"')";
exe(m_sql);
}
refresh();
}
delete list_ydybh;
delete list_ydyxm;
delete list_sbxm;
delete list_temp;
delete list_xb;
}
//---------------------------------------------------------------------------
void __fastcall Tfrm_ydychaxun::refresh()
{
AnsiString m_sql;
m_con->Close();
m_q->Active=false;
m_q->SQL->Clear();
m_sql=" select a.YDYBH,a.YDYXM,a.XB,b.XMMC as MXM1,c.XMMC as MXM2,d.XMMC as MXM3 from "+m_table_name+" a,xmb b,xmb c,xmb d where a.XM1=b.XMBH and a.XM2=c.XMBH and a.XM3=d.XMBH ";
m_q->SQL->Add(m_sql);
m_con->Open();
m_q->Active=true;
//TODO: Add your source code here
}
void __fastcall Tfrm_ydychaxun::BitBtn1Click(TObject *Sender)
{
AnsiString m_sql,m_xb;
int idok,i,count;
TStringList *list_mydybh,*list_mydyxm;
if(m_table_name.Trim().IsEmpty())return;
list_mydybh=new TStringList;
list_mydyxm=new TStringList;
hm_duihua=new Thm_duihua(this);
idok=hm_duihua->ShowModal();
if(idok==IDOK){
if(hm_duihua->xb->ItemIndex==0)m_xb="男子";
if(hm_duihua->xb->ItemIndex==1)m_xb="女子";
if(hm_duihua->fz->ItemIndex==0){
m_sql=" select a.YDYBH,a.YDYXM,b.XMMC as MXM1,c.XMMC as MXM2,d.XMMC as MXM3 from "+m_table_name+" a,xmb b,xmb c,xmb d where a.XM1=b.XMBH and a.XM2=c.XMBH and a.XM3=d.XMBH and a.XB='"+m_xb+"'";
print_form->hm_title->Caption=Application->Title;
print_form->hm_xm->Caption="组别: "+lb->Text+" 性别:"+m_xb+" 单位:"+dw->Text;
print_form->open(m_sql);
print_form->hm_rep->Preview();
}
if(hm_duihua->fz->ItemIndex==1){
exe("truncate table temp_bg");
m_sql="select ydybh,ydyxm from "+m_table_name+" where XB='"+m_xb+"' order by ydybh";
open(m_sql);
while(!m_query->Eof){
list_mydybh->Add(m_query->Fields->FieldByName("YDYBH")->AsString.Trim());
list_mydyxm->Add(m_query->Fields->FieldByName("YDYXM")->AsString.Trim());
m_query->Next();
}
i=m_query->RecordCount %3;
count=3-i;
for(i=0;i<count;i++){list_mydybh->Add(" ");list_mydyxm->Add(" ");}
for(i=0;i<list_mydybh->Count;i+=3){
m_sql="insert temp_bg(ydybh1,ydyxm1,ydybh2,ydyxm2,ydybh3,ydyxm3) values('"+list_mydybh->Strings[i].Trim()+"','"+list_mydyxm->Strings[i].Trim()+"','"+list_mydybh->Strings[i+1].Trim()+"','"+list_mydyxm->Strings[i+1].Trim()+"','"+list_mydybh->Strings[i+2].Trim()+"','"+list_mydyxm->Strings[i+2].Trim()+"')";
exe(m_sql);
}
m_sql="select * from temp_bg";
print_form->hm_title1->Caption=Application->Title;
print_form->hm_xm1->Caption="组别: "+lb->Text+" 性别:"+m_xb+" 单位:"+dw->Text;
print_form->open(m_sql);
print_form->hm_rep1->Preview();
}
}
delete hm_duihua;
delete list_mydybh;
delete list_mydyxm;
refresh();
}
//---------------------------------------------------------------------------
void __fastcall Tfrm_ydychaxun::BitBtn2Click(TObject *Sender)
{
Close();
}
//---------------------------------------------------------------------------
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -