📄 sstockifdlg.cpp
字号:
// SstockifDlg.cpp : implementation file
//
#include "stdafx.h"
#include "WinNerComputers.h"
#include "SstockifDlg.h"
#include "SstockifSet.h"
#include "Sstockif_CXDlg.h"
#include "Sstockif_TJDlg.h"
#include "Sstockif_XGDlg.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// CSstockifDlg dialog
CSstockifDlg::CSstockifDlg(CWnd* pParent /*=NULL*/)
: CDialog(CSstockifDlg::IDD, pParent)
{
//{{AFX_DATA_INIT(CSstockifDlg)
// NOTE: the ClassWizard will add member initialization here
m_pSet = NULL;
//
//}}AFX_DATA_INIT
}
void CSstockifDlg::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CSstockifDlg)
DDX_Control(pDX, IDC_LIST1, m_list);
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(CSstockifDlg, CDialog)
//{{AFX_MSG_MAP(CSstockifDlg)
ON_BN_CLICKED(IDC_SHUAXIN, OnShuaxin)
ON_BN_CLICKED(IDC_CHAXUN, OnChaxun)
ON_BN_CLICKED(IDC_TIANJIA, OnTianjia)
ON_BN_CLICKED(IDC_XIUGAI, OnXiugai)
ON_BN_CLICKED(IDC_SHANCHU, OnShanchu)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CSstockifDlg message handlers
void CSstockifDlg::Sstock(CString S)
{
m_list.DeleteAllItems(); //清空
m_pSet = new CSstockifSet(); //定义一个对象
m_pSet->m_strFilter = S;
m_pSet->m_strFilter = m_sFilter;
m_pSet->Open(); //打开数据表
if (!m_pSet->IsEOF())
{
m_pSet->MoveFirst(); //指向第一列
}
int Intem = 0;
while (!m_pSet->IsEOF())
{
CString str;
Intem = m_list.InsertItem(Intem,m_pSet->m_StochId);//插入第一项
m_list.SetItemText(Intem,1,m_pSet->m_ProviderId);
m_list.SetItemText(Intem,2,m_pSet->m_ProviName);
m_list.SetItemText(Intem,3,m_pSet->m_ProductId);
m_list.SetItemText(Intem,4,m_pSet->m_ProductName);
m_list.SetItemText(Intem,5,m_pSet->m_Unit);
m_list.SetItemText(Intem,6,m_pSet->m_Spec);
str.Format("%d",m_pSet->m_Quantity);
m_list.SetItemText(Intem,7,str);
m_list.SetItemText(Intem,8,m_pSet->m_UnitPrice);
m_list.SetItemText(Intem,9,m_pSet->m_OrderDate.Format("%Y-%d-%d"));
m_list.SetItemText(Intem,10,m_pSet->m_Ordermeno);
Intem ++;
m_pSet->MoveNext(); //指向下一个记录
}
m_pSet->Close(); //关闭数据表
UpdateData(FALSE); //更新
}
BOOL CSstockifDlg::OnInitDialog()
{
CDialog::OnInitDialog();
m_list.SetExtendedStyle(LVS_EX_FULLROWSELECT|LVS_EX_GRIDLINES); //获取List的网格
m_list.InsertColumn(0,"进货信息编号",LVCFMT_CENTER,100); //向list中插入第一列(0表示第一,双引号里面的是标题,向中心对齐,宽度为100).
m_list.InsertColumn(1,"供应商编号",LVCFMT_CENTER,100);
m_list.InsertColumn(2,"供应商名称",LVCFMT_CENTER,100);
m_list.InsertColumn(3,"商品编号",LVCFMT_CENTER,100);
m_list.InsertColumn(4,"商品名称",LVCFMT_CENTER,100);
m_list.InsertColumn(5,"商品单位",LVCFMT_CENTER,100);
m_list.InsertColumn(6,"商品规格",LVCFMT_CENTER,100);
m_list.InsertColumn(7,"商品数量",LVCFMT_CENTER,100);
m_list.InsertColumn(8,"商品单价",LVCFMT_CENTER,100);
m_list.InsertColumn(9,"进货日期",LVCFMT_CENTER,100);
m_list.InsertColumn(10,"备注信息",LVCFMT_LEFT,200);
Sstock("");
// TODO: Add extra initialization here
return TRUE; // return TRUE unless you set the focus to a control
// EXCEPTION: OCX Property Pages should return FALSE
}
void CSstockifDlg::OnShuaxin()
{
// TODO: Add your control notification handler code here
m_sFilter.Format("");
Sstock(""); //刷新记录
}
void CSstockifDlg::OnChaxun()
{
// TODO: Add your control notification handler code here
CSstockif_CXDlg dlg;
if (dlg.DoModal()==IDOK)
{
UpdateData();
m_sFilter.Format(" sstock.StochId='%s' and sstock.ProductId = '%s' and sstock.ProductName='%s'",dlg.m_stochId,dlg.m_ProvictId,dlg.m_ProvictName );
Sstock(m_sFilter);
}
}
void CSstockifDlg::OnTianjia()
{
// TODO: Add your control notification handler code here
CSstockif_TJDlg dlg;
dlg.DoModal();
}
void CSstockifDlg::OnXiugai()
{
// TODO: Add your control notification handler code here
CSstockif_XGDlg dlg;
int Index = m_list.GetSelectionMark();//获取被选中的记录
if (Index !=-1)
{
dlg.edit = m_list.GetItemText(Index,0);
dlg.DoModal();
}
else
{
MessageBox("请选中要修改的项!");
}
}
void CSstockifDlg::OnShanchu()
{
// TODO: Add your control notification handler code here
int nIndex = m_list.GetSelectionMark();//获取被选中的记录
CString str;
str.Format("你确实是要删除供应商编号为%s的记录吗?删除请按[确定],取消请选择[取消]",m_list.GetItemText(nIndex,1));
if (MessageBox(str,"确认删除",MB_OKCANCEL)==IDOK)
{
CSstockifSet sc;
sc.m_strFilter.Format("ProviderId = '%s'",m_list.GetItemText(nIndex,1));
sc.Open();
if (!sc.IsEOF())
{
sc.Delete();
}
sc.Close();
Sstock("");
}
Sstock("");
//MessageBox("删除记录成功!");
UpdateData(FALSE);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -