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

📄 transaction.cpp

📁 企业办公管理系统
💻 CPP
字号:
// transaction.cpp: implementation of the Ctransaction class.
//
//////////////////////////////////////////////////////////////////////

#include "stdafx.h"
#include "office.h"
#include "transaction.h"

#ifdef _DEBUG
#undef THIS_FILE
static char THIS_FILE[]=__FILE__;
#define new DEBUG_NEW
#endif

//////////////////////////////////////////////////////////////////////
// Construction/Destruction
//////////////////////////////////////////////////////////////////////

Ctransaction::Ctransaction()
{
	transactionType="";//事物类别
    transactionSubject="";//事物主题
	content="";//事物内容
	CoInitialize(NULL);//COM
}

Ctransaction::~Ctransaction()
{

}

CString Ctransaction::GetTransactionType()
{
    return transactionType;
}

COleDateTime Ctransaction::GetTransactionDate()
{
    return transactionDate;
}

CString Ctransaction::GetTransactionSubject()
{
    return transactionSubject;
}

CString Ctransaction::GetTransactionContent()
{
    return content;
}

void Ctransaction::SetTransactionType(CString m_type)
{
    transactionType=m_type;
}
void Ctransaction::SetTransactionDate(COleDateTime m_time)
{
    transactionDate=m_time;
}

void Ctransaction::SetTransactionSubject(CString m_subject)
{
    transactionSubject=m_subject;
}

void Ctransaction::SetTransactionContent(CString m_content)
{
    content=m_content;
}   
//extern COfficeApp theApp;
void Ctransaction::SQLinsert()
{
	 _ConnectionPtr m_pConn(__uuidof(Connection));
	 m_pConn->Open("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=F:\\DataSource\\office1.mdb;Persist Security Info=False","","",adConnectUnspecified);
	
    CString strSQL;
	strSQL="Select*From 事务表";
	_RecordsetPtr m_set("ADODB.Recordset");	
	m_set->Open((_bstr_t )strSQL,_variant_t(m_pConn,true),adOpenDynamic,adLockPessimistic,adCmdText);
	m_set->AddNew();
	CString m_convertDate;
    //先用int型获取响应的数字;
    int year=transactionDate.GetYear();
    int month=transactionDate.GetMonth();
    int day=transactionDate.GetDay();
    m_convertDate.Format("%d-%d-%d",year,month,day);
    _variant_t m_variantDate=_variant_t(m_convertDate);
    m_set->PutCollect("事务类型",_variant_t(transactionType));
    //由于直接将其做为参数输入数据库的数据是不正确的故这里用了CString的转化
//   m_set->PutCollect("事务日期",_variant_t(transactionDate));
    m_set->PutCollect("事务日期",m_variantDate);
    m_set->PutCollect("事务主题",_variant_t(transactionSubject));
    m_set->PutCollect("事务内容",_variant_t(content));
	m_set->Update();
		
	

}

void Ctransaction::SQLdelete(CString m_type)
{
    CString strSQL;
	strSQL="delete from 事务表 where 事务类型 ='";
	strSQL=strSQL+m_type+"'";//构造删除指定事务类型的SQL语句;
	_ConnectionPtr m_pConn("ADODB.Connection");
	m_pConn->Open("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=F:\\DataSource\\office1.mdb;Persist Security Info=False","","",adConnectUnspecified);
    m_pConn->Execute((_bstr_t)strSQL,NULL,adCmdText);
}

void Ctransaction::GetData(CString m_subject)
{
	_ConnectionPtr m_pConn("ADODB.Connection");
	m_pConn->Open("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=F:\\DataSource\\office1.mdb;Persist Security Info=False","","",adConnectUnspecified);
	
	///////////////////////////
   CString strSQL;
   strSQL="select*from 事务表 where 事务主题='";
   strSQL=strSQL+m_subject+"'";
   _RecordsetPtr m_set("ADODB.Recordset");
   m_set->Open(	(LPTSTR)strSQL.GetBuffer(130),_variant_t(m_pConn,true),adOpenDynamic,adLockPessimistic,adCmdText);
//   m_set->Filter=_bstr_t(p);
   
   //这里用到了强制转化 (LPCSTR)((_bstr_t)先将_variant_t转为_bstr_t再转为LPCSTR又隐式转为CString;
   transactionType=(LPCSTR)((_bstr_t)m_set->GetCollect("事务类型"));
   //这里用COleDateTime强制转化
   transactionDate=(COleDateTime)(m_set->GetCollect("事务日期"));
   transactionSubject=(LPCSTR)((_bstr_t)m_set->GetCollect("事务主题"));
   content=(LPCSTR)((_bstr_t)m_set->GetCollect("事务内容"));
}

void Ctransaction::SQLupdate(CString m_oldSubject)
{
	   CString strSQL;
	   strSQL="select*from 事务表 where 事务主题='";
	   strSQL=strSQL+m_oldSubject+"'";
	   _ConnectionPtr m_pConn("ADODB.Connection");
	   m_pConn->Open("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=F:\\DataSource\\office1.mdb;Persist Security Info=False","","",adConnectUnspecified);
	   _RecordsetPtr m_set("ADODB.Recordset");
	   m_set->Open(	(LPTSTR)strSQL.GetBuffer(130),_variant_t(m_pConn,true),adOpenDynamic,adLockPessimistic,adCmdText);   
	   if(!m_set->EndOfFile)
	   {
		   
		   CString m_convertDate;
		   //先用int型获取响应的数字;
		   int year=transactionDate.GetYear();
		   int month=transactionDate.GetMonth();
		   int day=transactionDate.GetDay();
		   m_convertDate.Format("%d-%d-%d",year,month,day);
           _variant_t m_variantDate=_variant_t(m_convertDate);
		   m_set->PutCollect("事务类型",_variant_t(transactionType));
		   //由于直接将其做为参数输入数据库的数据是不正确的故这里用了CString的转化
//		   m_set->PutCollect("事务日期",_variant_t(transactionDate));
    	   m_set->PutCollect("事务日期",m_variantDate);
		   m_set->PutCollect("事务主题",_variant_t(transactionSubject));
		   m_set->PutCollect("事务内容",_variant_t(content));
	   }
	   //记得添加和修改后要用Update方法来更新
	   m_set->Update();
}

⌨️ 快捷键说明

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