?? dialog_query.cpp
字號(hào):
//
/****************************************/
/* SchoolManageSystem */
/*設(shè)計(jì)者:全佳營(yíng) */
/*時(shí)間:2004.5.9-2004-5.18 */
/*Email:ghostman@tzc.edu.cn */
/****************************************/
// Dialog_Query.cpp : 實(shí)現(xiàn)文件
//
#include "stdafx.h"
#include "SchoolManageSys_2.h"
#include "Dialog_Query.h"
#include ".\dialog_query.h"
#include "SChoolManageSys_2Dlg.h"
// CDialog_Query 對(duì)話框
IMPLEMENT_DYNAMIC(CDialog_Query, CDialog)
CDialog_Query::CDialog_Query(CWnd* pParent /*=NULL*/)
: CDialog(CDialog_Query::IDD, pParent)
, m_QueryUsername(_T(""))
, m_QueryNum(_T(""))
, m_QueryID(_T(""))
, m_Queryname(_T(""))
{
}
CDialog_Query::~CDialog_Query()
{
}
void CDialog_Query::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
DDX_Control(pDX, IDC_COMBO_QUERY, m_QueryChoice);
DDX_Control(pDX, IDC_DATAGRID_QUERY, m_Datagrid_Query);
DDX_Text(pDX, IDC_EDIT1, m_QueryUsername);
DDX_Text(pDX, IDC_EDIT2, m_QueryNum);
DDX_Control(pDX, IDC_EDIT1, m_eidtusername);
DDX_Control(pDX, IDC_EDIT3, m_editID);
DDX_Control(pDX, IDC_EDIT2, m_editnum);
DDX_Text(pDX, IDC_EDIT3, m_QueryID);
DDX_Control(pDX, IDC_EDIT4, m_editname);
DDX_Text(pDX, IDC_EDIT4, m_Queryname);
}
BEGIN_MESSAGE_MAP(CDialog_Query, CDialog)
ON_CBN_SELCHANGE(IDC_COMBO_QUERY, OnCbnSelchangeComboQuery)
ON_BN_CLICKED(IDC_BUTTON_QUERY, OnBnClickedButtonQuery)
ON_BN_CLICKED(IDOK, OnBnClickedOk)
END_MESSAGE_MAP()
// CDialog_Query 消息處理程序
BOOL CDialog_Query::OnInitDialog(){
CDialog::OnInitDialog();
theApp.m_pSkin->ApplySkin((long)m_hWnd);
m_QueryChoice.AddString("查詢學(xué)生記錄");
m_QueryChoice.AddString("查詢教師記錄");
m_QueryChoice.AddString("課程相關(guān)記錄");
m_QueryChoice.AddString("書籍相關(guān)記錄");
m_QueryChoice.AddString("學(xué)院相關(guān)記錄");
m_QueryChoice.AddString("系別相關(guān)記錄");
m_QueryChoice.AddString("社團(tuán)相關(guān)記錄");
m_QueryChoice.AddString("班級(jí)相關(guān)記錄");
m_QueryChoice.SetCurSel(0);
CWnd *m_pWnd=CWnd::FindWindow(NULL,"校人事信息管理系統(tǒng)");
m_AdoConnection=((CSchoolManageSys_2Dlg*) m_pWnd)->m_AdoConnection;
if(m_AdoConnection.IsOpen()){
m_AdoRecordSet.SetAdoConnection(&m_AdoConnection);
m_AdoRecordSet.SetCursorLocation();
}
return TRUE;
}
void CDialog_Query::OnCbnSelchangeComboQuery()
{
// TODO: 在此添加控件通知處理程序代碼
UpdateData();
m_QueryID="";
m_Queryname="";
m_QueryNum="";
m_QueryUsername="";
UpdateData(FALSE);
m_QueryChoice.GetLBText(m_QueryChoice.GetCurSel(),m_selection);
if(m_selection=="相關(guān)記錄"){
AfxMessageBox("請(qǐng)重新選擇一個(gè)");
return ;
}
else if(m_selection=="查詢學(xué)生記錄"||m_selection=="查詢教師記錄"){
m_editID.SetReadOnly();
m_editname.SetReadOnly();
m_eidtusername.SetReadOnly(FALSE);
m_editnum.SetReadOnly(FALSE);
}
else if(m_selection=="課程相關(guān)記錄"||m_selection=="書籍相關(guān)記錄"
||m_selection=="學(xué)院相關(guān)記錄"||m_selection=="系別相關(guān)記錄"||
m_selection=="社團(tuán)相關(guān)記錄"||m_selection=="班級(jí)相關(guān)記錄"){
m_eidtusername.SetReadOnly();
m_editnum.SetReadOnly();
m_editID.SetReadOnly(FALSE);
m_editname.SetReadOnly(FALSE);
if(m_selection=="課程相關(guān)記錄") m_editID.SetReadOnly();
}
}
void CDialog_Query::OnBnClickedButtonQuery()
{
// TODO: 在此添加控件通知處理程序代碼
UpdateData();
CString sql;
long lOption(adCmdText);
if(m_AdoConnection.IsOpen()){
UpdateData(TRUE);
if(m_selection=="查詢學(xué)生記錄"){
if(m_QueryNum!=""){
if(m_QueryUsername!="") AfxMessageBox("查詢以學(xué)號(hào)為準(zhǔn)");
sql="SELECT * FROM studentrecord,lessonrecord,classrecord WHERE studentrecord.studynum = \'"+m_QueryNum+"\' AND lessonrecord.studynum=\'"+m_QueryNum+"\' AND studentrecord.classid=classrecord.classid";
}
else if(m_QueryUsername!=""){
sql="SELECT *FROM studentrecord,lessonrecord,classrecord WHERE 姓名 LIKE \'%"+m_QueryUsername+"%\' AND studentrecord.studynum=lessonrecord.studynum AND studentrecord.classid=classrecord.classid";
}else {
sql="studentrecord";
lOption=adCmdTable;
}
m_Datagrid_Query.put_Caption("查找的學(xué)生資料");
}
if(m_selection=="查詢教師記錄"){
if(m_QueryNum!=""){
if(m_QueryUsername!="") AfxMessageBox("查詢以教師號(hào)為準(zhǔn)");
sql.Format("SELECT *FROM teacherrecord,teachrecord WHERE teachernum =%s AND teacherrecord.teachernum=teachrecord.teachernum",m_QueryNum);
}
else if(m_QueryUsername!=""){
sql="SELECT *FROM teacherrecord WHERE teachername LIKE \'%"+m_QueryUsername+"%\' AND teacherrecord.teachernum=teachrecord.teachernum";
}
else {
sql="teacherrecord";
lOption=adCmdTable;
}
m_Datagrid_Query.put_Caption("查找的教師資料");
}
if(m_selection=="課程相關(guān)記錄"){
if(m_Queryname!=""){
sql="SELECT *FROM lessonrecord WHERE 課程 LIKE \'%"+m_Queryname+"%\'";
}else {
sql.Format("lessonrecord");
lOption=adCmdTable;
}
m_Datagrid_Query.put_Caption("查找的課程信息");
}
if(m_selection=="書籍相關(guān)記錄"){
if(m_QueryID!=""){
if(m_Queryname!="") AfxMessageBox("查詢以書籍編號(hào)為準(zhǔn)");
sql.Format("SELECT *FROM bookrecord,studentrecord WHERE bookid =%s AND bookrecord.studynum=studentrecord.studynum",m_QueryID);
}else if(m_Queryname!=""){
sql="SELECT *FROM lessonrecord WHERE books LIKE \'%"+m_Queryname+"%\' AND bookrecord.studynum=studentrecord.studynum";
}else {
sql.Format("bookrecord");
lOption=adCmdTable;
}
m_Datagrid_Query.put_Caption("查找的書籍信息");
}
if(m_selection=="學(xué)院相關(guān)記錄"){
if(m_QueryID!=""){
if(m_Queryname!="") AfxMessageBox("查詢以學(xué)院編號(hào)為準(zhǔn)");
sql.Format("SELECT *FROM collegerecord WHERE collegeid=%s",m_QueryID);
}else if(m_Queryname!=""){
sql="SELECT *FROM collegerecord WHERE collegename LIKE \'%"+m_Queryname+"%\'";
}else {
sql.Format("collegerecord");
lOption=adCmdTable;
}
m_Datagrid_Query.put_Caption("查找的學(xué)院相關(guān)信息");
}
if(m_selection=="系別相關(guān)記錄"){
if(m_QueryID!=""){
if(m_Queryname!="") AfxMessageBox("查詢以系別編號(hào)為準(zhǔn)");
sql.Format("SELECT *FROM departmentrecord,collegerecord WHERE departmentid=%s AND departmentrecord.collegeid=collegerecord.collegeid",m_QueryID);
}else if(m_Queryname!=""){
sql="SELECT *FROM departmentrecord,collegerecord WHERE departmentname LIKE \'%"+m_Queryname+"%\' AND departmentrecord.collegeid=collegerecord.collegeid";
}else {
sql.Format("departmentrecord");
lOption=adCmdTable;
}
m_Datagrid_Query.put_Caption("查找的系的相關(guān)資料");
}
if(m_selection=="社團(tuán)相關(guān)記錄"){
if(m_QueryID!=""){
if(m_Queryname!="") AfxMessageBox("查詢以社團(tuán)編號(hào)為準(zhǔn)");
sql.Format("SELECT *FROM consortiumrecord WHERE consortiumid=%s",m_QueryID);
}else if(m_Queryname!=""){
sql="SELECT *FROM consortiumrecord WHERE consortiumname=\'%"+m_Queryname+"%\'";
}else {
sql.Format("consortiumrecord");
lOption=adCmdTable;
}
m_Datagrid_Query.put_Caption("查找的社團(tuán)相關(guān)信息");
}
if(m_selection=="班級(jí)相關(guān)記錄"){
if(m_QueryID!=""){
if(m_Queryname!="") AfxMessageBox("查詢以班級(jí)編號(hào)為準(zhǔn)");
sql.Format("SELECT *FROM classrecord,departmentrecord WHERE classid=%s AND classrecord.departmentid=departmentrecord.departmentid",m_QueryID);
}else if(m_Queryname!=""){
sql="SELECT *FROM classrecord,departmentrecord WHERE classname LIKE \'%"+m_Queryname+"%\' AND classrecord.departmentid=departmentrecord.departmentid";
}else {
sql.Format("classrecord");
lOption=adCmdTable;
}
m_Datagrid_Query.put_Caption("查找的班級(jí)相關(guān)信息");
}
}else {
AfxMessageBox("數(shù)據(jù)庫(kù)連接出現(xiàn)問(wèn)題");
return;
}
if(m_AdoRecordSet.IsOpen())
m_AdoRecordSet.Close();
m_AdoRecordSet.Open(sql,lOption);
if(m_AdoRecordSet.IsEOF()){
AfxMessageBox("沒有搜索到相關(guān)記錄");
return;
}
m_Datagrid_Query.putref_DataSource(NULL);
m_Datagrid_Query.putref_DataSource((LPUNKNOWN)m_AdoRecordSet.GetRecordset());
m_Datagrid_Query.put_AllowAddNew(TRUE);
m_Datagrid_Query.put_AllowDelete(TRUE);
m_Datagrid_Query.put_AllowUpdate(TRUE);
m_Datagrid_Query.Refresh();
m_QueryID="";
m_Queryname="";
m_QueryNum="";
m_QueryUsername="";
UpdateData(FALSE);
}
void CDialog_Query::OnBnClickedOk()
{
// TODO: 在此添加控件通知處理程序代碼
OnCancel();
}
void CDialog_Query::OnOK(){
if(MessageBox("退出查詢?","確定退出",MB_OKCANCEL|MB_ICONQUESTION)==IDOK){
m_AdoConnection.CommitTrans();
CDialog::OnOK();
}
}
void CDialog_Query::OnCancel(){
if(MessageBox("退出查詢?","確定退出",MB_OKCANCEL|MB_ICONQUESTION)==IDOK){
m_AdoConnection.CommitTrans();
CDialog::OnCancel();
}
}
?? 快捷鍵說(shuō)明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -