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

📄 goodsmanagerdialog.cpp

📁 VC+SQL SERVER 2000环境下开发的商品销售管理系统
💻 CPP
📖 第 1 页 / 共 3 页
字号:
				var = m_pRecordsetGM->GetCollect ("ActimeTime");
				strValue = (LPCSTR)_bstr_t(var);
				m_GoodsManagerList.SetItemText (m_IndexList, 1, strValue);

				var = m_pRecordsetGM->GetCollect ("OperatorName");
				strValue = (LPCSTR)_bstr_t(var);
				m_GoodsManagerList.SetItemText (m_IndexList, 2, strValue);

				var = m_pRecordsetGM->GetCollect ("Type");
                strValue = (LPCSTR)_bstr_t(var);
				m_GoodsManagerList.SetItemText (m_IndexList, 3, strValue);

				var = m_pRecordsetGM->GetCollect ("GoodsName");
				strValue = (LPCSTR)_bstr_t(var);
				m_GoodsManagerList.SetItemText (m_IndexList, 4, strValue);

				var = m_pRecordsetGM->GetCollect ("OldStore");
				strValue = (LPCSTR)_bstr_t(var);
                m_GoodsManagerList.SetItemText (m_IndexList, 5, strValue);

				var = m_pRecordsetGM->GetCollect ("BuyPrice");
				strValue = (LPCSTR)_bstr_t(var);
                m_GoodsManagerList.SetItemText (m_IndexList, 6, strValue);

				var = m_pRecordsetGM->GetCollect ("TotalNum");
				strValue = (LPCSTR)_bstr_t(var);
				m_GoodsManagerList.SetItemText (m_IndexList, 7, strValue);;

				var = m_pRecordsetGM->GetCollect ("TotalPrice");
				strValue = (LPCSTR)_bstr_t(var);
                m_GoodsManagerList.SetItemText (m_IndexList, 8, strValue);

				var = m_pRecordsetGM->GetCollect ("Remark");
                strValue = (LPCSTR)_bstr_t(var);
                m_GoodsManagerList.SetItemText (m_IndexList, 9, strValue);

				m_IndexList++;
				m_pRecordsetGM->MoveNext ();
			}

			m_pRecordsetGM->Close ();
			m_pRecordsetGM = NULL;
		}                         
	}
	catch(_com_error &e)
	{
		AfxMessageBox(e.ErrorMessage ());
		return;
	}
}

void CGoodsManagerDialog::OnBnClickedButtonGoodsmanlisttoexcel()
{
    CTime timeFrom , timeTo;
	m_GoodsManagerTimeFrom.GetTime (timeFrom);
	m_GoodsManagerTimeTo.GetTime (timeTo);
	char strDirectory[100];
	memset(strDirectory,0,100);
	GetCurrentDirectory(100,strDirectory);

	if(timeFrom.GetMonth () > timeTo.GetMonth ())
	{
		MessageBox (_T("选择日期错误"), _T("存货管理"), MB_ICONERROR | MB_OK);
		return;
	}

	if(timeFrom.GetMonth () == timeTo.GetMonth ())
		if(timeFrom.GetDay () > timeTo.GetDay ())
		{
			MessageBox (_T("选择日期错误"), _T("存货管理"), MB_ICONERROR | MB_OK);
			return;
		}

	CString strDataFrom, strDataTo, OperatorName;
	m_GoodsManagerTimeFrom.GetWindowText (strDataFrom);
	m_GoodsManagerTimeTo.GetWindowText (strDataTo);
	m_GoodsManagerOperate.GetWindowText (OperatorName);

	HRESULT         hrGM;
	_RecordsetPtr   m_pRecordsetGM;
	try 
	{
		hrGM = m_pRecordsetGM.CreateInstance (__uuidof(Recordset));
		if(FAILED(hrGM))
		{
			AfxMessageBox (_T("创建实例失败!"));
			return;
		}

		CString strSQL;
		if(OperatorName != _T("") && m_GoodsManNameofName!= _T("")) 
		{ 
			strSQL.Format ("select * from GoodsManagerTable where ActionData >= '%s' and ActionData <='%s'\
		                 and OperatorName = '%s'", strDataFrom, strDataTo , OperatorName);
            strSQL += _T(" and GoodsName like ");
			strSQL += _T("'%");
			strSQL += m_GoodsManNameofName;
            strSQL += _T("%'");
		}
		else if(OperatorName == _T("") && m_GoodsManNameofName!= _T(""))
		{
			strSQL.Format ("select * from GoodsManagerTable where ActionData >= '%s' and ActionData <='%s'"
			               , strDataFrom, strDataTo);
			strSQL += _T(" and GoodsName like ");
			strSQL += _T("'%");
			strSQL += m_GoodsManNameofName;
            strSQL += _T("%'");
		}
		else if(OperatorName != _T("")) 
		{ 
			strSQL.Format ("select * from GoodsManagerTable where ActionData >= '%s' and ActionData <='%s'\
		                 and OperatorName = '%s'", strDataFrom, strDataTo , OperatorName);
            strSQL += _T(" and GoodsName like ");
			strSQL += _T("'%");
			strSQL += m_GoodsManNameofName;
            strSQL += _T("%'");
		}
		else
		{
			strSQL.Format ("select * from GoodsManagerTable where ActionData >= '%s' and ActionData <='%s'"
			               , strDataFrom, strDataTo);
			strSQL += _T(" and GoodsName like ");
			strSQL += _T("'%");
			strSQL += m_GoodsManNameofName;
            strSQL += _T("%'");
		}

		hrGM = m_pRecordsetGM->Open (_bstr_t(strSQL),
			                        m_pConnection.GetInterfacePtr(),
									adOpenDynamic,
									adLockOptimistic,
									adCmdText);
		if(m_pRecordsetGM->adoEOF)
		{
			MessageBox (_T("没有任何数据,不能导出!"), _T("存货管理"), MB_ICONERROR | MB_OK);
			m_pRecordsetGM->Close ();
			m_pRecordsetGM = NULL;
			return;
		}
	}
	catch(_com_error &e)
	{
		AfxMessageBox(e.ErrorMessage());
		return;
	}

	m_pRecordsetGM->Close ();
	m_pRecordsetGM = NULL;

	CFileDialog dlg (FALSE, _T ("xls"), m_strPathName,
        OFN_OVERWRITEPROMPT | OFN_PATHMUSTEXIST | OFN_HIDEREADONLY,
        m_szFilters );

    if (dlg.DoModal () == IDOK)
        if (SaveFile (dlg.GetPathName ()))
		{ m_strPathName = dlg.GetPathName ();
	      MessageBox(_T("导出信息成功!"), _T("存货管理"), MB_ICONASTERISK  | MB_OK);
		}
	SetCurrentDirectory(strDirectory);
}


BOOL CGoodsManagerDialog:: SaveFile(LPCTSTR pszFile)
{
    BOOL bResult = FALSE;

    CTime timeFrom , timeTo;
	m_GoodsManagerTimeFrom.GetTime (timeFrom);
	m_GoodsManagerTimeTo.GetTime (timeTo);

	if(timeFrom.GetMonth () > timeTo.GetMonth ())
	{
		MessageBox (_T("选择日期错误"), _T("存货管理"), MB_ICONERROR | MB_OK);
		return bResult;
	}

	if(timeFrom.GetMonth () == timeTo.GetMonth ())
		if(timeFrom.GetDay () > timeTo.GetDay ())
		{
			MessageBox (_T("选择日期错误"), _T("存货管理"), MB_ICONERROR | MB_OK);
			return bResult;
		}

	CString strDataFrom, strDataTo, OperatorName;
	m_GoodsManagerTimeFrom.GetWindowText (strDataFrom);
	m_GoodsManagerTimeTo.GetWindowText (strDataTo);
	m_GoodsManagerOperate.GetWindowText (OperatorName);

	try 
	{
        HRESULT         hrGM;
	    _RecordsetPtr   m_pRecordsetGM;

		hrGM = m_pRecordsetGM.CreateInstance (__uuidof(Recordset));
		if(FAILED(hrGM))
		{
			AfxMessageBox (_T("创建实例失败!"));
			return bResult;
		}

		CString strSQL;
		if(OperatorName != _T("") && m_GoodsManNameofName!= _T("")) 
		{ 
			strSQL.Format ("select * from GoodsManagerTable where ActionData >= '%s' and ActionData <='%s'\
		                 and OperatorName = '%s'", strDataFrom, strDataTo , OperatorName);
            strSQL += _T(" and GoodsName like ");
			strSQL += _T("'%");
			strSQL += m_GoodsManNameofName;
            strSQL += _T("%'");
		}
		else if(OperatorName == _T("") && m_GoodsManNameofName!= _T(""))
		{
			strSQL.Format ("select * from GoodsManagerTable where ActionData >= '%s' and ActionData <='%s'"
			               , strDataFrom, strDataTo);
			strSQL += _T(" and GoodsName like ");
			strSQL += _T("'%");
			strSQL += m_GoodsManNameofName;
            strSQL += _T("%'");
		}
		else if(OperatorName != _T("")) 
		{ 
			strSQL.Format ("select * from GoodsManagerTable where ActionData >= '%s' and ActionData <='%s'\
		                 and OperatorName = '%s'", strDataFrom, strDataTo , OperatorName);
            strSQL += _T(" and GoodsName like ");
			strSQL += _T("'%");
			strSQL += m_GoodsManNameofName;
            strSQL += _T("%'");
		}
		else
		{
			strSQL.Format ("select * from GoodsManagerTable where ActionData >= '%s' and ActionData <='%s'"
			               , strDataFrom, strDataTo);
			strSQL += _T(" and GoodsName like ");
			strSQL += _T("'%");
			strSQL += m_GoodsManNameofName;
            strSQL += _T("%'");
		}

		hrGM = m_pRecordsetGM->Open (_bstr_t(strSQL),
			                        m_pConnection.GetInterfacePtr(),
									adOpenDynamic,
									adLockOptimistic,
									adCmdText);

		CStdioFile file (pszFile, CFile::modeWrite | CFile::modeCreate);
		
		if(!m_pRecordsetGM->adoEOF)
		{
			CString string;
			CString tempstring;
			
			string += _T("登记日期");
			string += '\t';
			string += _T("时间");
			string += '\t';
            string += _T("操作员");
			string += '\t';
	        string += _T("类型");
			string += '\t';
            string +=_T("货品名称");
			string += '\t';
            string += _T("当前存量");
			string += '\t';
			string += _T("记前单价");
			string += '\t';
			string += _T("登记数量");
			string += '\t';
			string += _T("登记总价");
			string += '\t';
			string += _T("登记备注");
			string += '\t';
			string += '\n';

			file.WriteString(string);

			_variant_t var;
			CString    strValue;
			m_IndexList = 0;

			m_GoodsManagerList.DeleteAllItems ();
			while(!m_pRecordsetGM->adoEOF)
			{
				string ="";
				var = m_pRecordsetGM->GetCollect ("ActionData");
				strValue = (LPCSTR)_bstr_t(var);
				m_GoodsManagerList.InsertItem (m_IndexList, strValue);
				string += strValue;
				string += '\t';

				var = m_pRecordsetGM->GetCollect ("ActimeTime");
				strValue = (LPCSTR)_bstr_t(var);
				m_GoodsManagerList.SetItemText (m_IndexList, 1, strValue);
				string += strValue;
				string += '\t';

				var = m_pRecordsetGM->GetCollect ("OperatorName");
				strValue = (LPCSTR)_bstr_t(var);
				m_GoodsManagerList.SetItemText (m_IndexList, 2, strValue);
				string += strValue;
				string += '\t';

				var = m_pRecordsetGM->GetCollect ("Type");
                strValue = (LPCSTR)_bstr_t(var);
				m_GoodsManagerList.SetItemText (m_IndexList, 3, strValue);
				string += strValue;
				string += '\t';

				var = m_pRecordsetGM->GetCollect ("GoodsName");
				strValue = (LPCSTR)_bstr_t(var);
				m_GoodsManagerList.SetItemText (m_IndexList, 4, strValue);
				string += strValue;
				string += '\t';

				var = m_pRecordsetGM->GetCollect ("OldStore");
				strValue = (LPCSTR)_bstr_t(var);
                m_GoodsManagerList.SetItemText (m_IndexList, 5, strValue);
				string += strValue;
				string += '\t';

				var = m_pRecordsetGM->GetCollect ("BuyPrice");
				strValue = (LPCSTR)_bstr_t(var);
                m_GoodsManagerList.SetItemText (m_IndexList, 6, strValue);
				string += strValue;
				string += '\t';

				var = m_pRecordsetGM->GetCollect ("TotalNum");
				strValue = (LPCSTR)_bstr_t(var);
				m_GoodsManagerList.SetItemText (m_IndexList, 7, strValue);
				string += strValue;
				string += '\t';

				var = m_pRecordsetGM->GetCollect ("TotalPrice");
				strValue = (LPCSTR)_bstr_t(var);
                m_GoodsManagerList.SetItemText (m_IndexList, 8, strValue);
				string += strValue;
				string += '\t';

				var = m_pRecordsetGM->GetCollect ("Remark");
                strValue = (LPCSTR)_bstr_t(var);
                m_GoodsManagerList.SetItemText (m_IndexList, 9, strValue);
				string += strValue;
				string += '\t';

				m_IndexList++;
				string += '\n';
				file.WriteString(string);
				m_pRecordsetGM->MoveNext ();
			}//while

			m_pRecordsetGM->Close ();
			m_pRecordsetGM = NULL;
		}
		bResult = TRUE;
	}
	catch (CFileException* e) 
	{
		e->ReportError ();
		e->Delete ();
		return  bResult;
	}
	catch (_com_error &e)
	{
		AfxMessageBox (e.ErrorMessage());
		return bResult;
	}
    return bResult;
}

⌨️ 快捷键说明

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