📄 trade_misview.cpp
字号:
COleDateTime tOrderDate;
Holder = theApp.m_pADOSet->GetCollect("OrderDate");
if ( Holder.vt==VT_NULL ) str = "N/A";
else
{
tOrderDate = Holder;
str = tOrderDate.Format("%Y-%m-%d");
}
m_ListCtrl.SetItemText(i, 6, str);
// Get Ordermemo
Holder = theApp.m_pADOSet->GetCollect("Ordermemo");
str = Holder.vt==VT_NULL?"":(char*)(_bstr_t)Holder;
m_ListCtrl.SetItemText(i, 7, str);
theApp.m_pADOSet->MoveNext();
}
}
void CTrade_MISView::OnAlterStock()
{
// TODO: Add your command handler code here
_variant_t strQuery;
strQuery = "select * from sstock";
if ( m_ListCtrl && m_sCurrentList!=_T("进货信息列表") )
{
m_ListCtrl.DestroyWindow();
CreateStock(strQuery);
m_sCurrentList = _T("进货信息列表");
m_StaticCtrl.SetWindowText(m_sCurrentList);
return;
}
if ( !m_ListCtrl )
{
CreateStock(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
{
CStockDLG dlg;
dlg.m_bAppend = false;
CString str;
int iItem = m_ListCtrl.GetNextSelectedItem(pos);
// Get ProviderName
dlg.m_sProviderName = m_ListCtrl.GetItemText(iItem, 0);
// Get ProductName
dlg.m_sProductName = m_ListCtrl.GetItemText(iItem, 1);
// Get Spec
dlg.m_sProductSpec = m_ListCtrl.GetItemText(iItem, 2);
// Get Unit
dlg.m_sProductUnit = m_ListCtrl.GetItemText(iItem, 3);
// Get Quantity
dlg.m_sQuantity = m_ListCtrl.GetItemText(iItem, 4);
// UnitPrice
dlg.m_sPrice = m_ListCtrl.GetItemText(iItem, 5);
// Get OrderDate
_variant_t strQuery, Holder;
strQuery = "select OrderDate from sstock where ProviderName='"+dlg.m_sProviderName+"' and ProductName='"+dlg.m_sProductName+"'";
theApp.ADOExecute(theApp.m_pADOSet, strQuery);
Holder = theApp.m_pADOSet->GetCollect("OrderDate");
dlg.m_tOrderDate = Holder;
// Get Ordermemo
dlg.m_sMemo = m_ListCtrl.GetItemText(iItem, 7);
dlg.DoModal();
}
}
void CTrade_MISView::OnDelStock()
{
// TODO: Add your command handler code here
_variant_t Holder, strQuery;
strQuery = "select * from sstock";
if ( m_ListCtrl && m_sCurrentList!="进货信息列表" )
{
m_ListCtrl.DestroyWindow();
CreateStock( strQuery );
m_sCurrentList = _T("进货信息列表");
m_StaticCtrl.SetWindowText(m_sCurrentList);
return;
}
if ( !m_ListCtrl )
{
CreateStock(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 sProviderName, sProductName;
while (pos)
{
iItem = m_ListCtrl.GetNextSelectedItem(pos);
sProviderName = m_ListCtrl.GetItemText(iItem, 0);
sProductName = m_ListCtrl.GetItemText(iItem, 1);
strQuery = "delete from sstock where ProviderName='"+sProviderName+"' and ProductName='"+sProductName+"'";
theApp.ADOExecute(theApp.m_pADOSet, strQuery);
}
}
// Refresh List
strQuery = "select * from sstock";
RefreshStock( strQuery );
}
void CTrade_MISView::OnSearchStock()
{
// TODO: Add your command handler code here
_variant_t strQuery, Holder;
// Check Provider Table
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 Table
strQuery = "select * from products";
theApp.ADOExecute(theApp.m_pADOSet, strQuery);
iCount = theApp.m_pADOSet->GetRecordCount();
if (0==iCount)
{
AfxMessageBox(_T("没有商品记录,无法查询!"), MB_ICONEXCLAMATION);
return;
}
// Check if thers is any record
strQuery = "select * from sstock";
theApp.ADOExecute(theApp.m_pADOSet, strQuery);
iCount = theApp.m_pADOSet->GetRecordCount();
if (0==iCount)
{
AfxMessageBox(_T("没有进货记录,无法查询!"), MB_ICONEXCLAMATION);
return;
}
CSearchStockDLG dlg;
dlg.DoModal();
}
void CTrade_MISView::OnAddOrder()
{
// TODO: Add your command handler code here
// Check Customer
_variant_t strQuery;
strQuery = "select * from customers";
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;
}
COrderDLG dlg;
dlg.m_bAppend = true;
dlg.DoModal();
}
void CTrade_MISView::RefreshOrder(_variant_t strQuery)
{
if (m_ListCtrl) m_ListCtrl.DestroyWindow();
CreateOrder( strQuery );
m_sCurrentList = _T("销售信息列表");
m_StaticCtrl.SetWindowText(m_sCurrentList);
}
void CTrade_MISView::CreateOrder(_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);
m_ListCtrl.InsertColumn(8,_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 CustomerCompanyName
Holder = theApp.m_pADOSet->GetCollect("CustomerName");
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
COleDateTime tOrderDate;
Holder = theApp.m_pADOSet->GetCollect("OrderDate");
if ( Holder.vt==VT_NULL ) str = "N/A";
else
{
tOrderDate = Holder;
str = tOrderDate.Format("%Y-%m-%d");
}
m_ListCtrl.SetItemText(i, 6, str);
// Get Discount
Holder = theApp.m_pADOSet->GetCollect("Discount");
if ( VT_NULL==Holder.vt ) str="N/A";
else str.Format("%.2f", Holder.dblVal);
m_ListCtrl.SetItemText(i, 7, str);
// Get Ordermemo
Holder = theApp.m_pADOSet->GetCollect("Ordermemo");
str = Holder.vt==VT_NULL?"":(char*)(_bstr_t)Holder;
m_ListCtrl.SetItemText(i, 8, str);
theApp.m_pADOSet->MoveNext();
}
}
void CTrade_MISView::OnAlterOrder()
{
// TODO: Add your command handler code here
_variant_t strQuery;
strQuery = "select * from orders";
if ( m_ListCtrl && m_sCurrentList!=_T("销售信息列表") )
{
m_ListCtrl.DestroyWindow();
CreateOrder(strQuery);
m_sCurrentList = _T("销售信息列表");
m_StaticCtrl.SetWindowText(m_sCurrentList);
return;
}
if ( !m_ListCtrl )
{
CreateOrder(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
{
COrderDLG dlg;
dlg.m_bAppend = false;
CString str;
int iItem = m_ListCtrl.GetNextSelectedItem(pos);
// Get CustomerName
dlg.m_sCustomerName = m_ListCtrl.GetItemText(iItem, 0);
// Get ProductName
dlg.m_sProductName = m_ListCtrl.GetItemText(iItem, 1);
// Get Spec
dlg.m_sProductSpec = m_ListCtrl.GetItemText(iItem, 2);
// Get Unit
dlg.m_sProductUnit = m_ListCtrl.GetItemText(iItem, 3);
// Get Quantity
dlg.m_sQuantity = m_ListCtrl.GetItemText(iItem, 4);
// UnitPrice
dlg.m_sPrice = m_ListCtrl.GetItemText(iItem, 5);
// Get OrderDate
_variant_t strQuery, Holder;
strQuery = "select OrderDate from orders where CustomerName='"+dlg.m_sCustomerName+"' and ProductName='"+dlg.m_sProductName+"'";
theApp.ADOExecute(theApp.m_pADOSet, strQuery);
Holder = theApp.m_pADOSet->GetCollect("OrderDate");
dlg.m_tOrderDate = Holder;
// Dsicount
dlg.m_sDiscount = m_ListCtrl.GetItemText(iItem, 7);
// Get Ordermemo
dlg.m_sMemo = m_ListCtrl.GetItemText(iItem, 8);
dlg.DoModal();
}
}
void CTrade_MISView::OnDelOrder()
{
// TODO: Add your command handler code here
_variant_t Holder, strQuery;
strQuery = "select * from orders";
if ( m_ListCtrl && m_sCurrentList!="销售信息列表" )
{
m_ListCtrl.DestroyWindow();
CreateOrder( strQuery );
m_sCurrentList = _T("销售信息列表");
m_StaticCtrl.SetWindowText(m_sCurrentList);
return;
}
if ( !m_ListCtrl )
{
CreateOrder(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 sCustomerName, sProductName;
while (pos)
{
iItem = m_ListCtrl.GetNextSelectedItem(pos);
sCustomerName = m_ListCtrl.GetItemText(iItem, 0);
sProductName = m_ListCtrl.GetItemText(iItem, 1);
strQuery = "delete from orders where CustomerName='"+sCustomerName+"' and ProductName='"+sProductName+"'";
theApp.ADOExecute(theApp.m_pADOSet, strQuery);
}
}
// Refresh List
strQuery = "select * from orders";
RefreshOrder( strQuery );
}
void CTrade_MISView::OnSearchOrder()
{
// TODO: Add your command handler code here
_variant_t strQuery, Holder;
// Check Customers Table
strQuery = "select * from customers";
theApp.ADOExecute(theApp.m_pADOSet, strQuery);
int iCount = theApp.m_pADOSet->GetRecordCount();
if (0==iCount)
{
AfxMessageBox(_T("没有顾客记录,无法查询!"), MB_ICONEXCLAMATION);
return;
}
// Check Product Table
strQuery = "select * from products";
theApp.ADOExecute(theApp.m_pADOSet, strQuery);
iCount = theApp.m_pADOSet->GetRecordCount();
if (0==iCount)
{
AfxMessageBox(_T("没有商品记录,无法查询!"), MB_ICONEXCLAMATION);
return;
}
// Check if thers is any record
strQuery = "select * from orders";
theApp.ADOExecute(theApp.m_pADOSet, strQuery);
iCount = theApp.m_pADOSet->GetRecordCount();
if (0==iCount)
{
AfxMessageBox(_T("没有销售记录,无法查询!"), MB_ICONEXCLAMATION);
return;
}
CSearchOrderDLG dlg;
dlg.DoModal();
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -