📄 dayreport.cpp
字号:
// Dayreport.cpp : implementation file
//
#include "stdafx.h"
#include "Commucation.h"
#include "Dayreport.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// CDayreport dialog
CDayreport::CDayreport(CWnd* pParent /*=NULL*/)
: CDialog(CDayreport::IDD, pParent)
{
//{{AFX_DATA_INIT(CDayreport)
// NOTE: the ClassWizard will add member initialization here
//}}AFX_DATA_INIT
try
{
m_pDB.Open("C:\\WINDOWS\\SYSTEM\\record.mdb");
}
catch(CDaoException*e)
{
DisplayDaoException(e);
e->Delete();
}
}
void CDayreport::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CDayreport)
DDX_Control(pDX, IDC_MSFLEXGRID_USER, m_User);
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(CDayreport, CDialog)
//{{AFX_MSG_MAP(CDayreport)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CDayreport message handlers
BOOL CDayreport::OnInitDialog()
{
CDialog::OnInitDialog();
// TODO: Add extra initialization here
int RowCount;
CDaoQueryDef qd(&m_pDB);
qd.Create("","select distinct 工号,日期 from record where flag='1'");
CDaoRecordset rs(&m_pDB);
try
{
rs.Open(&qd,dbOpenDynaset,dbInconsistent);
}
catch(CDaoException* e)
{
DisplayDaoException(e);
e->Delete();
}
RowCount=rs.GetRecordCount();
m_User.SetRows(RowCount+1);
m_User.SetColWidth(0,500);
m_User.SetColWidth(1,1000);
m_User.SetColWidth(2,1500);
m_User.SetRow(0);
m_User.SetCol(1);
m_User.SetText("工号");
m_User.SetCol(2);
m_User.SetText("日期");
RowCount=1;
while(!rs.IsEOF())
{
CString x,y,RowNo;
RowNo.Format("%d",RowCount);
x=V_BSTRT(&rs.GetFieldValue(0));
y=V_BSTRT(&rs.GetFieldValue(1));
m_User.SetRow(RowCount);
m_User.SetCol(0);
m_User.SetText(RowNo);
m_User.SetCol(1);
m_User.SetText(x);
m_User.SetCol(2);
m_User.SetText(y);
RowCount+=1;
rs.MoveNext();
}
if(rs.IsOpen())
rs.Close();
if(qd.IsOpen())
{
qd.Close();
}
return TRUE; // return TRUE unless you set the focus to a control
// EXCEPTION: OCX Property Pages should return FALSE
}
void CDayreport::OnOK()
{
// TODO: Add extra validation here
CString userid,curDate,sqlstr,temp,tmp;
COleVariant tempFieldValue;
int ilevel=0;
double price=0;
m_User.SetCol(1);
userid=m_User.GetText();
m_User.SetCol(2);
curDate=m_User.GetText();
sqlstr="select * from record where 工号='"+userid+"' and 日期='"+curDate+"' and flag='1'";
CDaoQueryDef qd(&m_pDB);
qd.Create("",sqlstr);
CDaoRecordset rs(&m_pDB);
try
{
rs.Open(&qd,dbOpenDynaset,dbInconsistent);
}
catch(CDaoException* e)
{
DisplayDaoException(e);
e->Delete();
}
m_Statis.gonghao=userid;
tmp=V_BSTRT(&rs.GetFieldValue("姓名"));
m_Statis.name=tmp;
tmp=V_BSTRT(&rs.GetFieldValue("日期"));
m_Statis.Day=tmp;
m_Statis.china1=0;
m_Statis.china2=0;
m_Statis.hongkong1=0;
m_Statis.hongkong2=0;
m_Statis.inter1=0;
m_Statis.inter2=0;
m_Statis.local1=0;
m_Statis.local2=0;
while(!rs.IsEOF())
{
temp=V_BSTRT(&rs.GetFieldValue("统计级"));
sscanf(temp,"%d",&ilevel);
switch(ilevel)
{
case 1:
{
m_Statis.inter1+=1;
price=V_R8(&rs.GetFieldValue("总价"));
m_Statis.inter2+=price;
break;
}
case 2:
{
m_Statis.hongkong1+=1;
price=V_R8(&rs.GetFieldValue("总价"));
m_Statis.hongkong2+=price;
break;
}
case 3:
{
m_Statis.hongkong1+=1;
price=V_R8(&rs.GetFieldValue("总价"));
m_Statis.hongkong2+=price;
break;
}
case 4:
{
m_Statis.hongkong1+=1;
price=V_R8(&rs.GetFieldValue("总价"));
m_Statis.hongkong2+=price;
break;
}
case 5:
{
m_Statis.china1+=1;
price=V_R8(&rs.GetFieldValue("总价"));
m_Statis.china2+=price;
break;
}
case 6:
{
m_Statis.local1+=1;
price=V_R8(&rs.GetFieldValue("总价"));
m_Statis.local2+=price;
break;
}
case 7:
{
m_Statis.local1+=1;
price=V_R8(&rs.GetFieldValue("总价"));
m_Statis.local2+=price;
break;
}
}
rs.Edit();
tempFieldValue=COleVariant("0",VT_BSTRT);
rs.SetFieldValue("flag",tempFieldValue);
rs.Update();
rs.MoveNext();
}
if(rs.IsOpen())
rs.Close();
if(qd.IsOpen())
{
qd.Close();
}
CDialog::OnOK();
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -