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

📄 dayreport.cpp

📁 一个可以控制单片机根据通话时间和所拨地区进行计费的软件!
💻 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 + -