📄 goodsmanagerdialog.cpp
字号:
LPNMDATETIMECHANGE pDTChange = reinterpret_cast<LPNMDATETIMECHANGE>(pNMHDR);
OnInitGoodsManList();
*pResult = 0;
}
void CGoodsManagerDialog::OnDtnDatetimechangeDatetimepickerGoodsmanagerto(NMHDR *pNMHDR, LRESULT *pResult)
{
LPNMDATETIMECHANGE pDTChange = reinterpret_cast<LPNMDATETIMECHANGE>(pNMHDR);
OnInitGoodsManList();
*pResult = 0;
}
void CGoodsManagerDialog::OnBnClickedButtonGoodsmanager()
{
OnCancelControl();
CEdit *pEdit = (CEdit*)GetDlgItem (IDC_EDIT_GOODSMANAGERNAMEOFNAME);
pEdit->SetFocus ();
}
void CGoodsManagerDialog::OnBnClickedManagerCancel()
{
OnInitControl ();
m_BookinNum = "";
m_GoodsManRemark = "";
m_GoodsManUnits = "";
m_BookinTotalPrice = "";
m_GoodsManNowStore = "";
m_GoodsManSalePrice = "";
UpdateData(FALSE);
}
void CGoodsManagerDialog::OnBookIn()
{
_RecordsetPtr m_pRecordsetGM;
_RecordsetPtr m_pRecordsetG;
HRESULT hrG;
HRESULT hrGM;
try
{
hrGM = m_pRecordsetGM.CreateInstance (__uuidof(Recordset));
hrG = m_pRecordsetG.CreateInstance (__uuidof(Recordset));
if(FAILED(hrGM) || FAILED(hrG))
{
AfxMessageBox (_T("创建实例失败!"));
return;
}
CString GoodsName;
m_GoodsManGoodsName.GetWindowText (GoodsName);
CString strSQL;
strSQL.Format ("select * from GoodsTable where GoodsName = '%s'", GoodsName);
hrG = m_pRecordsetG->Open (_bstr_t(strSQL),
m_pConnection.GetInterfacePtr(),
adOpenDynamic,
adLockOptimistic,
adCmdText);
strSQL.Format ("select * from GoodsManagerTable where GoodsName = '%s'", GoodsName);
hrGM = m_pRecordsetGM->Open (_bstr_t(strSQL),
m_pConnection.GetInterfacePtr(),
adOpenDynamic,
adLockOptimistic,
adCmdText);
if(SUCCEEDED(hrG) && SUCCEEDED(hrGM))
{
CString Type;
m_GoodsManType.GetWindowText (Type);
if(Type == _T("进货"))
{
m_GoodsManagerList.DeleteAllItems ();
m_pRecordsetGM->AddNew ();
m_pRecordsetGM->PutCollect ("TotalNum", _variant_t(m_BookinNum));
m_pRecordsetGM->PutCollect ("Remark", _variant_t(m_GoodsManRemark));
m_pRecordsetGM->PutCollect ("Type", _variant_t(Type));
m_pRecordsetGM->PutCollect ("Units", _variant_t(m_GoodsManUnits));
m_pRecordsetGM->PutCollect ("GoodsName", _variant_t(GoodsName));
m_pRecordsetGM->PutCollect ("TotalPrice", _variant_t(m_BookinTotalPrice));
_variant_t var = m_pRecordsetG->GetCollect ("NowStore");
int NowStore = (int)_variant_t(var);
m_pRecordsetGM->PutCollect ("OldStore", _variant_t(NowStore));
NowStore += (int)_variant_t(m_BookinNum);
m_pRecordsetGM->PutCollect ("NowStore", _variant_t(NowStore));
m_pRecordsetG->PutCollect ("NowStore", _variant_t(NowStore));
m_pRecordsetGM->PutCollect ("SalePrice", _variant_t(m_GoodsManSalePrice));
m_pRecordsetGM->PutCollect ("OperatorName", _variant_t(OperatorName));
CTime time = CTime::GetCurrentTime ();
int Year = time.GetYear ();
int Month = time.GetMonth ();
int Day = time.GetDay ();
CString strData;
strData.Format ("%d-%0.2d-%0.2d", Year, Month, Day);
m_pRecordsetGM->PutCollect ("ActionData", _variant_t(strData));
int Min = time.GetMinute ();
int Hour = time.GetHour();
int Sec = time.GetSecond ();
CString strTime;
strTime.Format ("%0.2d:%0.2d:%0.2d", Hour, Min, Sec);
m_pRecordsetGM->PutCollect ("ActimeTime", _variant_t(strTime));
float BuyPrice = (float)_variant_t(m_BookinTotalPrice) /
(float)_variant_t(m_BookinNum);
m_pRecordsetG->PutCollect ("BuyPrice", _variant_t(BuyPrice));
m_pRecordsetGM->PutCollect ("BuyPrice", _variant_t(BuyPrice));
var = m_pRecordsetG->GetCollect ("WarningStore");
m_pRecordsetGM->PutCollect ("WarningStore", _variant_t(var));
m_pRecordsetGM->Update ();
m_pRecordsetG->Update ();
}//if
else if(Type == _T("修改"))
{
m_pRecordsetGM->AddNew ();
m_pRecordsetGM->PutCollect ("TotalNum", _variant_t(m_BookinNum));
m_pRecordsetGM->PutCollect ("Remark", _variant_t(m_GoodsManRemark));
m_pRecordsetGM->PutCollect ("Type", _variant_t(Type));
m_pRecordsetGM->PutCollect ("Units", _variant_t(m_GoodsManUnits));
m_pRecordsetGM->PutCollect ("GoodsName", _variant_t(GoodsName));
m_pRecordsetGM->PutCollect ("TotalPrice", _variant_t(m_BookinTotalPrice));
_variant_t var = m_pRecordsetG->GetCollect ("NowStore");
int NowStore = (int)_variant_t(var);
m_pRecordsetGM->PutCollect ("OldStore", _variant_t(NowStore));
NowStore += (int)_variant_t(m_BookinNum);
m_pRecordsetGM->PutCollect ("NowStore", _variant_t(NowStore));
m_pRecordsetG->PutCollect ("NowStore", _variant_t(NowStore));
m_pRecordsetGM->PutCollect ("SalePrice", _variant_t(m_GoodsManSalePrice));
m_pRecordsetGM->PutCollect ("OperatorName", _variant_t(OperatorName));
CTime time = CTime::GetCurrentTime ();
int Year = time.GetYear ();
int Month = time.GetMonth ();
int Day = time.GetDay ();
CString strData;
strData.Format ("%d-%0.2d-%0.2d", Year, Month, Day);
m_pRecordsetGM->PutCollect ("ActionData", _variant_t(strData));
int Min = time.GetMinute ();
int Hour = time.GetHour();
int Sec = time.GetSecond ();
CString strTime;
strTime.Format ("%0.2d:%0.2d:%0.2d", Hour, Min, Sec);
m_pRecordsetGM->PutCollect ("ActimeTime", _variant_t(strTime));
float BuyPrice = ((float)_variant_t(m_BookinTotalPrice)) /NowStore;
m_pRecordsetG->PutCollect ("BuyPrice", _variant_t(BuyPrice));
m_pRecordsetGM->PutCollect ("BuyPrice", _variant_t(BuyPrice));
var = m_pRecordsetG->GetCollect ("WarningStore");
m_pRecordsetGM->PutCollect ("WarningStore", _variant_t(var));
m_pRecordsetGM->Update ();
m_pRecordsetG->Update ();
}
m_pRecordsetGM->Close ();
m_pRecordsetG->Close ();
m_pRecordsetGM = NULL;
m_pRecordsetG = NULL;
m_Succeed = TRUE;
}
}
catch(_com_error &e)
{
AfxMessageBox (e.ErrorMessage());
return;
}
}
void CGoodsManagerDialog::OnBnClickedManagerOk()
{
UpdateData(TRUE);
if(m_BookinNum == "")
{
MessageBox (_T("登记数量不能为空!"), _T("商品管理"), MB_ICONERROR | MB_OK);
CEdit *pEdit = (CEdit*)GetDlgItem (IDC_EDIT_MANAGERGOODSNUM);
return;
}
CString strValue;
m_GoodsManType.GetWindowText (strValue);
if(strValue == "")
{
MessageBox (_T("类型不能为空!"), _T("存货管理"), MB_ICONERROR | MB_OK);
return;
}
m_GoodsManType.GetWindowText (strValue);
if(strValue == "")
{
MessageBox (_T("商品名称不能为空!"), _T("存货管理"), MB_ICONERROR | MB_OK);
m_GoodsManGoodsName.SetFocus ();
return;
}
if(m_BookinTotalPrice == "")
{
MessageBox (_T("登记总价输入错误!"), _T("存货管理"), MB_ICONERROR | MB_OK);
CEdit *pEdit = (CEdit*) GetDlgItem (IDC_EDIT_GOODSMANAGER_TOTALPRICE);
pEdit->SetFocus ();
return;
}
OnBookIn();
if(m_Succeed)
{
OnInitGoodsManList();
MessageBox (_T("添加进货成功!"), _T("存货管理"), MB_ICONASTERISK | MB_OK);
m_BookinNum = "";
m_GoodsManRemark = "";
m_GoodsManUnits = "";
m_BookinTotalPrice = "";
m_GoodsManNowStore = "";
m_GoodsManSalePrice = "";
UpdateData(FALSE);
OnInitControl ();
m_Succeed = FALSE;
}
}
void CGoodsManagerDialog::OnCbnSelchangeComboGoodsmanagerGoodsname()
{
_RecordsetPtr m_pRecordsetG;
HRESULT hrG;
try
{
hrG = m_pRecordsetG.CreateInstance (__uuidof(Recordset));
if(FAILED(hrG))
{
AfxMessageBox(_T("创建实例失败!"));
return;
}
CString strSQL , GoodsName;
m_GoodsManGoodsName.GetWindowText (GoodsName);
strSQL.Format ("select * from GoodsTable where GoodsName = '%s'", GoodsName);
hrG = m_pRecordsetG->Open (_bstr_t(strSQL),
m_pConnection.GetInterfacePtr(),
adOpenDynamic,
adLockOptimistic,
adCmdText);
if(SUCCEEDED(hrG))
{
_variant_t var;
CString strValue;
if(!m_pRecordsetG->adoEOF)
{
var = m_pRecordsetG->GetCollect ("NowStore");
m_GoodsManNowStore = (LPCSTR)_bstr_t(var);
var = m_pRecordsetG->GetCollect ("SalePrice");
m_GoodsManSalePrice = (LPCSTR)_bstr_t(var);
var = m_pRecordsetG->GetCollect ("Units");
m_GoodsManUnits = (LPCSTR)_bstr_t(var);
UpdateData(FALSE);
}
m_pRecordsetG->Close ();
m_pRecordsetG = NULL;
}
}
catch(_com_error &e)
{
AfxMessageBox (e.ErrorMessage());
return;
}
}
void CGoodsManagerDialog::OnEnChangeEditGoodsmanagernameofname()
{
UpdateData (TRUE);
int Count = m_GoodsManNameofName.GetLength ();
if(Count <1 )
return;
CTime timeFrom , timeTo;
m_GoodsManagerTimeFrom.GetTime (timeFrom);
m_GoodsManagerTimeTo.GetTime (timeTo);
if(timeFrom.GetMonth () > timeTo.GetMonth ())
return;
if(timeFrom.GetMonth () == timeTo.GetMonth ())
if(timeFrom.GetDay () > timeTo.GetDay ())
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(""))
{
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);
m_GoodsManagerList.DeleteAllItems();
if(SUCCEEDED(hrGM))
{
_variant_t var;
CString strValue;
m_IndexList = 0;
while(!m_pRecordsetGM->adoEOF)
{
var = m_pRecordsetGM->GetCollect ("ActionData");
strValue = (LPCSTR)_bstr_t(var);
m_GoodsManagerList.InsertItem (m_IndexList, strValue);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -