📄 goodsmanagerdialog.cpp
字号:
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 + -