www.gusucode.com > VC++超市进销存管理系统(Access)-源码程序 > VC++超市进销存管理系统(Access)-源码程序/code/NcShop/DlgDanganBase.cpp
//Download by http://www.NewXing.com // DlgDanganBase.cpp : implementation file // #include "stdafx.h" #include "ncshop.h" #include "DlgDanganBase.h" #include "ADOConn.h" #include "DlgAll.h" #include "MyChiToLetter.h" #ifdef _DEBUG #define new DEBUG_NEW #undef THIS_FILE static char THIS_FILE[] = __FILE__; #endif ///////////////////////////////////////////////////////////////////////////// // CDlgDanganBase dialog CDlgDanganBase::CDlgDanganBase(CWnd* pParent /*=NULL*/) : CDialog(CDlgDanganBase::IDD, pParent) { //{{AFX_DATA_INIT(CDlgDanganBase) m_str1 = _T(""); m_str2 = _T(""); m_str3 = _T(""); m_str4 = _T(""); m_str5 = _T(""); m_str6 = _T(""); m_str7 = _T(""); m_str8 = _T(""); m_dbl10 = 0.0; m_dbl9 = 0.0; m_dbl11 = 0.0; m_dbl12 = 0.0; m_dbl13 = 0.0; m_dbl14 = 0.0; m_dbl15 = 0.0; m_str16 = _T(""); //}}AFX_DATA_INIT } void CDlgDanganBase::DoDataExchange(CDataExchange* pDX) { CDialog::DoDataExchange(pDX); //{{AFX_DATA_MAP(CDlgDanganBase) DDX_Control(pDX, IDC_LIST1, m_listMain); DDX_Control(pDX, IDC_BUTTON1, m_Btn5); DDX_Control(pDX, IDMODIFY, m_Btn2); DDX_Control(pDX, IDDEL2, m_Btn3); DDX_Control(pDX, IDC_BTNFIND, m_Btn4); DDX_Control(pDX, IDADD2, m_Btn1); DDX_Text(pDX, IDC_EDIT1, m_str1); DDV_MaxChars(pDX, m_str1, 255); DDX_Text(pDX, IDC_EDIT2, m_str2); DDV_MaxChars(pDX, m_str2, 50); DDX_Text(pDX, IDC_EDIT3, m_str3); DDV_MaxChars(pDX, m_str3, 50); DDX_Text(pDX, IDC_EDIT4, m_str4); DDV_MaxChars(pDX, m_str4, 50); DDX_Text(pDX, IDC_EDIT5, m_str5); DDV_MaxChars(pDX, m_str5, 50); DDX_Text(pDX, IDC_EDIT6, m_str6); DDV_MaxChars(pDX, m_str6, 50); DDX_Text(pDX, IDC_EDIT7, m_str7); DDV_MaxChars(pDX, m_str7, 50); DDX_Text(pDX, IDC_EDIT8, m_str8); DDV_MaxChars(pDX, m_str8, 5); DDX_Text(pDX, IDC_EDIT10, m_dbl10); DDX_Text(pDX, IDC_EDIT9, m_dbl9); DDX_Text(pDX, IDC_EDIT11, m_dbl11); DDX_Text(pDX, IDC_EDIT12, m_dbl12); DDX_Text(pDX, IDC_EDIT13, m_dbl13); DDX_Text(pDX, IDC_EDIT14, m_dbl14); DDX_Text(pDX, IDC_EDIT15, m_dbl15); DDX_Text(pDX, IDC_EDIT16, m_str16); //}}AFX_DATA_MAP } BEGIN_MESSAGE_MAP(CDlgDanganBase, CDialog) //{{AFX_MSG_MAP(CDlgDanganBase) ON_BN_CLICKED(IDC_BTNFIND, OnBtnfind) ON_NOTIFY(NM_CLICK, IDC_LIST1, OnClickList1) ON_BN_CLICKED(IDADD2, OnAdd2) ON_BN_CLICKED(IDMODIFY, OnModify) ON_BN_CLICKED(IDDEL2, OnDel2) ON_BN_CLICKED(IDC_BUTTON1, OnButton1) ON_EN_KILLFOCUS(IDC_EDIT6, OnKillfocusEdit6) ON_EN_CHANGE(IDC_EDIT6, OnChangeEdit6) ON_EN_UPDATE(IDC_EDIT6, OnUpdateEdit6) ON_EN_CHANGE(IDC_EDIT11, OnChangeEdit11) ON_EN_KILLFOCUS(IDC_EDIT11, OnKillfocusEdit11) ON_EN_UPDATE(IDC_EDIT11, OnUpdateEdit11) //}}AFX_MSG_MAP END_MESSAGE_MAP() ///////////////////////////////////////////////////////////////////////////// // CDlgDanganBase message handlers void CDlgDanganBase::OnBtnfind() { // TODO: Add your control notification handler code here UpdateData(TRUE); CADOConn adoMain; CString strSql; strSql="SELECT 商品档案基本信息表.*, 商品库存数量统计表.进货价, 商品库存数量统计表.零售价,"; strSql=strSql+"商品库存数量统计表.会员价, 商品库存数量统计表.业务提成, " ; strSql=strSql+"商品库存数量统计表.库存 FROM 商品档案基本信息表 INNER JOIN 商品库存数量统计表 ON "; strSql=strSql+"商品档案基本信息表.条形码 = 商品库存数量统计表.条形码 where 商品档案基本信息表.条形码='"; strSql=strSql+m_str16+"' or 商品档案基本信息表.商品编码='"; strSql=strSql+m_str16+"' or 商品档案基本信息表.助记码='"; strSql=strSql+m_str16+"' or 商品档案基本信息表.拼音码='"; strSql=strSql+m_str16+"'"; adoMain.Open(strSql); adoMain.FillList(&m_listMain,15); adoMain.ExitConnect(); m_listMain.SetItemState(0, LVIS_SELECTED, LVIS_SELECTED); m_str1=""; m_str2=""; m_str3=""; m_str4=""; m_str5=""; m_str6=""; m_str7=""; m_str8=""; m_dbl9=0; m_dbl10=0; m_dbl11=0; m_dbl12=0; m_dbl13=0; m_dbl14=0; m_dbl15=0; UpdateData(FALSE); } BOOL CDlgDanganBase::OnInitDialog() { CDialog::OnInitDialog(); // TODO: Add extra initialization here CADOConn adoMain; CString strSql; strSql="SELECT 商品档案基本信息表.*, 商品库存数量统计表.进货价, 商品库存数量统计表.零售价,"; strSql=strSql+"商品库存数量统计表.会员价, 商品库存数量统计表.业务提成, " ; strSql=strSql+"商品库存数量统计表.库存 FROM 商品档案基本信息表 INNER JOIN 商品库存数量统计表 ON "; strSql=strSql+"商品档案基本信息表.条形码 = 商品库存数量统计表.条形码"; adoMain.Open(strSql); adoMain.InitList(&m_listMain,15); adoMain.FillList(&m_listMain,2); m_Btn1.SetXIcon(IDI_ICONBUTTON); m_Btn2.SetXIcon(IDI_ICONBUTTON); m_Btn3.SetXIcon(IDI_ICONBUTTON); m_Btn4.SetXIcon(IDI_ICONFIND); m_Btn5.SetXIcon(IDI_ICONALL); GetDlgItem(IDC_STATIC2)->SetFont(&ftHeader,TRUE); adoMain.ExitConnect(); return TRUE; // return TRUE unless you set the focus to a control // EXCEPTION: OCX Property Pages should return FALSE } void CDlgDanganBase::OnClickList1(NMHDR* pNMHDR, LRESULT* pResult) { // TODO: Add your control notification handler code here POSITION pos; int i; pos=m_listMain.GetFirstSelectedItemPosition(); i=m_listMain.GetNextSelectedItem(pos); if (i>=0) { m_str1=m_listMain.GetItemText(i,0); m_str2=m_listMain.GetItemText(i,1); m_str3=m_listMain.GetItemText(i,2); m_str4=m_listMain.GetItemText(i,3); m_str5=m_listMain.GetItemText(i,4); m_str6=m_listMain.GetItemText(i,5); m_str7=m_listMain.GetItemText(i,6); m_str8=m_listMain.GetItemText(i,7); m_dbl9=atof(m_listMain.GetItemText(i,8)); m_dbl10=atof(m_listMain.GetItemText(i,9)); m_dbl11=atof(m_listMain.GetItemText(i,10)); m_dbl12=atof(m_listMain.GetItemText(i,11)); m_dbl13=atof(m_listMain.GetItemText(i,12)); m_dbl14=atof(m_listMain.GetItemText(i,13)); m_dbl15=atof(m_listMain.GetItemText(i,14)); UpdateData(FALSE); } *pResult = 0; } void CDlgDanganBase::OnAdd2() { // TODO: Add your control notification handler code here CADOConn adoMain; CString strSql; int i=0; UpdateData(TRUE); strSql="insert into 商品档案基本信息表(条形码) values('')"; adoMain.ExecuteSQL(strSql); strSql="insert into 商品库存数量统计表(条形码) values('')"; adoMain.ExecuteSQL(strSql); strSql="SELECT 商品档案基本信息表.*, 商品库存数量统计表.进货价, 商品库存数量统计表.零售价,"; strSql=strSql+"商品库存数量统计表.会员价, 商品库存数量统计表.业务提成, " ; strSql=strSql+"商品库存数量统计表.库存 FROM 商品档案基本信息表 INNER JOIN 商品库存数量统计表 ON "; strSql=strSql+"商品档案基本信息表.条形码 = 商品库存数量统计表.条形码"; adoMain.Open(strSql); adoMain.FillList(&m_listMain,15); m_listMain.SetItemState(0, LVIS_SELECTED, LVIS_SELECTED); m_str1=""; m_str2=""; m_str3=""; m_str4=""; m_str5=""; m_str6=""; m_str7=""; m_str8=""; m_dbl9=0; m_dbl10=0; m_dbl11=0; m_dbl12=0; m_dbl13=0; m_dbl14=0; m_dbl15=0; UpdateData(FALSE); adoMain.ExitConnect(); } void CDlgDanganBase::OnModify() { // TODO: Add your control notification handler code here CADOConn adoMain; CString strSql,str; POSITION pos; int i; pos=m_listMain.GetFirstSelectedItemPosition(); i=m_listMain.GetNextSelectedItem(pos); if (i>=0) { str=m_listMain.GetItemText(i,1); } UpdateData(TRUE); strSql="update 商品档案基本信息表 set 分类编号='"; strSql=strSql+m_str1+"',条形码='"; strSql=strSql+m_str2+"',商品编码='"; strSql=strSql+m_str3+"',助记码='"; strSql=strSql+m_str4+"',拼音码='"; strSql=strSql+m_str5+"',名称='"; strSql=strSql+m_str6+"',规格='"; strSql=strSql+m_str7+"',单位='"; strSql=strSql+m_str8+"',库存上限="; str.Format("%f",m_dbl9); strSql=strSql+str+",库存下限="; str.Format("%f",m_dbl10); strSql=strSql+str+" "; str=m_listMain.GetItemText(i,1); strSql=strSql+" where 条形码='"+str+"'"; adoMain.ExecuteSQL(strSql); strSql="update 商品库存数量统计表 set 条形码='"; strSql=strSql+m_str2+"',进货价="; str.Format("%f",m_dbl11); strSql=strSql+str+",零售价="; str.Format("%f",m_dbl12); strSql=strSql+str+",会员价="; str.Format("%f",m_dbl13); strSql=strSql+str+",业务提成="; str.Format("%f",m_dbl14); strSql=strSql+str+",库存="; str.Format("%f",m_dbl15); strSql=strSql+str; str=m_listMain.GetItemText(i,1); strSql=strSql+" where 条形码='"+str+"'"; adoMain.ExecuteSQL(strSql); strSql="SELECT 商品档案基本信息表.*, 商品库存数量统计表.进货价, 商品库存数量统计表.零售价,"; strSql=strSql+"商品库存数量统计表.会员价, 商品库存数量统计表.业务提成, " ; strSql=strSql+"商品库存数量统计表.库存 FROM 商品档案基本信息表 INNER JOIN 商品库存数量统计表 ON "; strSql=strSql+"商品档案基本信息表.条形码 = 商品库存数量统计表.条形码"; adoMain.Open(strSql); adoMain.FillList(&m_listMain,15); while(m_listMain.GetItemText(i,1)!=m_str2&&i<m_listMain.GetItemCount()) { i++; } if(m_listMain.GetItemCount()>0) m_listMain.SetItemState(i, LVIS_SELECTED, LVIS_SELECTED); adoMain.ExitConnect(); } void CDlgDanganBase::OnDel2() { // TODO: Add your control notification handler code here CADOConn adoMain,adoFile; CString strSql; POSITION pos; int i; UINT j=0; pos=m_listMain.GetFirstSelectedItemPosition(); i=m_listMain.GetNextSelectedItem(pos); if (i>=0) { if(MessageBox("确信删除这些信息吗?","提示",MB_YESNO|MB_ICONQUESTION)==IDNO) return; while(j<m_listMain.GetSelectedCount()&&i<m_listMain.GetItemCount()) { if(m_listMain.GetItemState(i,LVIS_SELECTED)==LVIS_SELECTED) { strSql="delete * from 商品档案基本信息表 where 条形码='"+m_listMain.GetItemText(i,1)+"'"; adoMain.ExecuteSQL(strSql); strSql="delete * from 商品库存数量统计表 where 条形码='"+m_listMain.GetItemText(i,1)+"'"; adoMain.ExecuteSQL(strSql); j=j+1; } i=i+1; } } adoMain.ExitConnect(); strSql="SELECT 商品档案基本信息表.*, 商品库存数量统计表.进货价, 商品库存数量统计表.零售价,"; strSql=strSql+"商品库存数量统计表.会员价, 商品库存数量统计表.业务提成, " ; strSql=strSql+"商品库存数量统计表.库存 FROM 商品档案基本信息表 INNER JOIN 商品库存数量统计表 ON "; strSql=strSql+"商品档案基本信息表.条形码 = 商品库存数量统计表.条形码"; adoFile.Open(strSql); adoFile.FillList(&m_listMain,2); adoFile.ExitConnect(); m_listMain.SetItemState(0, LVIS_SELECTED, LVIS_SELECTED); m_str1=""; m_str2=""; m_str3=""; m_str4=""; m_str5=""; m_str6=""; m_str7=""; m_str8=""; m_dbl9=0; m_dbl10=0; m_dbl11=0; m_dbl12=0; m_dbl13=0; m_dbl14=0; m_dbl15=0; UpdateData(FALSE); } void CDlgDanganBase::OnButton1() { // TODO: Add your control notification handler code here CDlgAll dlg; UpdateData(TRUE); dlg.strTitle="商品分类基本信息"; dlg.strSql="select * from 商品分类基本信息表"; dlg.intOpen=3; if(dlg.DoModal()==IDOK) { m_str1=dlg.strKey; UpdateData(FALSE); } } void CDlgDanganBase::OnKillfocusEdit6() { // TODO: Add your control notification handler code here CMyChiToLetter ch1; UpdateData(TRUE); ch1.m_blnAllBiG=TRUE; ch1.m_blnSimaple=TRUE; m_str5=ch1.GetLetter(m_str6); UpdateData(FALSE); } void CDlgDanganBase::OnChangeEdit6() { // TODO: If this is a RICHEDIT control, the control will not // send this notification unless you override the CDialog::OnInitDialog() // function and call CRichEditCtrl().SetEventMask() // with the ENM_CHANGE flag ORed into the mask. // TODO: Add your control notification handler code here OnKillfocusEdit6(); } void CDlgDanganBase::OnUpdateEdit6() { // TODO: If this is a RICHEDIT control, the control will not // send this notification unless you override the CDialog::OnInitDialog() // function to send the EM_SETEVENTMASK message to the control // with the ENM_UPDATE flag ORed into the lParam mask. // TODO: Add your control notification handler code here OnKillfocusEdit6(); } void CDlgDanganBase::OnChangeEdit11() { // TODO: If this is a RICHEDIT control, the control will not // send this notification unless you override the CDialog::OnInitDialog() // function and call CRichEditCtrl().SetEventMask() // with the ENM_CHANGE flag ORed into the mask. // TODO: Add your control notification handler code here UpdateData(TRUE); m_dbl12=m_dbl11; m_dbl13=m_dbl11; m_dbl14=m_dbl11; UpdateData(FALSE); } void CDlgDanganBase::OnKillfocusEdit11() { // TODO: Add your control notification handler code here OnChangeEdit11(); } void CDlgDanganBase::OnUpdateEdit11() { // TODO: If this is a RICHEDIT control, the control will not // send this notification unless you override the CDialog::OnInitDialog() // function to send the EM_SETEVENTMASK message to the control // with the ENM_UPDATE flag ORed into the lParam mask. // TODO: Add your control notification handler code here OnChangeEdit11(); }