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

📄 frmxmbb.cpp

📁 大学田径运动会管理系统
💻 CPP
字号:
//---------------------------------------------------------------------------

#include <vcl.h>
#pragma hdrstop

#include "frmxmbb.h"
#include "fuzhu.h"
#include "dlgxmbb.h"
#include "frmprintform.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma link "model"
#pragma resource "*.dfm"
Txmbb *xmbb;
//---------------------------------------------------------------------------
__fastcall Txmbb::Txmbb(TComponent* Owner)
        : TMDIChild(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall Txmbb::FormShow(TObject *Sender)
{
this->Width=600;
this->Height=500; 
}
//---------------------------------------------------------------------------

void __fastcall Txmbb::init()
{
 grid->DataSource=NULL;
 exe("truncate table xmbb");
}

void __fastcall Txmbb::show()
{
grid->DataSource=this->source;
open("select * from xmbb");
        //TODO: Add your source code here
}

void __fastcall Txmbb::close()
{
m_con->Connected=false;
m_query->Active=false;
        //TODO: Add your source code here
}

void Txmbb::open(AnsiString sql)
{
if(sql.Trim().IsEmpty()){
m_con->Connected=true;
m_query->Active=true;
}
else
{
m_con->Connected=false;
m_query->Active=false;
m_query->SQL->Clear();
m_query->SQL->Add(sql);
m_con->Connected=true;
m_query->Active=true;
}
        //TODO: Add your source code here
}
void __fastcall Txmbb::exe(AnsiString sql)
{
close();
m_query->SQL->Clear();
m_query->SQL->Add(sql);
m_con->Connected=true;
m_query->ExecSQL(); 
        //TODO: Add your source code here
}
void __fastcall Txmbb::BitBtn1Click(TObject *Sender)
{
init();
TStringList *list_yr,*list_lbfzbh,*list_fm,*list_xmm,*list_rs,*list_zs,*list_bsfs,*list_xmbh,*list_temp,*list_temp1,*list_qn;
TStringList *list_plbfzbh,*list_plbfzmc,*list_xmlb,*list_qn_xmbh,*list_qn_xmxj;
AnsiString xmbh,xmmc,bscs,mcbsmc,mcbssj,mcbslqmc,temp_str,mlbfzbh,xmlb,qndxbh;
int index,i,itemp,dxindex;
list_plbfzbh=new TStringList;
list_qn_xmbh=new TStringList;
list_qn_xmxj=new TStringList;
list_plbfzmc=new TStringList;
list_lbfzbh=new TStringList;
list_yr=new TStringList;
list_fm=new TStringList;
list_xmm=new TStringList;
list_xmlb=new TStringList;
list_rs=new TStringList;
list_zs=new TStringList;
list_temp=new TStringList;
list_temp1=new TStringList;
list_xmbh=new TStringList;
list_qn=new TStringList;
list_bsfs=new TStringList;list_xmbh;
 open("select * from qnxm order by XMBH");
 while(!m_query->Eof){
  list_qn_xmxj->Add(m_query->Fields->FieldByName("XMXZ")->AsString.Trim());
  list_qn_xmbh->Add(m_query->Fields->FieldByName("XMBH")->AsString.Trim());
  m_query->Next();
 }

open("select a.LBMC,b.SSLB,b.BH,b.ZM from jslbz a,fzqkb b where a.BH=b.SSLB");
while(!m_query->Eof){
mlbfzbh=m_query->Fields->FieldByName("SSLB")->AsString.Trim()+":"+m_query->Fields->FieldByName("BH")->AsString.Trim();
list_plbfzbh->Add(mlbfzbh);
mlbfzbh=m_query->Fields->FieldByName("LBMC")->AsString.Trim()+":"+m_query->Fields->FieldByName("ZM")->AsString.Trim();
list_plbfzmc->Add(mlbfzbh);
m_query->Next();
}
open("select XMLB,XMBH,XMMC,BSCS,MCBSMC,MCBSSJ,MCBSLQMC,LBBH,FZBH from xmb where XMXJ<>'全能' and XMBH<>'0'");
while(!m_query->Eof){
xmbh=m_query->Fields->FieldByName("XMBH")->AsString.Trim();
xmlb=m_query->Fields->FieldByName("XMLB")->AsString.Trim();
xmmc=m_query->Fields->FieldByName("XMMC")->AsString.Trim();
bscs=m_query->Fields->FieldByName("BSCS")->AsString.Trim();
mcbsmc=m_query->Fields->FieldByName("MCBSMC")->AsString.Trim();
mcbssj=m_query->Fields->FieldByName("MCBSSJ")->AsString.Trim();
mcbslqmc=m_query->Fields->FieldByName("MCBSLQMC")->AsString.Trim();
mlbfzbh=m_query->Fields->FieldByName("LBBH")->AsString.Trim()+":"+m_query->Fields->FieldByName("FZBH")->AsString.Trim();
index=StrToInt(bscs);
for(i=0;i<index;i++){
     list_lbfzbh->Add(mlbfzbh);
     list_xmm->Add(xmmc);
     list_xmlb->Add(xmlb);
     parsestr(mcbsmc,&list_temp,';');
     list_bsfs->Add(list_temp->Strings[i].Trim());
     parsestr(mcbssj,&list_temp,';');
     temp_str=list_temp->Strings[i].Trim();
     parsestr(temp_str,&list_temp,' ');
     if(list_temp->Count>0)
       list_yr->Add(list_temp->Strings[0].Trim());
       else
        list_yr->Add("09.28");
     if(list_temp->Count>1)
       list_fm->Add(list_temp->Strings[1].Trim());
       else
        list_fm->Add("08:59");
   if(i==0){
     list_rs->Add("0");
     list_zs->Add("0");
     }
   if(i==1){
     parsestr(mcbslqmc,&list_temp,';');
     itemp=StrToInt(list_temp->Strings[1].Trim());
     if(itemp>8){
       list_rs->Add(itemp);
       list_zs->Add((int)(itemp/8));
       }else{
       list_rs->Add(itemp);
       list_zs->Add("1");
       }
    }
   if(i==2){
     parsestr(mcbslqmc,&list_temp,';');
     itemp=StrToInt(list_temp->Strings[2].Trim());
     list_rs->Add(itemp);
     list_zs->Add("1");
    }
   if(i==0)list_xmbh->Add(xmbh);else list_xmbh->Add("0");
}
m_query->Next();
}

for(i=0;i<list_xmbh->Count;i++){
     xmbh=list_xmbh->Strings[i].Trim();
     if(xmbh=="0")continue;
     open("select count(*) as m_count from jlb where XMBH='"+xmbh+"' and XMBH=DXBH");
     list_rs->Strings[i]=m_query->Fields->FieldByName("m_count")->AsString.Trim();
     open("select top 1 XZH from jlb where XMBH='"+xmbh+"' and XMBH=DXBH order by XZH DESC");
     list_zs->Strings[i]=m_query->Fields->FieldByName("XZH")->AsString.Trim();
 }
///////全能
int count;
int qnstart_pos=list_xmbh->Count;
AnsiString xmgs,dxxmbh,dxcnmc,dxbssj ;
open("select XMBH,XMMC,XMGS,DXXMBH,DXCNMC,LBBH,FZBH,DXBSSJ from qnxmsz ");
while(!m_query->Eof){
  xmbh=m_query->Fields->FieldByName("XMBH")->AsString.Trim();
  xmmc=m_query->Fields->FieldByName("XMMC")->AsString.Trim();
  xmgs=m_query->Fields->FieldByName("XMGS")->AsString.Trim();
  dxxmbh=m_query->Fields->FieldByName("DXXMBH")->AsString.Trim();
  dxcnmc=m_query->Fields->FieldByName("DXCNMC")->AsString.Trim();
  dxbssj=m_query->Fields->FieldByName("DXBSSJ")->AsString.Trim();
  mlbfzbh=m_query->Fields->FieldByName("LBBH")->AsString.Trim()+":"+m_query->Fields->FieldByName("FZBH")->AsString.Trim();
  count=StrToInt(xmgs);
  for(i=0;i<count;i++)list_lbfzbh->Add(mlbfzbh);
  for(i=0;i<count;i++)list_xmbh->Add(xmbh);
  parsestr(dxcnmc,&list_temp,';');
  for(i=0;i<count;i++)list_xmm->Add(xmmc+"之"+list_temp->Strings[i].Trim());
  for(i=0;i<count;i++)list_bsfs->Add("决赛");
  parsestr(dxbssj,&list_temp,';');
  for(i=0;i<count;i++){
          parsestr(list_temp->Strings[i].Trim(),&list_qn,' ');
       if(list_qn->Count>0)
        list_yr->Add(list_qn->Strings[0].Trim());
        else
         list_yr->Add("09.28");
       if(list_qn->Count>1)
        list_fm->Add(list_qn->Strings[1].Trim());
        else
        list_fm->Add("08:59");
        }
  parsestr(dxxmbh,&list_temp,';');
  for(i=0;i<count;i++){
     qndxbh=list_temp->Strings[i].Trim();
     list_temp1->Add(qndxbh);
     dxindex=list_qn_xmbh->IndexOf(qndxbh);
     if(dxindex<0)dxindex=0;
     qndxbh=list_qn_xmxj->Strings[dxindex].Trim();
     if(qndxbh=="1")list_xmlb->Add("径赛");
     if(qndxbh=="2"||qndxbh=="3")list_xmlb->Add("田赛");
     }
  m_query->Next();
  }
    ///end;
for(i=0;i<list_temp1->Count;i++){
     xmbh=list_xmbh->Strings[qnstart_pos+i].Trim();
     open("select count(*) as m_count from jlb where XMBH='"+xmbh+"' and DXBH='"+list_temp1->Strings[i].Trim()+"'");
     list_rs->Add(m_query->Fields->FieldByName("m_count")->AsString.Trim());
     open("select top 1 XZH from jlb where XMBH='"+xmbh+"' and DXBH='"+list_temp1->Strings[i].Trim()+"' order by XZH DESC");
     list_zs->Add(m_query->Fields->FieldByName("XZH")->AsString.Trim());

 }
///////结束
int ppp;
for(i=0;i<list_xmbh->Count;i++){
  mlbfzbh=list_lbfzbh->Strings[i].Trim();
  ppp=list_plbfzbh->IndexOf(mlbfzbh);
  if(ppp<0)mlbfzbh=" ";
  mlbfzbh=list_plbfzmc->Strings[ppp].Trim();
  temp_str="insert xmbb(YR,FM,XMM,LBFZ,XMLB,BSFS,RS,ZS ) values('"+list_yr->Strings[i].Trim()+"',\
                   '"+list_fm->Strings[i].Trim()+"','"+list_xmm->Strings[i].Trim()+"','"+mlbfzbh+"',\
                   '"+list_xmlb->Strings[i].Trim()+"','"+list_bsfs->Strings[i].Trim()+"','"+list_rs->Strings[i].Trim()+"',\
                   '"+list_zs->Strings[i].Trim()+"')";
exe(temp_str);
}
delete list_yr;delete  list_fm;
delete  list_xmm;delete  list_rs;
delete  list_zs;delete  list_bsfs;
delete  list_xmbh;
delete  list_xmlb;
delete  list_temp;
delete  list_temp1;
delete  list_qn;
delete  list_lbfzbh;
delete  list_plbfzbh;
delete  list_plbfzmc;
delete list_qn_xmxj;
delete list_qn_xmbh;

show();
}
//---------------------------------------------------------------------------
void __fastcall Txmbb::BitBtn2Click(TObject *Sender)
{
int idok,i;
TStringList *list_temp;
AnsiString m_where=" YR is not NULL ",m_sql,m_xmlb;
list_temp=new TStringList;
AnsiString fromyr="",toyr="",fromfm="",tofm="";
xmbbdlg=new Txmbbdlg(this);
idok=xmbbdlg->ShowModal();
if(idok==IDOK){
      m_xmlb =xmbbdlg->xmlb->Text.Trim();
     parsestr(xmbbdlg->yr->Text.Trim(),&list_temp,';');
     if(list_temp->Count>0)fromyr=list_temp->Strings[0].Trim();
     if(list_temp->Count>1)toyr=list_temp->Strings[1].Trim();
     parsestr(xmbbdlg->fm->Text.Trim(),&list_temp,';');
     if(list_temp->Count>0)fromfm=list_temp->Strings[0].Trim();
     if(list_temp->Count>1)tofm=list_temp->Strings[1].Trim();
     if(!fromyr.Trim().IsEmpty()){
           if(toyr.Trim().IsEmpty())m_where+=" and YR='"+fromyr+"' ";
           if(!toyr.Trim().IsEmpty())m_where+=" and YR>='"+fromyr+"' and YR<='"+toyr+"' ";
        }
     if(!fromfm.Trim().IsEmpty()){
           if(tofm.Trim().IsEmpty())m_where+=" and FM='"+fromfm+"' ";
           if(!tofm.Trim().IsEmpty())m_where+=" and FM>='"+fromfm+"' and FM<='"+tofm+"' ";
        }
    if(!m_xmlb.IsEmpty()){
     AnsiString m_m;
     parsestr(m_xmlb,&list_temp,';') ;
     m_m=" XMLB='"+list_temp->Strings[0].Trim()+"' ";
     for(i=1; i<list_temp->Count;i++)
            m_m+=" or XMLB='"+list_temp->Strings[i].Trim()+"' ";
      m_where=m_where+" and ("+m_m+") ";      
      }
    m_sql="select * from xmbb where "+m_where+" order by FM ASC";
    print_form->xm_title->Caption=Application->Title; 
    print_form->xm_xm->Caption=xmbbdlg->bz->Text;
    print_form->open(m_sql);
    print_form->xm_rep->Preview();  
 }
 delete list_temp;
delete  xmbbdlg;
}
//---------------------------------------------------------------------------
void __fastcall Txmbb::BitBtn3Click(TObject *Sender)
{
this->show(); 
}
//---------------------------------------------------------------------------

⌨️ 快捷键说明

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