📄 bisaijifen.cpp
字号:
pingweiming[i]=db.getrs()->GetFields()->GetItem("xingming")->GetValue();
}
else{
CString ttxianshi=_variant_t(i+1);
pingweiming[i]="评委"+ttxianshi;
}
db.getrs()->MoveNext();
i++;
}
UpdateData(0);
}
}
}
void bisaijifen::OnBnClickedButton7()
{
// TODO: 在此添加控件通知处理程序代码
UpdateData(1);
CString tempname,sql;
xuanshouxuhao.GetWindowText(tempname);
if(tempname!=""){
int tempindex = pingweizu.GetCurSel();
if (tempindex!=LB_ERR){
int indextemp1=pingweizu.GetCurSel();
if (indextemp1!=LB_ERR){
CString sql="select top 1 * from fenshu where suoshuxuanshou ="+tempname+" and pingweizu='"+pingwei1[indextemp1]+"'";
db.datasearcher(sql);
if(db.getrs()->adoeof)db.getrs()->AddNew();
db.getrs()->GetFields()->GetItem("suoshuxuanshou")->PutValue(_variant_t(tempname));
db.getrs()->GetFields()->GetItem("suoshusaishi")->PutValue(saishixuhao);
db.getrs()->GetFields()->GetItem("pingwei1")->PutValue(fenshu[0]);
db.getrs()->GetFields()->GetItem("pingwei2")->PutValue(fenshu[1]);
db.getrs()->GetFields()->GetItem("pingwei3")->PutValue(fenshu[2]);
db.getrs()->GetFields()->GetItem("pingwei4")->PutValue(fenshu[3]);
db.getrs()->GetFields()->GetItem("pingwei5")->PutValue(fenshu[4]);
db.getrs()->GetFields()->GetItem("pingwei6")->PutValue(fenshu[5]);
db.getrs()->GetFields()->GetItem("pingwei7")->PutValue(fenshu[6]);
db.getrs()->GetFields()->GetItem("pingwei8")->PutValue(fenshu[7]);
db.getrs()->GetFields()->GetItem("pingwei9")->PutValue(fenshu[8]);
db.getrs()->GetFields()->GetItem("pingwei10")->PutValue(fenshu[9]);
db.getrs()->GetFields()->GetItem("pingwei11")->PutValue(fenshu[10]);
db.getrs()->GetFields()->GetItem("pingwei12")->PutValue(fenshu[11]);
db.getrs()->GetFields()->GetItem("pingwei13")->PutValue(fenshu[12]);
db.getrs()->GetFields()->GetItem("pingwei14")->PutValue(fenshu[13]);
db.getrs()->GetFields()->GetItem("pingwei15")->PutValue(fenshu[14]);
db.getrs()->GetFields()->GetItem("pingwei16")->PutValue(fenshu[15]);
db.getrs()->GetFields()->GetItem("pingwei17")->PutValue(fenshu[16]);
db.getrs()->GetFields()->GetItem("pingwei18")->PutValue(fenshu[17]);
db.getrs()->GetFields()->GetItem("pingwei19")->PutValue(fenshu[18]);
db.getrs()->GetFields()->GetItem("pingwei20")->PutValue(fenshu[19]);
db.getrs()->GetFields()->GetItem("pingwei21")->PutValue(fenshu[20]);
db.getrs()->GetFields()->GetItem("pingwei22")->PutValue(fenshu[21]);
db.getrs()->GetFields()->GetItem("pingwei23")->PutValue(fenshu[22]);
db.getrs()->GetFields()->GetItem("pingwei24")->PutValue(fenshu[23]);
db.getrs()->GetFields()->GetItem("pingwei25")->PutValue(fenshu[24]);
db.getrs()->GetFields()->GetItem("pingwei26")->PutValue(fenshu[25]);
db.getrs()->GetFields()->GetItem("pingwei27")->PutValue(fenshu[26]);
db.getrs()->GetFields()->GetItem("pingwei28")->PutValue(fenshu[27]);
db.getrs()->GetFields()->GetItem("pingwei29")->PutValue(fenshu[28]);
db.getrs()->GetFields()->GetItem("pingwei30")->PutValue(fenshu[29]);
long tpingweirenshu;
float ttpingweibili;
tpingweirenshu=pingweirenshu[tempindex];
ttpingweibili=tpingweibili[tempindex];
int i,j;
for(i=0;i<tpingweirenshu;i++){
for(j=i;j<tpingweirenshu;j++){
if(fenshu[i]<fenshu[j]){
float temp=fenshu[i];
fenshu[i]=fenshu[j];
fenshu[j]=temp;
}
}
}
for(int i=0;i<shanchufenshu;i++){
fenshu[i]=0;
fenshu[tpingweirenshu-i-1]=0;
}
float tempfen=0;
for(int i=0;i<tpingweirenshu;i++){
tempfen+=fenshu[i];
}
tempfen/=(tpingweirenshu-shanchufenshu*2);
tempfen*=(ttpingweibili/100);
db.getrs()->GetFields()->GetItem("chengji")->PutValue(tempfen);
db.getrs()->GetFields()->GetItem("pingweizu")->PutValue(_variant_t(pingwei1[tempindex]));
db.getrs()->Update();
zuizhongchengji=0;
sql="select * from fenshu where suoshuxuanshou ="+tempname+"";
db.datasearcher(sql);
while(!db.getrs()->adoeof){
float tempfen=db.getrs()->GetFields()->GetItem("chengji")->GetValue();
zuizhongchengji+=tempfen;
db.getrs()->MoveNext();
}
CString saishixuhaot=_variant_t(saishixuhao);
sql="select top 1 * from chengji where suoshuxuanshou ="+tempname+" and suoshusaishi="+saishixuhaot+"";
db.datasearcher(sql);
if(db.getrs()->adoeof)db.getrs()->AddNew();
db.getrs()->GetFields()->GetItem("chengji")->PutValue(zuizhongchengji);
db.getrs()->GetFields()->GetItem("suoshuxuanshou")->PutValue(_variant_t(tempname));
db.getrs()->GetFields()->GetItem("suoshusaishi")->PutValue(_variant_t(saishixuhaot));
db.getrs()->Update();
CString xianshifen=_variant_t(tempfen);
if(tempfen>0&&tempfen<1) xianshifen="0"+xianshifen;
zhuangtai.SetWindowText(xianshifen);
}
}
else{
zhuangtai.SetWindowText("请选择评委组");
}
}
else{
zhuangtai.SetWindowText("请选择一个记录");
}
}
void bisaijifen::OnBnClickedButton1()
{
// TODO: 在此添加控件通知处理程序代码
zuichongjieguo zuizhongjieguoframe(0,_variant_t(saishixuhao));
zuizhongjieguoframe.DoModal();
}
void bisaijifen::OnLbnSelchangeList4()
{
// TODO: 在此添加控件通知处理程序代码
for(long i=0;i<30;i++){
fenshuctrl[i].SetReadOnly(1);
fenshuctrl[i].SetWindowText("0");
pingweiming[i]="";
}
int tempindex = pingweizu.GetCurSel();
if (tempindex!=LB_ERR){
int tpingweirenshu;
tpingweirenshu=pingweirenshu[tempindex];
for(long i=0;i<tpingweirenshu;i++){
fenshuctrl[i].SetReadOnly(0);
}
}
CString tempname,xuhaotemp;
tempindex = xiangmulist.GetCurSel();
if (tempindex!=LB_ERR){
xiangmulist.GetText(tempindex,tempname);
xiangmuming.SetWindowText(tempname);
xuanshouxuhaolist.GetText(tempindex,tempname);
xuanshouxuhao.SetWindowText(tempname);
int indextemp1=pingweizu.GetCurSel();
if (indextemp1!=LB_ERR){
CString sql="select top 1 * from fenshu where suoshuxuanshou ="+tempname+" and pingweizu='"+pingwei1[indextemp1]+"'";
db.datasearcher(sql);
if(!db.getrs()->adoeof){
fenshu[0]=db.getrs()->GetFields()->GetItem("pingwei1")->GetValue();
fenshu[1]=db.getrs()->GetFields()->GetItem("pingwei2")->GetValue();
fenshu[2]=db.getrs()->GetFields()->GetItem("pingwei3")->GetValue();
fenshu[3]=db.getrs()->GetFields()->GetItem("pingwei4")->GetValue();
fenshu[4]=db.getrs()->GetFields()->GetItem("pingwei5")->GetValue();
fenshu[5]=db.getrs()->GetFields()->GetItem("pingwei6")->GetValue();
fenshu[6]=db.getrs()->GetFields()->GetItem("pingwei7")->GetValue();
fenshu[7]=db.getrs()->GetFields()->GetItem("pingwei8")->GetValue();
fenshu[8]=db.getrs()->GetFields()->GetItem("pingwei9")->GetValue();
fenshu[9]=db.getrs()->GetFields()->GetItem("pingwei10")->GetValue();
fenshu[10]=db.getrs()->GetFields()->GetItem("pingwei11")->GetValue();
fenshu[11]=db.getrs()->GetFields()->GetItem("pingwei12")->GetValue();
fenshu[12]=db.getrs()->GetFields()->GetItem("pingwei13")->GetValue();
fenshu[13]=db.getrs()->GetFields()->GetItem("pingwei14")->GetValue();
fenshu[14]=db.getrs()->GetFields()->GetItem("pingwei15")->GetValue();
fenshu[15]=db.getrs()->GetFields()->GetItem("pingwei16")->GetValue();
fenshu[16]=db.getrs()->GetFields()->GetItem("pingwei17")->GetValue();
fenshu[17]=db.getrs()->GetFields()->GetItem("pingwei18")->GetValue();
fenshu[18]=db.getrs()->GetFields()->GetItem("pingwei19")->GetValue();
fenshu[19]=db.getrs()->GetFields()->GetItem("pingwei20")->GetValue();
fenshu[20]=db.getrs()->GetFields()->GetItem("pingwei21")->GetValue();
fenshu[21]=db.getrs()->GetFields()->GetItem("pingwei22")->GetValue();
fenshu[22]=db.getrs()->GetFields()->GetItem("pingwei23")->GetValue();
fenshu[23]=db.getrs()->GetFields()->GetItem("pingwei24")->GetValue();
fenshu[24]=db.getrs()->GetFields()->GetItem("pingwei25")->GetValue();
fenshu[25]=db.getrs()->GetFields()->GetItem("pingwei26")->GetValue();
fenshu[26]=db.getrs()->GetFields()->GetItem("pingwei27")->GetValue();
fenshu[27]=db.getrs()->GetFields()->GetItem("pingwei28")->GetValue();
fenshu[28]=db.getrs()->GetFields()->GetItem("pingwei29")->GetValue();
fenshu[29]=db.getrs()->GetFields()->GetItem("pingwei30")->GetValue();
}
else{
for(int i=0;i<30;i++) {
fenshu[i]=0;
pingweiming[i]="";
}
}
CString saishixuhaot=_variant_t(saishixuhao);
sql="select * from pingwei where suoshusaishi ="+saishixuhaot+" and suoshupingweizu='"+pingwei1[indextemp1]+"'";
db.datasearcher(sql);
int i=0;
while(!db.getrs()->adoeof){
bool txianshi=db.getrs()->GetFields()->GetItem("xianshi")->GetValue();
if(txianshi){
pingweiming[i]=db.getrs()->GetFields()->GetItem("xingming")->GetValue();
}
else{
CString ttxianshi=_variant_t(i+1);
pingweiming[i]="评委"+ttxianshi;
}
db.getrs()->MoveNext();
i++;
}
UpdateData(0);
}
}
}
//void bisaijifen::OnOK()
//{
// // TODO: 在此添加专用代码和/或调用基类
// OnBnClickedButton7();
//
//}
void bisaijifen::OnBnClickedCancel()
{
// TODO: 在此添加控件通知处理程序代码
OnCancel();
}
void bisaijifen::OnBnClickedButton8()
{
// TODO: 在此添加控件通知处理程序代码
CString tempname,sql;
xuanshouxuhao.GetWindowText(tempname);
CString saishixuhaot=_variant_t(saishixuhao);
if (tempname!=""&&saishixuhaot!=""){
sql="select top 1 * from chengji where suoshuxuanshou ="+tempname+" and suoshusaishi="+saishixuhaot+"";
db.datasearcher(sql);
zuizhongchengji=0;
if(!db.getrs()->adoeof){
zuizhongchengji=db.getrs()->GetFields()->GetItem("chengji")->GetValue();
}
chijixianshi chengjixianshi(0,zuizhongchengji);
chengjixianshi.DoModal();
}
}
void bisaijifen::OnOK()
{
// TODO: 在此添加专用代码和/或调用基类
}
void bisaijifen::OnBnClickedButton9()
{
// TODO: 在此添加控件通知处理程序代码
_ConnectionPtr conn; //结果
_ConnectionPtr conn1; //database
_RecordsetPtr rs; //结果
_RecordsetPtr rs1; //database
_RecordsetPtr rs2; //database
using namespace Excel;
_ApplicationPtr pXL;
try {
pXL.CreateInstance(L"Excel.Application");
pXL->Visible[0] = VARIANT_TRUE;
WorkbooksPtr pBooks = pXL->Workbooks;
_WorkbookPtr pBook = pBooks->Add((long)xlWorksheet);
_WorksheetPtr pSheet = pXL->ActiveSheet;
try {
// This one will fail; it is done on purpose to demonstrate the error.
pSheet->Name = "Market Share?";
} catch (_com_error &e) {
dump_com_error(e);
}
pSheet->Name = "Market Share!";
// When using parameterized properties, optional args must be explicitly dealt with.
pSheet->Range["A1"][vtMissing]->Value2 = "名次";
pSheet->Range["B1"][vtMissing]->Value2 = "参赛项目";
pSheet->Range["C1"][vtMissing]->Value2 = "选手";
pSheet->Range["D1"][vtMissing]->Value2 = "简介";
pSheet->Range["E1"][vtMissing]->Value2 = "成绩";
// Of course, you can call a parameterized property as a method and then optional args are implicit.
try
{
conn1.CreateInstance(__uuidof( Connection));//创建Connection对象
CString data="database\\database.mdb";
CString tdatapath=CbyWSDlg::datapath+data;
conn1->Open(_bstr_t(tdatapath),"","",NULL);///连接数据库
}
catch(_com_error e)///捕捉异常
{
conn=NULL;
CString errormessage;
errormessage.Format("连接数据库失败!\r\n请检查数据库路径\n");
AfxMessageBox(errormessage);///显示错误信息
exit(1);
}
try{
CString tsaishixuhao=_variant_t(saishixuhao);
CString tsql="select * from chengji where suoshusaishi="+tsaishixuhao+" order by chengji desc";
rs1.CreateInstance(__uuidof(Recordset));
rs1->Open(_variant_t(tsql), conn1->GetConnectionString(),adOpenDynamic, adLockOptimistic,adCmdText);
int i=1;
while(!rs1->adoeof){
CString temp=rs1->GetFields()->GetItem("suoshuxuanshou")->GetValue();
CString ttsql="select top 1 * from xuanshou where xuhao="+temp;
rs2.CreateInstance(__uuidof(Recordset));
rs2->Open(_variant_t(ttsql), conn1->GetConnectionString(),adOpenDynamic, adLockOptimistic,adCmdText);
if(!rs2->adoeof){
CString temp=rs2->GetFields()->GetItem("xiangmu")->GetValue();
CString tshuzi=_variant_t(i+1);
CString itema="A"+tshuzi;
CString itemb="B"+tshuzi;
CString itemc="C"+tshuzi;
CString itemd="D"+tshuzi;
CString iteme="E"+tshuzi;
pSheet->GetRange(_variant_t(itema))->Value2 = _variant_t(i);
pSheet->GetRange(_variant_t(itemb))->Value2 = _variant_t(temp);
temp=rs2->GetFields()->GetItem("xuanshou")->GetValue();
pSheet->GetRange(_variant_t(itemc))->Value2 = _variant_t(temp);
temp=rs2->GetFields()->GetItem("jianjie")->GetValue();
pSheet->GetRange(_variant_t(itemd))->Value2 = _variant_t(temp);
float tfen=rs1->GetFields()->GetItem("chengji")->GetValue();
tfen=(float)((int)(tfen*100))/100;
pSheet->GetRange(_variant_t(iteme))->Value2 = _variant_t(tfen);
}
i++;
rs1->MoveNext();
}
rs->Close();
rs1->Close();
rs2->Close();
conn->Close();
conn1->Close();
zhuangtai.SetWindowText("结果成功导出到database/结果.mdb");
}
catch(_com_error e)///捕捉异常
{
conn->Close();
rs=NULL;
CString errormessage;
errormessage.Format("读取数据库失败1!\r\n错误信息:%s",e.ErrorMessage());
AfxMessageBox(errormessage);///显示错误信息
exit(1);
}
pBook->Saved[0] = VARIANT_TRUE;
} catch(_com_error &e) {
dump_com_error(e);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -