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

📄 findroomdlg.cpp

📁 系统将动态实时的住宿登记、客房调整、销售报表等有机地联系在一起
💻 CPP
📖 第 1 页 / 共 2 页
字号:
    
  //  m_addmoney_regnumberctr.GetWindowText(m_addmoney_regnumber);
	
	CString strsql;
    strsql.Format("SELECT * FROM roomsetting where 房间号='%s'",m_findroomdlgroomnumber);
	m_pRecordsetout->raw_Close();
	try
	{//打开数据库
		m_pRecordsetout->Open(_variant_t(strsql),                // 查询 表中所有字段
							theApp.m_pConnection.GetInterfacePtr(),	 // 获取库接库的IDispatch指针
							adOpenDynamic,
							adLockOptimistic,
							adCmdText);
	}
	catch(_com_error *e)
	{//捕获异常
		AfxMessageBox(e->ErrorMessage());
	}
    
    int i=0;
	try
	{
		if(!m_pRecordsetout->BOF)//判断指针是否在数据集最后
			m_pRecordsetout->MoveFirst();
		else
		{
			MessageBox("表内数据为空","客房管理系统");
			return ;
		}

		// read data from the database table 
	//	while(!m_pRecordset->adoEOF)
	//	{
		//读取查询到的数据,并在列表框内显示
		//读取数据表内房间号字段数据
			var = m_pRecordsetout->GetCollect("房间号");
			if(var.vt != VT_NULL)
				findroom_roomnumber = (LPCSTR)_bstr_t(var);
			//在列表框内显示该字段的内容
			m_findroom_list.InsertItem(i,findroom_roomnumber.GetBuffer(50));
            //读取数据表内房间类型字段数据
			var = m_pRecordsetout->GetCollect("房间类型");
			if(var.vt != VT_NULL)
				findroom_roomlevel = (LPCSTR)_bstr_t(var);
			//在列表框内显示该字段的内容
			m_findroom_list.SetItemText(i,1,findroom_roomlevel.GetBuffer(50));
           //读取数据表内价格字段数据
			var = m_pRecordsetout->GetCollect("价格");
			if(var.vt != VT_NULL)
				findroom_roommoney = (LPCSTR)_bstr_t(var);
			//在列表框内显示该字段的内容
			m_findroom_list.SetItemText(i,2,findroom_roommoney.GetBuffer(50));
            //读取数据表内房态字段数据
			var = m_pRecordsetout->GetCollect("房态");
			if(var.vt != VT_NULL)
				findroom_roomstate = (LPCSTR)_bstr_t(var);
			//在列表框内显示该字段的内容
			m_findroom_list.SetItemText(i,3,findroom_roomstate.GetBuffer(50));

             //读取数据表内标志字段数据
			var = m_pRecordsetout->GetCollect("标志");
			if(var.vt != VT_NULL)
				findroom_roomsign = (LPCSTR)_bstr_t(var);
			//在列表框内显示该字段的内容
			m_findroom_list.SetItemText(i,4,findroom_roomsign.GetBuffer(50));
          //读取数据表内备注字段数据
			var = m_pRecordsetout->GetCollect("备注");
			if(var.vt != VT_NULL)
				findroom_roombeizhu = (LPCSTR)_bstr_t(var);
			//在列表框内显示该字段的内容
			m_findroom_list.SetItemText(i,5,findroom_roombeizhu.GetBuffer(50));
           //读取数据表内配置字段数据
			var = m_pRecordsetout->GetCollect("配置");
			if(var.vt != VT_NULL)
				findroom_roomsetting = (LPCSTR)_bstr_t(var);
			//在列表框内显示该字段的内容
			m_findroom_list.SetItemText(i,6,findroom_roomsetting.GetBuffer(50));
            //读取数据表内使用设置字段数据
			var = m_pRecordsetout->GetCollect("使用设置");
			if(var.vt != VT_NULL)
				findroom_roomusesetting = (LPCSTR)_bstr_t(var);
			//在列表框内显示该字段的内容
			m_findroom_list.SetItemText(i,7,findroom_roomusesetting.GetBuffer(50));
           //读取数据表内营业日期字段数据
			var = m_pRecordsetout->GetCollect("营业日期");
			if(var.vt != VT_NULL)
				findroom_roomusedate = (LPCSTR)_bstr_t(var);
			//在列表框内显示该字段的内容
			m_findroom_list.SetItemText(i,8,findroom_roomusedate.GetBuffer(50));

     //       i++;
		
	//		m_pRecordset->MoveNext();
	//	}
			//更新显示
			
           UpdateData(false);
    
		// 
		
	}
	catch(_com_error *e)//捕获异常
	{
		AfxMessageBox(e->ErrorMessage());
	}

		// 关闭记录集
	m_pRecordsetout->Close();
//	m_pRecordsetout = NULL;
	//更新显示
	UpdateData(false);
}

void CFindroomdlg::OnClickLISTfindroom(NMHDR* pNMHDR, LRESULT* pResult) 
{
	// TODO: Add your control notification handler code here
	int i = m_findroom_list.GetSelectionMark();
	 //将选定的项目的对应内容显示在对应的输入框内,以便修改
	m_findroom_roomlevel = m_findroom_list.GetItemText(i,1);
	m_findroom_roommoney = m_findroom_list.GetItemText(i,2);
    m_findroom_state=m_findroom_list.GetItemText(i,3);

	m_findroom_foomsign=m_findroom_list.GetItemText(i,4);

	m_findroom_beizhu=m_findroom_list.GetItemText(i,5);
	m_findroom_setting =m_findroom_list.GetItemText(i,6);

	m_findroom_usesetting =m_findroom_list.GetItemText(i,7);

	m_findroom_usedate=m_findroom_list.GetItemText(i,8);

	UpdateData(FALSE);//更新显示

	*pResult = 0;
}

void CFindroomdlg::Onfindroomdelete() 
{
	// TODO: Add your control notification handler code here
	if(m_findroomdlgroomnumber=="")
	{
		MessageBox("请先选择房间号!否则操作非法!","客房管理系统");
		return;
	}
//	m_pRecordset.CreateInstance(__uuidof(Recordset));
   // m_pRecordsetdel.CreateInstance(__uuidof(Recordset));
	_variant_t var;

	int nitem;

	//得到第一个被选择item的位置
	POSITION pos=m_findroom_list.GetFirstSelectedItemPosition();
	if(pos==NULL)
	{
		MessageBox("没有选择记录!","客房管理系统");
		return;
	}
	while(pos)
	{
		nitem=m_findroom_list.GetNextSelectedItem(pos);
		CString sqlstr;
        sqlstr.Format("delete from roomsetting where 房间号= '%s'",m_findroom_list.GetItemText(nitem,0));
		// 在ADO操作中建议语句中要常用try...catch()来捕获错误信息,
	   // 
     	try
		{//打开数据库
	    	m_pRecordsetdel->Open(_variant_t(sqlstr),                // 查询 表中所有字段
							theApp.m_pConnection.GetInterfacePtr(),	 // 获取库接库的IDispatch指针
							adOpenDynamic,
							adLockOptimistic,
							adCmdText);
		}
    	catch(_com_error *e)//捕获异常
		{
	    	AfxMessageBox(e->ErrorMessage());
		}
		//提示操作结果
	    MessageBox("删除成功!!!","客房管理系统");
	}
//////////////////////////////////////////////////////////
    	// 关闭记录集
//	m_pRecordsetdel->Close();
//	m_pRecordsetdel = NULL;
//    AfxMessageBox("ffffffffff!!!");
	try
		{//打开数据库
	    	m_pRecordset->Open("select * from roomsetting",                // 查询 表中所有字段
							theApp.m_pConnection.GetInterfacePtr(),	 // 获取库接库的IDispatch指针
							adOpenDynamic,
							adLockOptimistic,
							adCmdText);
		}
    catch(_com_error *e)//捕获异常
	{ 
	   AfxMessageBox(e->ErrorMessage());
	}
	m_findroom_list.DeleteAllItems();
	//////// update list view
	int i=0;
	try
	{
		if(!m_pRecordset->BOF)//判断指针是否在数据集最后
			m_pRecordset->MoveFirst();
		else
		{
			MessageBox("表内数据为空","客房管理系统");
			return ;
		}

		m_findroomdlgroomnumberctr.ResetContent();
		// read data from the database table 
		while(!m_pRecordset->adoEOF)
		{//循环读取数据,实时在列表框内显示
			//读取数据表内房间号字段数据
			var = m_pRecordset->GetCollect("房间号");
			if(var.vt != VT_NULL)
				findroom_roomnumber = (LPCSTR)_bstr_t(var);
			m_findroomdlgroomnumberctr.AddString(findroom_roomnumber);
			//在列表框内显示该字段的内容
			m_findroom_list.InsertItem(i,findroom_roomnumber.GetBuffer(50));
           //读取数据表内房间类型字段数据
			var = m_pRecordset->GetCollect("房间类型");
			if(var.vt != VT_NULL)
				findroom_roomlevel = (LPCSTR)_bstr_t(var);
			//在列表框内显示该字段的内容
			m_findroom_list.SetItemText(i,1,findroom_roomlevel.GetBuffer(50));
              //读取数据表内价格字段数据
			var = m_pRecordset->GetCollect("价格");
			if(var.vt != VT_NULL)
				findroom_roommoney = (LPCSTR)_bstr_t(var);
			//在列表框内显示该字段的内容
			m_findroom_list.SetItemText(i,2,findroom_roommoney.GetBuffer(50));
            //读取数据表内房态字段数据
			var = m_pRecordset->GetCollect("房态");
			if(var.vt != VT_NULL)
				findroom_roomstate = (LPCSTR)_bstr_t(var);
			//在列表框内显示该字段的内容
			m_findroom_list.SetItemText(i,3,findroom_roomstate.GetBuffer(50));

             //读取数据表内标志字段数据
			var = m_pRecordset->GetCollect("标志");
			if(var.vt != VT_NULL)
				findroom_roomsign = (LPCSTR)_bstr_t(var);
			//在列表框内显示该字段的内容
			m_findroom_list.SetItemText(i,4,findroom_roomsign.GetBuffer(50));
              //读取数据表内备注字段数据
			var = m_pRecordset->GetCollect("备注");
			if(var.vt != VT_NULL)
				findroom_roombeizhu = (LPCSTR)_bstr_t(var);
			//在列表框内显示该字段的内容
			m_findroom_list.SetItemText(i,5,findroom_roombeizhu.GetBuffer(50));
            //读取数据表内配置字段数据
			var = m_pRecordset->GetCollect("配置");
			if(var.vt != VT_NULL)
				findroom_roomsetting = (LPCSTR)_bstr_t(var);
			//在列表框内显示该字段的内容
			m_findroom_list.SetItemText(i,6,findroom_roomsetting.GetBuffer(50));
            //读取数据表内使用设置字段数据
			var = m_pRecordset->GetCollect("使用设置");
			if(var.vt != VT_NULL)
				findroom_roomusesetting = (LPCSTR)_bstr_t(var);
			//在列表框内显示该字段的内容
			m_findroom_list.SetItemText(i,7,findroom_roomusesetting.GetBuffer(50));
            //读取数据表内营业日期字段数据
			var = m_pRecordset->GetCollect("营业日期");
			if(var.vt != VT_NULL)
				findroom_roomusedate = (LPCSTR)_bstr_t(var);
			//在列表框内显示该字段的内容
			m_findroom_list.SetItemText(i,8,findroom_roomusedate.GetBuffer(50));

            i++;
		    //移动记录集指针
			m_pRecordset->MoveNext();
		}

		// 
		
	}
	catch(_com_error *e)
	{//捕获异常情况,实时对用户提示
		AfxMessageBox(e->ErrorMessage());
	}

	// 关闭记录集
	m_pRecordset->Close();
//	m_pRecordset = NULL;


	//更新显示内容

	UpdateData(false);
	
}

⌨️ 快捷键说明

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