📄 waterstsaccess.cpp
字号:
// WaterStsAccess.cpp: implementation of the WaterStsAccess class.
//
//////////////////////////////////////////////////////////////////////
#include "stdafx.h"
#include "WaterStsAccess.h"
#ifdef _DEBUG
#undef THIS_FILE
static char THIS_FILE[]=__FILE__;
#define new DEBUG_NEW
#endif
//////////////////////////////////////////////////////////////////////
// Construction/Destruction
//////////////////////////////////////////////////////////////////////
WaterStsAccess::WaterStsAccess()
{
}
WaterStsAccess::~WaterStsAccess()
{
}
/*
int WaterStsAccess::startbr()
{
int intReturnCode=0;
if(!m_fConnected){
m_strErrMsg="***错误:数据库尚未连接";
return -1;
}
HRESULT hr;
_bstr_t source=m_strSource;
_bstr_t query=m_strSQL;
try{
hr=m_pRst->Open(query,source,adOpenDynamic,adLockOptimistic,adCmdText);
}
catch(_com_error e){
m_strErrMsg.Format("***错误:打开记录集出错:%s",e.ErrorMessage());
return -1;
}
intReturnCode=bindvalue();
if(intReturnCode<0)m_strErrMsg="***错误:获取表栏位值出错";
return intReturnCode;
}
int WaterStsAccess::readnext()
{
int intReturnCode=0;
if(!m_fConnected){
m_strErrMsg="***错误:数据库尚未连接";
return -1;
}
try{
m_pRst->MoveNext();
}
catch(_com_error e){
m_strErrMsg.Format("***错误:记录集读取次笔出错:%s",e.ErrorMessage());
return -1;
}
intReturnCode=bindvalue();
if(intReturnCode<0)m_strErrMsg="***错误:获取表栏位值出错";
return intReturnCode;
}
int WaterStsAccess::endbr()
{
if(!m_fConnected)return -1;
m_pRst->Close();
return 0;
}
int WaterStsAccess::insertrec()
{
int intReturnCode=0;
if(!m_fConnected){
m_strErrMsg="***错误:数据库尚未连接";
return -1;
}
HRESULT hr;
try{
hr=m_pRst->AddNew();
intReturnCode=setvalue();
if(intReturnCode<0){
m_strErrMsg="***错误:设置表栏位值出错";
return intReturnCode;
}
hr=m_pRst->Update();
}
catch(_com_error e){
m_strErrMsg.Format("***错误:新增记录出错:%s",e.ErrorMessage());
return -1;
}
return 0;
}
int WaterStsAccess::updaterec()
{
int intReturnCode=0;
HRESULT hr;
if(!m_fConnected){
m_strErrMsg="***错误:数据库尚未连接";
return -1;
}
if(m_pRst->EndOfFile){
m_strErrMsg=" 警告:记录集到尾";
return 1;
}
try{
intReturnCode=setvalue();
if(intReturnCode<0){
m_strErrMsg="***错误:设置表栏位值出错";
return intReturnCode;
}
hr=m_pRst->Update();
}
catch(_com_error e){
m_strErrMsg.Format("***错误:更新数据出错%s",e.ErrorMessage());
return -1;
}
return 0;
}
int WaterStsAccess::deleterec()
{
int intReturnCode=0;
HRESULT hr;
if(!m_fConnected){
m_strErrMsg="***错误:数据库尚未连接";
return -1;
}
if(m_pRst->EndOfFile){
m_strErrMsg=" 警告:记录集到尾";
return 1;
}
try{
hr=m_pRst->Delete(adAffectCurrent);
}
catch(_com_error e){
m_strErrMsg.Format("***错误:删除数据出错:%s",e.ErrorMessage());
return -1;
}
return 0;
}
*/
int WaterStsAccess::addiupdaterec()
{
HRESULT hr;
VARIANT varValue;
if(!m_fConnected){
m_strErrMsg="***错误:数据库尚未连接";
return -1;
}
if(m_pRst->EndOfFile){
m_strErrMsg=" 警告:记录集到尾";
return 1;
}
try{
m_strStepName="addiupdaterec";
varValue.vt=VT_BSTR;
varValue.bstrVal=(_bstr_t)m_strLastAddiTime;
m_pRst->PutCollect("LastAddiTime",&varValue);
varValue.vt=VT_R8;
varValue.dblVal=m_dblLastAddiInfo;
m_pRst->PutCollect("LastAddiInfo",&varValue);
hr=m_pRst->Update();
}
catch(_com_error e){
m_strErrMsg.Format("***错误:更新部分数据出错(%s):%s",m_strStepName,PrintError());
return -1;
}
return 0;
}
int WaterStsAccess::bindvalue()
{
if(m_pRst->EndOfFile)return 1;
VARIANT varValue;
CString strValue;
try{
varValue = m_pRst->GetCollect("Station");
if(varValue.vt != VT_NULL)m_strStation=(LPCSTR)_bstr_t(varValue);
varValue = m_pRst->GetCollect("PreWaterTime");
if(varValue.vt != VT_NULL)m_strPreWaterTime=(LPCSTR)_bstr_t(varValue);
varValue = m_pRst->GetCollect("PreWaterInfo");
if(varValue.vt != VT_NULL)m_dblPreWaterInfo=varValue.dblVal;
varValue = m_pRst->GetCollect("PreFlowInfo");
if(varValue.vt != VT_NULL)m_dblPreFlowInfo=varValue.dblVal;
varValue = m_pRst->GetCollect("LastWaterTime");
if(varValue.vt != VT_NULL)m_strLastWaterTime=(LPCSTR)_bstr_t(varValue);
varValue = m_pRst->GetCollect("LastWaterInfo");
if(varValue.vt != VT_NULL)m_dblLastWaterInfo=varValue.dblVal;
varValue = m_pRst->GetCollect("LastFlowInfo");
if(varValue.vt != VT_NULL)m_dblLastFlowInfo=varValue.dblVal;
varValue = m_pRst->GetCollect("WaterDaySts");
if(varValue.vt != VT_NULL)m_dblWaterDaySts=varValue.dblVal;
varValue = m_pRst->GetCollect("FlowDaySts");
if(varValue.vt != VT_NULL)m_dblFlowDaySts=varValue.dblVal;
varValue = m_pRst->GetCollect("WaterDayCnt");
if(varValue.vt != VT_NULL)m_intWaterDayCnt=varValue.iVal;
varValue = m_pRst->GetCollect("WaterTenDaySts");
if(varValue.vt != VT_NULL)m_dblWaterTenDaySts=varValue.dblVal;
varValue = m_pRst->GetCollect("FlowTenDaySts");
if(varValue.vt != VT_NULL)m_dblFlowTenDaySts=varValue.dblVal;
varValue = m_pRst->GetCollect("WaterTenDayCnt");
if(varValue.vt != VT_NULL)m_intWaterTenDayCnt=varValue.iVal;
varValue = m_pRst->GetCollect("WaterMonthSts");
if(varValue.vt != VT_NULL)m_dblWaterMonthSts=varValue.dblVal;
varValue = m_pRst->GetCollect("FlowMonthSts");
if(varValue.vt != VT_NULL)m_dblFlowMonthSts=varValue.dblVal;
varValue = m_pRst->GetCollect("WaterMonthCnt");
if(varValue.vt != VT_NULL)m_intWaterMonthCnt=varValue.iVal;
varValue = m_pRst->GetCollect("LastAddiTime");
if(varValue.vt != VT_NULL)m_strLastAddiTime=(LPCSTR)_bstr_t(varValue);
varValue = m_pRst->GetCollect("LastAddiInfo");
if(varValue.vt != VT_NULL)m_dblLastAddiInfo=varValue.dblVal;
}
catch(_com_error e){
return -1;
}
return 0;
}
int WaterStsAccess::setvalue()
{
VARIANT varValue;
CString strValue;
try{
varValue.vt=VT_BSTR;
varValue.bstrVal=(_bstr_t)m_strStation;
m_pRst->PutCollect("Station",&varValue);
varValue.vt=VT_BSTR;
varValue.bstrVal=(_bstr_t)m_strPreWaterTime;
m_pRst->PutCollect("PreWaterTime",&varValue);
varValue.vt=VT_R8;
varValue.dblVal=m_dblPreWaterInfo;
m_pRst->PutCollect("PreWaterInfo",&varValue);
varValue.vt=VT_R8;
varValue.dblVal=m_dblPreFlowInfo;
m_pRst->PutCollect("PreFlowInfo",&varValue);
varValue.vt=VT_BSTR;
varValue.bstrVal=(_bstr_t)m_strLastWaterTime;
m_pRst->PutCollect("LastWaterTime",&varValue);
varValue.vt=VT_R8;
varValue.dblVal=m_dblLastWaterInfo;
m_pRst->PutCollect("LastWaterInfo",&varValue);
varValue.vt=VT_R8;
varValue.dblVal=m_dblLastFlowInfo;
m_pRst->PutCollect("LastFlowInfo",&varValue);
varValue.vt=VT_R8;
varValue.dblVal=m_dblWaterDaySts;
m_pRst->PutCollect("WaterDaySts",&varValue);
varValue.vt=VT_R8;
varValue.dblVal=m_dblFlowDaySts;
m_pRst->PutCollect("FlowDaySts",&varValue);
varValue.vt=VT_I2;
varValue.iVal=m_intWaterDayCnt;
m_pRst->PutCollect("WaterDayCnt",&varValue);
varValue.vt=VT_R8;
varValue.dblVal=m_dblWaterTenDaySts;
m_pRst->PutCollect("WaterTenDaySts",&varValue);
varValue.vt=VT_R8;
varValue.dblVal=m_dblFlowTenDaySts;
m_pRst->PutCollect("FlowTenDaySts",&varValue);
varValue.vt=VT_I2;
varValue.iVal=m_intWaterTenDayCnt;
m_pRst->PutCollect("WaterTenDayCnt",&varValue);
varValue.vt=VT_R8;
varValue.dblVal=m_dblWaterMonthSts;
m_pRst->PutCollect("WaterMonthSts",&varValue);
varValue.vt=VT_R8;
varValue.dblVal=m_dblFlowMonthSts;
m_pRst->PutCollect("FlowMonthSts",&varValue);
varValue.vt=VT_I2;
varValue.iVal=m_intWaterMonthCnt;
m_pRst->PutCollect("WaterMonthCnt",&varValue);
varValue.vt=VT_BSTR;
varValue.bstrVal=(_bstr_t)m_strLastAddiTime;
m_pRst->PutCollect("LastAddiTime",&varValue);
varValue.vt=VT_R8;
varValue.dblVal=m_dblLastAddiInfo;
m_pRst->PutCollect("LastAddiInfo",&varValue);
}
catch(_com_error e){
return -1;
}
return 0;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -