📄 eq_statistic.cpp
字号:
sExcelFile=sExcelFile+m_edit_3.Mid (i,1)+"\\";
}
else
sExcelFile=sExcelFile+m_edit_3.Mid (i,1);
}
//m_edit2=sExcelFile;
//UpdateData(FALSE);
TRY
{
sSql.Format("DRIVER={%s};DSN='''';FIRSTROWHASNAMES=1;READONLY=FALSE;CREATE_DB=\"%s\";DBQ=%s",sDriver, sExcelFile, sExcelFile);
if( database.OpenEx(sSql,CDatabase::noOdbcDialog) )
{
sSql = "CREATE TABLE statistic (\"部门编号\" TEXT,\"设备编号\" TEXT,\"设备名称\" TEXT,\"类别编号\" TEXT,\"规格型号\" TEXT,\"设备数量\" TEXT,\"设备状态号\" TEXT,\"购入日期\" TEXT,\"安装日期\" TEXT,\"原值\" TEXT,\"安装地点\" TEXT,\"生产厂家\" TEXT,\"使用日期\" TEXT,\"使用年限\" TEXT,\"残值\" TEXT,\"月折旧金额\" TEXT,\"备注\" TEXT)";
database.ExecuteSQL(sSql);
//sSql = "INSERT INTO statistic (Name,Age) VALUES (''ddd'',26)";
//database.ExecuteSQL(sSql);
}
database.Close();
}
CATCH_ALL(e)
{
TRACE1("Excel驱动没有安装: %s",sDriver);
}
END_CATCH_ALL;
}
if(m_combo1.GetCurSel ()==0)//企业级
{
while(!rs.IsEOF())
{
CString temp_dep_id;
int j=1,flag=0;
rs.GetFieldValue((short)8,temp_dep_id);
while(j<=temp_count_eq_num)
{
if(temp_count[j]==temp_dep_id)
{
flag=1;
break;
}
j++;
}
if(flag==0)
{
temp_count[temp_count_eq_num]=temp_dep_id;
temp_count_eq_num++;
/*m_edit2=temp_count[temp_count_eq_num];
UpdateData(FALSE);*/
}
rs.MoveNext();
}
edit_temp="本企业在"+m_com4+"的统计结果为:"+"\r\n"+"其中各部门为:"+"\r\n";
temp_count_eq_num--;
}
else if(m_combo1.GetCurSel ()==1)//部门级
temp_count_eq_num=1;
for(;temp_count_eq_num>=1;temp_count_eq_num--)
{
rs.Close();
rs.Open(CRecordset::dynaset,"select * from eq_info");
while(!rs.IsEOF())
{
rs.GetFieldValue((short)0,id);
rs.GetFieldValue((short)1,name);
rs.GetFieldValue((short)2,eq_class_id);
rs.GetFieldValue((short)3,eq_type);
rs.GetFieldValue((short)4,var,SQL_C_SLONG);
if(var.m_dwType!=DBVT_NULL)
eq_amount=var.m_lVal;
else
eq_amount=0;
var.Clear();
rs.GetFieldValue((short)5,var,SQL_C_SLONG);
if(var.m_dwType!=DBVT_NULL)
eq_state=var.m_lVal;
else
eq_state=0;
var.Clear();
rs.GetFieldValue((short)6,pur_date);
pur_date=pur_date.Mid(0,10);//节取字符串
rs.GetFieldValue((short)7,install_date);
install_date=install_date.Mid(0,10);
rs.GetFieldValue((short)8,dep_id);
rs.GetFieldValue((short)9,var,SQL_C_SLONG);
if(var.m_dwType!=DBVT_NULL)
eq_val=var.m_lVal;
else
eq_val=0;
var.Clear();
rs.GetFieldValue((short)10,fix_place);
rs.GetFieldValue((short)11,manfac);
rs.GetFieldValue((short)12,use_date);
use_date=use_date.Mid(0,10);
rs.GetFieldValue((short)13,var,SQL_C_SLONG);
if(var.m_dwType!=DBVT_NULL)
fix_year=var.m_lVal;
else
fix_year=0;
var.Clear();
rs.GetFieldValue((short)14,var,SQL_C_SLONG);
if(var.m_dwType!=DBVT_NULL)
rem_val=var.m_lVal;
else
rem_val=0;
var.Clear();
rs.GetFieldValue((short)15,var,SQL_C_SLONG);
if(var.m_dwType!=DBVT_NULL)
mon_val=var.m_lVal;
else
mon_val=0;
var.Clear();
rs.GetFieldValue((short)16,remark);
//向控件加入一条
if(m_combo1.GetCurSel ()==0)//企业级
{
//m_edit4=m_edit4+pur_date.Mid (8,2)+"\r\n";
//UpdateData(FALSE);
if(temp_count[temp_count_eq_num]==dep_id)
{
InsertEq(id,name,eq_class_id,eq_type,eq_amount,eq_state,pur_date,install_date,dep_id,eq_val,fix_place,manfac,use_date,fix_year,rem_val,mon_val,remark);
switch(eq_state)
{
case 1://安装
temp_eq_state_1++;
break;
case 2://使用
temp_eq_state_2++;
break;
case 3://维修
temp_eq_state_3++;
break;
case 4://报废
temp_eq_state_4++;
break;
default:
break;
}
temp_count_eq++;
if(m_radio1.GetCheck ())
{
if(mmonth==pur_date.Mid (5,2)&&myear==pur_date.Mid (0,4))
pur_num++;
if(mmonth==install_date.Mid (5,2)&&myear==install_date.Mid (0,4))
install_num++;
if(mmonth==use_date.Mid (5,2)&&myear==use_date.Mid (0,4))
use_num++;
}
else if(m_radio2.GetCheck ())
{
if(myear==pur_date.Mid (0,4))
pur_num++;
if(myear==install_date.Mid (0,4))
install_num++;
if(myear==use_date.Mid (0,4))
use_num++;
//m_edit5=m_edit5+myear+pur_date;
//if(myear==pur_date.Mid (0,4))
//m_edit5="dfsfdsfds";
}
}
}
else if(m_combo1.GetCurSel ()==1)//部门级
{
if(m_com2==dep_id)
{
InsertEq(id,name,eq_class_id,eq_type,eq_amount,eq_state,pur_date,install_date,dep_id,eq_val,fix_place,manfac,use_date,fix_year,rem_val,mon_val,remark);
switch(eq_state)
{
case 1://安装
temp_eq_state_1++;
break;
case 2://使用
temp_eq_state_2++;
break;
case 3://维修
temp_eq_state_3++;
break;
case 4://报废
temp_eq_state_4++;
break;
default:
break;
}
temp_count_eq++;
if(m_radio1.GetCheck ())
{
if(mmonth==pur_date.Mid (5,2)&&myear==pur_date.Mid (0,4))
pur_num++;
if(mmonth==install_date.Mid (5,2)&&myear==install_date.Mid (0,4))
install_num++;
if(mmonth==use_date.Mid (5,2)&&myear==use_date.Mid (0,4))
use_num++;
}
else if(m_radio2.GetCheck ())
{
if(myear==pur_date.Mid (0,4))
pur_num++;
if(myear==install_date.Mid (0,4))
install_num++;
if(myear==use_date.Mid (0,4))
use_num++;
//m_edit5=m_edit5+myear+pur_date;
//if(myear==pur_date.Mid (0,4))
//m_edit5="dfsfdsfds";
}
}
}
//InsertEq(id,name,eq_class_id,eq_type,eq_amount,eq_state,pur_date,install_date,dep_id,eq_val,fix_place,manfac,use_date,fix_year,rem_val,mon_val,remark);
rs.MoveNext();
}
if(m_combo1.GetCurSel ()==0)//企业级
{
edit_temp=edit_temp+"部门"+temp_count[temp_count_eq_num]+"的统计结果为:"+"\r\n";
edit_temp=edit_temp+" 设备总台数:";
temp_eq_state.Format ("%d",temp_count_eq);
sum_temp_count_eq+=temp_count_eq;
edit_temp=edit_temp+temp_eq_state+"\r\n";
edit_temp=edit_temp+" 设备状态情况:"+"\r\n"+" 已安装设备数:";
temp_eq_state.Format ("%d",temp_eq_state_1);
sum_temp_eq_state_1+=temp_eq_state_1;
edit_temp=edit_temp+temp_eq_state+"\r\n";
temp_eq_state.Format ("%d",temp_eq_state_2);
sum_temp_eq_state_2+=temp_eq_state_2;
edit_temp=edit_temp+" 已使用设备数:"+temp_eq_state+"\r\n";
temp_eq_state.Format ("%d",temp_eq_state_3);
sum_temp_eq_state_3+=temp_eq_state_3;
edit_temp=edit_temp+" 已维修设备数:"+temp_eq_state+"\r\n";
temp_eq_state.Format ("%d",temp_eq_state_4);
sum_temp_eq_state_4+=temp_eq_state_4;
edit_temp=edit_temp+" 已报废设备数:"+temp_eq_state+"\r\n";
edit_temp=edit_temp+" 新设备购入,安装,使用时间:"+"\r\n"+" 购入新设备数:";
temp_pur_num.Format ("%d",pur_num);
sum_pur_num+=pur_num;
edit_temp=edit_temp+temp_pur_num+"\r\n";
temp_install_num.Format ("%d",install_num);
sum_install_num+=install_num;
edit_temp=edit_temp+" 安装新设备数:"+temp_install_num+"\r\n";
temp_use_num.Format ("%d",use_num);
sum_use_num+=use_num;
edit_temp=edit_temp+" 使用新设备数:"+temp_use_num+"\r\n";
temp_count_eq=0;
temp_eq_state_1=temp_eq_state_2=temp_eq_state_3=temp_eq_state_4=0;
pur_num=install_num=use_num=0;
}
}
rs.Close();
if(m_combo1.GetCurSel ()==1)//部门级
{
edit_temp="部门"+m_com2+"在"+m_com4+"的统计结果为:"+"\r\n";
edit_temp=edit_temp+" 设备总台数:";
temp_eq_state.Format ("%d",temp_count_eq);
edit_temp=edit_temp+temp_eq_state+"\r\n";
edit_temp=edit_temp+" 设备状态情况:"+"\r\n"+" 已安装设备数:";
temp_eq_state.Format ("%d",temp_eq_state_1);
edit_temp=edit_temp+temp_eq_state+"\r\n";
temp_eq_state.Format ("%d",temp_eq_state_2);
edit_temp=edit_temp+" 已使用设备数:"+temp_eq_state+"\r\n";
temp_eq_state.Format ("%d",temp_eq_state_3);
edit_temp=edit_temp+" 已维修设备数:"+temp_eq_state+"\r\n";
temp_eq_state.Format ("%d",temp_eq_state_4);
edit_temp=edit_temp+" 已报废设备数:"+temp_eq_state+"\r\n";
edit_temp=edit_temp+" 新设备购入,安装,使用时间:"+"\r\n"+" 购入新设备数:";
temp_pur_num.Format ("%d",pur_num);
edit_temp=edit_temp+temp_pur_num+"\r\n";
temp_install_num.Format ("%d",install_num);
edit_temp=edit_temp+" 安装新设备数:"+temp_install_num+"\r\n";
temp_use_num.Format ("%d",use_num);
edit_temp=edit_temp+" 使用新设备数:"+temp_use_num+"\r\n";
}
else if(m_combo1.GetCurSel ()==0)//企业级
{
edit_temp=edit_temp+"本企业总统计结果为:"+"\r\n";
edit_temp=edit_temp+" 设备总台数:";
temp_eq_state.Format ("%d",sum_temp_count_eq);
edit_temp=edit_temp+temp_eq_state+"\r\n";
edit_temp=edit_temp+" 设备状态情况:"+"\r\n"+" 已安装设备数:";
temp_eq_state.Format ("%d",sum_temp_eq_state_1);
edit_temp=edit_temp+temp_eq_state+"\r\n";
temp_eq_state.Format ("%d",sum_temp_eq_state_2);
edit_temp=edit_temp+" 已使用设备数:"+temp_eq_state+"\r\n";
temp_eq_state.Format ("%d",sum_temp_eq_state_3);
edit_temp=edit_temp+" 已维修设备数:"+temp_eq_state+"\r\n";
temp_eq_state.Format ("%d",sum_temp_eq_state_4);
edit_temp=edit_temp+" 已报废设备数:"+temp_eq_state+"\r\n";
edit_temp=edit_temp+" 新设备购入,安装,使用时间:"+"\r\n"+" 购入新设备数:";
temp_pur_num.Format ("%d",sum_pur_num);
edit_temp=edit_temp+temp_pur_num+"\r\n";
temp_install_num.Format ("%d",sum_install_num);
edit_temp=edit_temp+" 安装新设备数:"+temp_install_num+"\r\n";
temp_use_num.Format ("%d",sum_use_num);
edit_temp=edit_temp+" 使用新设备数:"+temp_use_num+"\r\n";
}
m_edit1=edit_temp;
if(m_check2.GetCheck ())
{
CString sTxtFile;
FILE *fp;
for(int i=0;i<=m_edit_2.GetLength ();i++)
{
if(m_edit_2.Mid (i,1)=="\\")
{
sTxtFile=sTxtFile+m_edit_2.Mid (i,1)+"\\";
}
else
sTxtFile=sTxtFile+m_edit_2.Mid (i,1);
}
fp=fopen(sTxtFile,"w");
fwrite(edit_temp,sizeof(char),edit_temp.GetLength (),fp);
fclose(fp);
}
UpdateData(FALSE);
//更新数据
if(!UpdateData())
return;
}
void CEq_STATISTIC::OnButton1()
{
// TODO: Add your control notification handler code here
m_edit1="";
m_list1.DeleteAllItems ();
m_check1.SetCheck (0);
m_edit3.ShowWindow (0);
UpdateData(FALSE);
}
void CEq_STATISTIC::OnCheck1()
{
// TODO: Add your control notification handler code here
UpdateData(TRUE);
if(m_check1.GetCheck ())
{
m_edit3.ShowWindow (1);
}
else if(!m_check1.GetCheck ())
{
m_edit3.ShowWindow (0);
}
UpdateData(FALSE);
}
void CEq_STATISTIC::OnCheck2()
{
// TODO: Add your control notification handler code here
UpdateData(TRUE);
if(m_check2.GetCheck ())
{
m_edit2.ShowWindow (1);
}
else if(!m_check2.GetCheck ())
{
m_edit2.ShowWindow (0);
}
UpdateData(FALSE);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -