📄 trade_misview.cpp
字号:
// Get CompanyName
Holder = theApp.m_pADOSet->GetCollect("CompanyName");
str = Holder.vt==VT_NULL?"":(char*)(_bstr_t)Holder;
m_ListCtrl.InsertItem(i, str);
// Get ContactName
Holder = theApp.m_pADOSet->GetCollect("ContactName");
str = Holder.vt==VT_NULL?"":(char*)(_bstr_t)Holder;
m_ListCtrl.SetItemText(i, 1, str);
// Get Address
Holder = theApp.m_pADOSet->GetCollect("Address");
str = Holder.vt==VT_NULL?"":(char*)(_bstr_t)Holder;
m_ListCtrl.SetItemText(i, 2, str);
// Get City
Holder = theApp.m_pADOSet->GetCollect("City");
str = Holder.vt==VT_NULL?"":(char*)(_bstr_t)Holder;
m_ListCtrl.SetItemText(i, 3, str);
// Get Region
Holder = theApp.m_pADOSet->GetCollect("Region");
str = Holder.vt==VT_NULL?"":(char*)(_bstr_t)Holder;
m_ListCtrl.SetItemText(i, 4, str);
// Get PostalCode
Holder = theApp.m_pADOSet->GetCollect("PostalCode");
str = Holder.vt==VT_NULL?"":(char*)(_bstr_t)Holder;
m_ListCtrl.SetItemText(i, 5, str);
// Get Phone
Holder = theApp.m_pADOSet->GetCollect("Phone");
str = Holder.vt==VT_NULL?"":(char*)(_bstr_t)Holder;
m_ListCtrl.SetItemText(i, 6, str);
// Get Fax
Holder = theApp.m_pADOSet->GetCollect("Fax");
str = Holder.vt==VT_NULL?"":(char*)(_bstr_t)Holder;
m_ListCtrl.SetItemText(i, 7, str);
// Get HomePage
Holder = theApp.m_pADOSet->GetCollect("HomePage");
str = Holder.vt==VT_NULL?"":(char*)(_bstr_t)Holder;
m_ListCtrl.SetItemText(i, 8, str);
// Get Memo
Holder = theApp.m_pADOSet->GetCollect("CustomerMemo");
str = Holder.vt==VT_NULL?"":(char*)(_bstr_t)Holder;
m_ListCtrl.SetItemText(i, 9, str);
theApp.m_pADOSet->MoveNext();
}
}
void CTrade_MISView::OnAlterCustomer()
{
// TODO: Add your command handler code here
_variant_t strQuery;
strQuery = "select * from customers";
if ( m_ListCtrl && m_sCurrentList!=_T("顾客信息列表") )
{
m_ListCtrl.DestroyWindow();
CreateCustomer(strQuery);
m_sCurrentList = _T("顾客信息列表");
m_StaticCtrl.SetWindowText(m_sCurrentList);
return;
}
if ( !m_ListCtrl )
{
CreateCustomer(strQuery);
m_sCurrentList = _T("顾客信息列表");
m_StaticCtrl.SetWindowText(m_sCurrentList);
return;
}
//Popup Alter Dialog
POSITION pos = m_ListCtrl.GetFirstSelectedItemPosition();
if (pos == NULL) AfxMessageBox(_T("没有选中的记录!"), MB_ICONEXCLAMATION);
else
{
CCustomerDLG dlg;
dlg.m_bAppend = false;
CString str;
int iItem = m_ListCtrl.GetNextSelectedItem(pos);
// Get CompanyName
dlg.m_sCompany = m_ListCtrl.GetItemText(iItem, 0);
// Get ContactName
dlg.m_sPerson = m_ListCtrl.GetItemText(iItem, 1);
// Get Address
dlg.m_sAddress = m_ListCtrl.GetItemText(iItem, 2);
// Get City
dlg.m_sCity = m_ListCtrl.GetItemText(iItem, 3);
// Get Region
dlg.m_sArea = m_ListCtrl.GetItemText(iItem, 4);
// Get PostalCode
dlg.m_sPostCode = m_ListCtrl.GetItemText(iItem, 5);
// Get Phone
dlg.m_sPhone = m_ListCtrl.GetItemText(iItem, 6);
// Get Fax
dlg.m_sFax = m_ListCtrl.GetItemText(iItem, 7);
// Get HomePage
dlg.m_sHomePage = m_ListCtrl.GetItemText(iItem, 8);
// Get Memo
dlg.m_sMemo = m_ListCtrl.GetItemText(iItem, 9);
dlg.DoModal();
}
}
void CTrade_MISView::OnDelCustomer()
{
// TODO: Add your command handler code here
_variant_t Holder, strQuery;
strQuery = "select * from customers";
if ( m_ListCtrl && m_sCurrentList!="顾客信息列表" )
{
m_ListCtrl.DestroyWindow();
CreateCustomer( strQuery );
m_sCurrentList = _T("顾客信息列表");
m_StaticCtrl.SetWindowText(m_sCurrentList);
return;
}
if ( !m_ListCtrl )
{
CreateCustomer(strQuery);
m_sCurrentList = _T("顾客信息列表");
m_StaticCtrl.SetWindowText(m_sCurrentList);
return;
}
// Del Records
POSITION pos = m_ListCtrl.GetFirstSelectedItemPosition();
if ( pos == NULL )
{
AfxMessageBox(_T("没有选中的记录!"), MB_ICONEXCLAMATION);
return;
}
else
{
int iItem;
CString sCompany;
while (pos)
{
iItem = m_ListCtrl.GetNextSelectedItem(pos);
sCompany = m_ListCtrl.GetItemText(iItem, 0);
strQuery = "delete from customers where CompanyName='"+sCompany+"'";
theApp.ADOExecute(theApp.m_pADOSet, strQuery);
}
}
// Refresh List
strQuery = "select * from customers";
RefreshCustomer( strQuery );
}
void CTrade_MISView::OnSearchCustomer()
{
// TODO: Add your command handler code here
// Check if thers is any record
_variant_t strQuery, Holder;
strQuery = "select DISTINCT City from customers";
theApp.ADOExecute(theApp.m_pADOSet, strQuery);
int iCount = theApp.m_pADOSet->GetRecordCount();
if (0==iCount)
{
AfxMessageBox(_T("数据库没有记录,无法查询!"), MB_ICONEXCLAMATION);
return;
}
// Popup Dialog
CSearchCustomerDLG dlg;
dlg.DoModal();
}
void CTrade_MISView::OnAddProduct()
{
// TODO: Add your command handler code here
CProductDLG dlg;
dlg.m_bAppend = true;
dlg.DoModal();
}
void CTrade_MISView::RefreshProduct(_variant_t strQuery)
{
if (m_ListCtrl) m_ListCtrl.DestroyWindow();
CreateProduct( strQuery );
m_sCurrentList = _T("商品信息列表");
m_StaticCtrl.SetWindowText(m_sCurrentList);
}
void CTrade_MISView::CreateProduct(_variant_t strQuery)
{
// Get Client Rect
CRect rect;
GetClientRect(rect);
rect.top += 30;
// Create
m_ListCtrl.Create(WS_CHILD|WS_VISIBLE|WS_BORDER|LVS_REPORT, rect, this, 1);
// Set Color
m_ListCtrl.SetBkColor(RGB(177, 151, 240));
m_ListCtrl.SetTextColor(RGB(0,0,0));
m_ListCtrl.SetTextBkColor(RGB(177, 151, 240));
// Set EX-Style
m_ListCtrl.SetExtendedStyle(LVS_EX_FULLROWSELECT|LVS_EX_GRIDLINES|LVS_EX_HEADERDRAGDROP);
// Create Header
m_ListCtrl.InsertColumn(0,_T("商品名称"), LVCFMT_LEFT, 100);
m_ListCtrl.InsertColumn(1,_T("商品规格"), LVCFMT_LEFT, 100);
m_ListCtrl.InsertColumn(2,_T("计量单位"), LVCFMT_LEFT, 100);
m_ListCtrl.InsertColumn(3,_T("备注信息"), LVCFMT_LEFT, 100);
// Get all records
_variant_t Holder;
theApp.ADOExecute(theApp.m_pADOSet, strQuery);
int iCount = theApp.m_pADOSet->GetRecordCount();
if ( 0==iCount ) return;
CString str;
COleDateTime time;
theApp.m_pADOSet->MoveFirst();
for(int i=0; i<iCount; i++)
{
// Get ProductName
Holder = theApp.m_pADOSet->GetCollect("ProductName");
str = Holder.vt==VT_NULL?"":(char*)(_bstr_t)Holder;
m_ListCtrl.InsertItem(i, str);
// Get Spec
Holder = theApp.m_pADOSet->GetCollect("Spec");
str = Holder.vt==VT_NULL?"":(char*)(_bstr_t)Holder;
m_ListCtrl.SetItemText(i, 1, str);
// Get Unit
Holder = theApp.m_pADOSet->GetCollect("Unit");
str = Holder.vt==VT_NULL?"":(char*)(_bstr_t)Holder;
m_ListCtrl.SetItemText(i, 2, str);
// Get Productmemo
Holder = theApp.m_pADOSet->GetCollect("Productmemo");
str = Holder.vt==VT_NULL?"":(char*)(_bstr_t)Holder;
m_ListCtrl.SetItemText(i, 3, str);
theApp.m_pADOSet->MoveNext();
}
}
void CTrade_MISView::OnuAlterProduct()
{
// TODO: Add your command handler code here
_variant_t strQuery;
strQuery = "select * from products";
if ( m_ListCtrl && m_sCurrentList!=_T("商品信息列表") )
{
m_ListCtrl.DestroyWindow();
CreateProduct(strQuery);
m_sCurrentList = _T("商品信息列表");
m_StaticCtrl.SetWindowText(m_sCurrentList);
return;
}
if ( !m_ListCtrl )
{
CreateProduct(strQuery);
m_sCurrentList = _T("商品信息列表");
m_StaticCtrl.SetWindowText(m_sCurrentList);
return;
}
//Popup Alter Dialog
POSITION pos = m_ListCtrl.GetFirstSelectedItemPosition();
if (pos == NULL) AfxMessageBox(_T("没有选中的记录!"), MB_ICONEXCLAMATION);
else
{
CProductDLG dlg;
dlg.m_bAppend = false;
CString str;
int iItem = m_ListCtrl.GetNextSelectedItem(pos);
// Get Name
dlg.m_sName = m_ListCtrl.GetItemText(iItem, 0);
// Get Spec
dlg.m_sSpec = m_ListCtrl.GetItemText(iItem, 1);
// Get Unit
dlg.m_sUnit = m_ListCtrl.GetItemText(iItem, 2);
// Get Memo
dlg.m_sMemo = m_ListCtrl.GetItemText(iItem, 3);
dlg.DoModal();
}
}
void CTrade_MISView::OnDelProduct()
{
// TODO: Add your command handler code here
_variant_t Holder, strQuery;
strQuery = "select * from products";
if ( m_ListCtrl && m_sCurrentList!="商品信息列表" )
{
m_ListCtrl.DestroyWindow();
CreateProduct( strQuery );
m_sCurrentList = _T("商品信息列表");
m_StaticCtrl.SetWindowText(m_sCurrentList);
return;
}
if ( !m_ListCtrl )
{
CreateProduct(strQuery);
m_sCurrentList = _T("商品信息列表");
m_StaticCtrl.SetWindowText(m_sCurrentList);
return;
}
// Del Records
POSITION pos = m_ListCtrl.GetFirstSelectedItemPosition();
if ( pos == NULL )
{
AfxMessageBox(_T("没有选中的记录!"), MB_ICONEXCLAMATION);
return;
}
else
{
int iItem;
CString sName;
while (pos)
{
iItem = m_ListCtrl.GetNextSelectedItem(pos);
sName = m_ListCtrl.GetItemText(iItem, 0);
strQuery = "delete from products where ProductName='"+sName+"'";
theApp.ADOExecute(theApp.m_pADOSet, strQuery);
}
}
// Refresh List
strQuery = "select * from products";
RefreshProduct( strQuery );
}
void CTrade_MISView::OnAddStock()
{
// TODO: Add your command handler code here
// Check Provider
_variant_t strQuery;
strQuery = "select * from suppliers";
theApp.ADOExecute(theApp.m_pADOSet, strQuery);
int iCount = theApp.m_pADOSet->GetRecordCount();
if ( 0==iCount )
{
AfxMessageBox(_T("请先设置供应商信息!"), MB_ICONEXCLAMATION);
return;
}
// Check Product
strQuery = "select * from products";
theApp.ADOExecute(theApp.m_pADOSet, strQuery);
iCount = theApp.m_pADOSet->GetRecordCount();
if ( 0==iCount )
{
AfxMessageBox(_T("请先设置商品信息!"), MB_ICONEXCLAMATION);
return;
}
CStockDLG dlg;
dlg.m_bAppend = true;
dlg.DoModal();
}
void CTrade_MISView::RefreshStock(_variant_t strQuery)
{
if (m_ListCtrl) m_ListCtrl.DestroyWindow();
CreateStock( strQuery );
m_sCurrentList = _T("进货信息列表");
m_StaticCtrl.SetWindowText(m_sCurrentList);
}
void CTrade_MISView::CreateStock(_variant_t strQuery)
{
// Get Client Rect
CRect rect;
GetClientRect(rect);
rect.top += 30;
// Create
m_ListCtrl.Create(WS_CHILD|WS_VISIBLE|WS_BORDER|LVS_REPORT, rect, this, 1);
// Set Color
m_ListCtrl.SetBkColor(RGB(177, 151, 240));
m_ListCtrl.SetTextColor(RGB(0,0,0));
m_ListCtrl.SetTextBkColor(RGB(177, 151, 240));
// Set EX-Style
m_ListCtrl.SetExtendedStyle(LVS_EX_FULLROWSELECT|LVS_EX_GRIDLINES|LVS_EX_HEADERDRAGDROP);
// Create Header
m_ListCtrl.InsertColumn(0,_T("进货商公司名称"), LVCFMT_LEFT, 100);
m_ListCtrl.InsertColumn(1,_T("商品名称"), LVCFMT_LEFT, 100);
m_ListCtrl.InsertColumn(2,_T("商品规格"), LVCFMT_LEFT, 100);
m_ListCtrl.InsertColumn(3,_T("计量单位"), LVCFMT_LEFT, 100);
m_ListCtrl.InsertColumn(4,_T("数量"), LVCFMT_LEFT, 100);
m_ListCtrl.InsertColumn(5,_T("单价"), LVCFMT_LEFT, 100);
m_ListCtrl.InsertColumn(6,_T("进货日期"), LVCFMT_LEFT, 100);
m_ListCtrl.InsertColumn(7,_T("备注"), LVCFMT_LEFT, 100);
// Get all records
_variant_t Holder;
theApp.ADOExecute(theApp.m_pADOSet, strQuery);
int iCount = theApp.m_pADOSet->GetRecordCount();
if ( 0==iCount ) return;
CString str;
COleDateTime time;
theApp.m_pADOSet->MoveFirst();
for(int i=0; i<iCount; i++)
{
// Get ProviderCompanyName
Holder = theApp.m_pADOSet->GetCollect("ProviderName");
str = Holder.vt==VT_NULL?"":(char*)(_bstr_t)Holder;
m_ListCtrl.InsertItem(i, str);
// Get ProductName
Holder = theApp.m_pADOSet->GetCollect("ProductName");
str = Holder.vt==VT_NULL?"":(char*)(_bstr_t)Holder;
m_ListCtrl.SetItemText(i, 1, str);
// Get Spec
Holder = theApp.m_pADOSet->GetCollect("Spec");
str = Holder.vt==VT_NULL?"":(char*)(_bstr_t)Holder;
m_ListCtrl.SetItemText(i, 2, str);
// Get Unit
Holder = theApp.m_pADOSet->GetCollect("Unit");
str = Holder.vt==VT_NULL?"":(char*)(_bstr_t)Holder;
m_ListCtrl.SetItemText(i, 3, str);
// Get Quantity
Holder = theApp.m_pADOSet->GetCollect("Quantity");
str = Holder.vt==VT_NULL?"":(char*)(_bstr_t)Holder;
m_ListCtrl.SetItemText(i, 4, str);
// Get UnitPrice
Holder = theApp.m_pADOSet->GetCollect("UnitPrice");
if ( VT_NULL==Holder.vt ) str="N/A";
else str.Format("%.2f", Holder.dblVal);
m_ListCtrl.SetItemText(i, 5, str);
// Get OrderDate
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -