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

📄 adoconnaccess.cpp

📁 带MD5摘要计算的登录程序,实现部分功能模块和部分界面
💻 CPP
📖 第 1 页 / 共 3 页
字号:
	{
		//AfxMessageBox(e.Description());
		return FALSE;
	}
}

CString ADOConnAccess::GetTagUserName(CString strTagID)
{
	CString strUserName;
	strUserName.Empty();
	try
	{
		CString sql;
		sql.Format("select UserName from User,TagUser where TagNo='%s'and User.UserNo=TagUser.UserNo",strTagID);
		m_pRecordset.CreateInstance("ADODB.Recordset");
		m_pRecordset->Open((_variant_t)sql,m_pConnection.GetInterfacePtr(),adOpenDynamic,adLockOptimistic,adCmdText);
		while(m_pRecordset->adoEOF==0)
		{
			strUserName=(char *)(_bstr_t)m_pRecordset->GetCollect("UserName");
			m_pRecordset->MoveNext();
		}
		m_pRecordset->Close();
	}
	catch(...)
	{
	}
	return strUserName;
}

CString ADOConnAccess::GetTagPropertyName(CString strTagID)
{
	CString strPropertyName;
	strPropertyName.Empty();
	try
	{
		CString sql;
		sql.Format("select PropertyName from Property,TagProperty where TagNo='%s'and Property.PropertyNo=TagProperty.PropertyNo",strTagID);
		m_pRecordset.CreateInstance("ADODB.Recordset");
		m_pRecordset->Open((_variant_t)sql,m_pConnection.GetInterfacePtr(),adOpenDynamic,adLockOptimistic,adCmdText);
		while(m_pRecordset->adoEOF==0)
		{
			strPropertyName=(char *)(_bstr_t)m_pRecordset->GetCollect("PropertyName");
			m_pRecordset->MoveNext();
		}
		m_pRecordset->Close();
	}
	catch(...)
	{
	}
	return strPropertyName;
}

BOOL ADOConnAccess::ShowDetailEventReport(CString strTagID,CSortListCtrl *pListCtrl)
{
	try
	{
		CString sql;
		sql.Format("select EventTime,EventContent,PropertyName,UserName from Event,Property,User where  Event.TagNo='%s' and Event.PropertyNo=Property.PropertyNo and Event.UserNo=User.UserNo",strTagID);
		m_pRecordset.CreateInstance("ADODB.Recordset");
		m_pRecordset->Open((_variant_t)sql,m_pConnection.GetInterfacePtr(),adOpenDynamic,adLockOptimistic,adCmdText);
		//int iThreshold=0;
		//char * pchBuf=new char[2];
		pListCtrl->DeleteAllItems();
		while(m_pRecordset->adoEOF==0)
		{
			/*pListCtrl->InsertItem(0,"");
			pListCtrl->SetItemText(0,0,(char *)(_bstr_t)m_pRecordset->GetCollect("EventTime"));
			pListCtrl->SetItemText(0,1,(char *)(_bstr_t)m_pRecordset->GetCollect("EventContent"));
			pListCtrl->SetItemText(0,2,(char *)(_bstr_t)m_pRecordset->GetCollect("PropertyName"));
			pListCtrl->SetItemText(0,3,(char *)(_bstr_t)m_pRecordset->GetCollect("UserName"));*/
			pListCtrl->AddItem((char *)(_bstr_t)m_pRecordset->GetCollect("EventTime"),(char *)(_bstr_t)m_pRecordset->GetCollect("EventContent"),(char *)(_bstr_t)m_pRecordset->GetCollect("PropertyName"),(char *)(_bstr_t)m_pRecordset->GetCollect("UserName"));
			//iThreshold=atoi((char *)(_bstr_t)(m_pRecordset->GetCollect("ReaderThreshold")));
			//pListCtrl->SetItemText(0,3,itoa(iThreshold,pchBuf,16););
			m_pRecordset->MoveNext();
		}
		//delete [] pchBuf;
		m_pRecordset->Close();
		return TRUE;
	}
	catch(_com_error e)
	{
		return FALSE;
	}
}

CString ADOConnAccess::GetReaderLocation(CString strTagNo)
{
	CString strReaderLocation;
	strReaderLocation.Empty();
	try
	{
		CString sql;
		sql.Format("select ReaderAddress from Reader,Tag where TagNo='%s' and HomeReaderNo=ReaderNo",strTagNo);
		m_pRecordset.CreateInstance("ADODB.Recordset");
		m_pRecordset->Open((_variant_t)sql,m_pConnection.GetInterfacePtr(),adOpenDynamic,adLockOptimistic,adCmdText);
		while(m_pRecordset->adoEOF==0)
		{
			strReaderLocation=(char *)(_bstr_t)m_pRecordset->GetCollect("ReaderAddress");
			m_pRecordset->MoveNext();
		}
		m_pRecordset->Close();
	}
	catch(...)
	{
	}	
	return strReaderLocation;
}

BOOL ADOConnAccess::AddAlarmEventInfo(CTime tEventTime, CString strEventContent, CString strTagID, CString strPropertyNo, CString strUserNo)
{
	try
	{
		m_pRecordset.CreateInstance("ADODB.Recordset");
		m_pRecordset->Open("select * from Event",m_pConnection.GetInterfacePtr(),adOpenDynamic,adLockOptimistic,adCmdText);
		m_pRecordset->AddNew();
		CString strDateTime=tEventTime.Format("%Y-%m-%d");
		strDateTime=strDateTime+" "+tEventTime.Format("%H:%M:%S");
		m_pRecordset->GetFields()->GetItem("EventTime")->Value=(_bstr_t)strDateTime;
		m_pRecordset->GetFields()->GetItem("EventContent")->Value=(_bstr_t)strEventContent;
		m_pRecordset->GetFields()->GetItem("TagNo")->Value=(_bstr_t)strTagID;
		m_pRecordset->GetFields()->GetItem("PropertyNo")->Value=(_bstr_t)strPropertyNo;
		m_pRecordset->GetFields()->GetItem("UserNo")->Value=(_bstr_t)strUserNo;
		if(!strUserNo.IsEmpty() && !strPropertyNo.IsEmpty())
		{
			m_pRecordset->Update();
		}
		m_pRecordset->Close();
		return TRUE;
	}
	catch(_com_error e)
	{
		//AfxMessageBox(e.Description());
		return FALSE;
	}
}

CString ADOConnAccess::GetTagPropertyNo(CString strTagID)
{
	CString strPropertyNo;
	strPropertyNo.Empty();
	try
	{
		CString sql;
		sql.Format("select PropertyNo from TagProperty where TagNo='%s'",strTagID);
		m_pRecordset.CreateInstance("ADODB.Recordset");
		m_pRecordset->Open((_variant_t)sql,m_pConnection.GetInterfacePtr(),adOpenDynamic,adLockOptimistic,adCmdText);
		while(m_pRecordset->adoEOF==0)
		{
			strPropertyNo=(char *)(_bstr_t)m_pRecordset->GetCollect("PropertyNo");
			m_pRecordset->MoveNext();
		}
		m_pRecordset->Close();
	}
	catch(...)
	{
	}	
	return strPropertyNo;
}

CString ADOConnAccess::GetTagUserNo(CString strTagID)
{
	CString strUserNo;
	strUserNo.Empty();
	try
	{
		CString sql;
		sql.Format("select UserNo from TagUser where TagNo='%s'",strTagID);
		m_pRecordset.CreateInstance("ADODB.Recordset");
		m_pRecordset->Open((_variant_t)sql,m_pConnection.GetInterfacePtr(),adOpenDynamic,adLockOptimistic,adCmdText);
		while(m_pRecordset->adoEOF==0)
		{
			strUserNo=(char *)(_bstr_t)m_pRecordset->GetCollect("UserNo");
			m_pRecordset->MoveNext();
		}
		m_pRecordset->Close();
	}
	catch(...)
	{
	}	
	return strUserNo;
}

BOOL ADOConnAccess::EventQuery(CString strQueryKey, CSortListCtrl *pListCtrl)
{
	try
	{
		CString sql;
		if(strQueryKey.IsEmpty())
		{
			sql.Format("select TagNo,EventTime,EventContent,PropertyName,UserName from Event,Property,User where Event.PropertyNo=Property.PropertyNo and Event.UserNo=User.UserNo order by TagNo asc");
		}
		else
		{
			sql.Format("select TagNo,EventTime,EventContent,PropertyName,UserName from Event,Property,User where Event.TagNo='%s' and Event.PropertyNo=Property.PropertyNo and Event.UserNo=User.UserNo order by TagNo asc",strQueryKey);
		}
		m_pRecordset.CreateInstance("ADODB.Recordset");
		m_pRecordset->Open((_variant_t)sql,m_pConnection.GetInterfacePtr(),adOpenDynamic,adLockOptimistic,adCmdText);
		pListCtrl->DeleteAllItems();
		while(m_pRecordset->adoEOF==0)
		{
			/*pListCtrl->InsertItem(0,"");
			pListCtrl->SetItemText(0,0,(char *)(_bstr_t)m_pRecordset->GetCollect("TagNo"));
			pListCtrl->SetItemText(0,1,(char *)(_bstr_t)m_pRecordset->GetCollect("EventTime"));
			pListCtrl->SetItemText(0,2,(char *)(_bstr_t)m_pRecordset->GetCollect("EventContent"));
			pListCtrl->SetItemText(0,3,(char *)(_bstr_t)m_pRecordset->GetCollect("PropertyName"));
			pListCtrl->SetItemText(0,4,(char *)(_bstr_t)m_pRecordset->GetCollect("UserName"));*/
			pListCtrl->AddItem((char *)(_bstr_t)m_pRecordset->GetCollect("TagNo"),(char *)(_bstr_t)m_pRecordset->GetCollect("EventTime"),(char *)(_bstr_t)m_pRecordset->GetCollect("EventContent"),(char *)(_bstr_t)m_pRecordset->GetCollect("PropertyName"),(char *)(_bstr_t)m_pRecordset->GetCollect("UserName"));
			m_pRecordset->MoveNext();
		}
		m_pRecordset->Close();
		return TRUE;
	}
	catch(_com_error e)
	{
		return FALSE;
	}
}

BOOL ADOConnAccess::PropertyRegisterPropertyTypeNameComboInit(CComboBox *pComboBox, CEdit *pEdit)
{
	try
	{
		CString sql,strPropertyTypeName;
		sql.Format("select PropertyTypeName from PropertyTypeNoName");
		m_pRecordset.CreateInstance("ADODB.Recordset");
		m_pRecordset->Open((_variant_t)sql,m_pConnection.GetInterfacePtr(),adOpenDynamic,adLockOptimistic,adCmdText);
		pComboBox->ResetContent();
		BOOL bFlag=FALSE;
		while(m_pRecordset->adoEOF==0)
		{
			bFlag=TRUE;
			strPropertyTypeName=(char *)(_bstr_t)m_pRecordset->GetCollect("PropertyTypeName");
			pComboBox->AddString(strPropertyTypeName);
			m_pRecordset->MoveNext();
		}
		m_pRecordset->Close();
		if(bFlag)
		{
			pComboBox->SetCurSel(0);
			pComboBox->GetWindowText(strPropertyTypeName);
			sql.Format("select PropertyTypeNo from PropertyTypeNoName where PropertyTypeName='%s'",strPropertyTypeName);
			m_pRecordset.CreateInstance("ADODB.Recordset");
			m_pRecordset->Open((_variant_t)sql,m_pConnection.GetInterfacePtr(),adOpenDynamic,adLockOptimistic,adCmdText);
			pEdit->SetWindowText((char *)(_bstr_t)m_pRecordset->GetCollect("PropertyTypeNo"));
			m_pRecordset->Close();
		}
		return TRUE;
	}
	catch(...)
	{
		return FALSE;
	}
}

BOOL ADOConnAccess::PropertyRegisterShowSelPropertyTypeNo(CComboBox *pComboBox, CEdit *pEdit)
{
	try
	{
		CString sql,strPropertyTypeName;//,strPropertyTypeNo;
		pComboBox->GetWindowText(strPropertyTypeName);
		if(!strPropertyTypeName.IsEmpty())
		{
			sql.Format("select PropertyTypeNo from PropertyTypeNoName where PropertyTypeName='%s'",strPropertyTypeName);
			m_pRecordset.CreateInstance("ADODB.Recordset");
			m_pRecordset->Open((_variant_t)sql,m_pConnection.GetInterfacePtr(),adOpenDynamic,adLockOptimistic,adCmdText);
			//strPropertyTypeNo.Format("%s",(char *)(_bstr_t)m_pRecordset->GetCollect("PropertyTypeNo"));
			pEdit->SetWindowText((char *)(_bstr_t)m_pRecordset->GetCollect("PropertyTypeNo"));
			m_pRecordset->Close();
		}
		return TRUE;
	}
	catch(...)
	{
		return FALSE;
	}
}

BOOL ADOConnAccess::LogOnAdminNoInit(CComboBox *pComboBox)
{
	try
	{
		pComboBox->ResetContent();
		m_pRecordset.CreateInstance("ADODB.Recordset");
		m_pRecordset->Open("select SuperAdministratorNo from SuperAdministrator",m_pConnection.GetInterfacePtr(),adOpenDynamic,adLockOptimistic,adCmdText);
		BOOL bFlag=FALSE;
		CString strSuperAdministratorNo;
		while(m_pRecordset->adoEOF==0)
		{
			bFlag=TRUE;
			strSuperAdministratorNo=(char *)(_bstr_t)m_pRecordset->GetCollect("SuperAdministratorNo");
			pComboBox->AddString(strSuperAdministratorNo);
			m_pRecordset->MoveNext();
		}
		if(bFlag)
			pComboBox->SetCurSel(0);
		m_pRecordset->Close();
		return TRUE;
	}
	catch(_com_error e)
	{
		return FALSE;
	}
}

BOOL ADOConnAccess::LogOnValidate(CString strSuperAdministratorNo,CString strAdminPasswordDigest)
{
	try
	{
		CString sql;
		sql.Format("select * from SuperAdministrator where SuperAdministratorNo='%s' and SuperAdministratorPassword='%s'",strSuperAdministratorNo,strAdminPasswordDigest);
		m_pRecordset.CreateInstance("ADODB.Recordset");
		m_pRecordset->Open((_variant_t)sql,m_pConnection.GetInterfacePtr(),adOpenDynamic,adLockOptimistic,adCmdText);
		BOOL bFlag=FALSE;
		while(m_pRecordset->adoEOF==0)
		{
			bFlag=TRUE;
			break;
		}
		return bFlag;
	}
	catch(_com_error e)
	{
		return FALSE;
	}
}

⌨️ 快捷键说明

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