?? dlgxiaoshoukandan.cpp
字號:
// DlgXiaoShouKanDan.cpp : implementation file
//
#include "stdafx.h"
#include "ncshop.h"
#include "DlgXiaoShouKanDan.h"
#include "ADOConn.h"
#include "MyTime.h"
#include "DlgAll.h"
#include "DlgPrint.h"
#include ".\dlgxiaoshoukandan.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// CDlgXiaoShouKanDan dialog
CDlgXiaoShouKanDan::CDlgXiaoShouKanDan(CWnd* pParent /*=NULL*/)
: CDialog(CDlgXiaoShouKanDan::IDD, pParent)
{
//{{AFX_DATA_INIT(CDlgXiaoShouKanDan)
// NOTE: the ClassWizard will add member initialization here
m_str1 = _T("");
m_str2 = _T("");
m_str8 = _T("");
m_str3 = _T("");
m_str4 = _T("");
m_str5 = _T("");
m_flt6 = 0.0f;
m_flt7 = 0.0f;
//}}AFX_DATA_INIT
}
void CDlgXiaoShouKanDan::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CDlgXiaoShouKanDan)
DDX_Control(pDX, IDC_BUTTON8, m_Btn10);
DDX_Control(pDX, IDC_BUTTON5, m_Btn9);
DDX_Control(pDX, IDC_BUTTON2, m_Btn2);
DDX_Control(pDX, IDC_BUTTON4, m_Btn8);
DDX_Control(pDX, IDC_LIST1, m_listMain);
DDX_Control(pDX, IDFIND, m_Btn6);
DDX_Control(pDX, IDDEL, m_Btn5);
DDX_Control(pDX, IDCANCEL, m_Btn4);
DDX_Control(pDX, IDC_BUTTON3, m_Btn3);
DDX_Control(pDX, IDC_BUTTON1, m_Btn1);
DDX_Text(pDX, IDC_EDIT1, m_str1);
DDX_Text(pDX, IDC_EDIT2, m_str2);
DDX_Text(pDX, IDC_EDIT20, m_str8);
DDX_Text(pDX, IDC_EDIT3, m_str3);
DDX_Text(pDX, IDC_EDIT4, m_str4);
DDX_Text(pDX, IDC_EDIT5, m_str5);
DDX_Text(pDX, IDC_EDIT16, m_flt6);
DDX_Text(pDX, IDC_EDIT18, m_flt7);
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(CDlgXiaoShouKanDan, CDialog)
//{{AFX_MSG_MAP(CDlgXiaoShouKanDan)
ON_BN_CLICKED(IDC_BUTTON4, OnButton4)
ON_BN_CLICKED(IDC_BUTTON2, OnButton2)
ON_BN_CLICKED(IDFIND, OnFind)
ON_BN_CLICKED(IDC_BUTTON1, OnButton1)
ON_BN_CLICKED(IDDEL, OnDel)
ON_BN_CLICKED(IDC_BUTTON3, OnButton3)
ON_BN_CLICKED(IDC_BUTTON5, OnButton5)
ON_NOTIFY(NM_CLICK, IDC_LIST1, OnClickList1)
ON_BN_CLICKED(IDC_BUTTON8, OnButton8)
//}}AFX_MSG_MAP
ON_BN_CLICKED(IDCANCEL, OnBnClickedCancel)
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CDlgXiaoShouKanDan message handlers
BOOL CDlgXiaoShouKanDan::OnInitDialog()
{
CDialog::OnInitDialog();
// TODO: Add extra initialization here
CString strSql;
m_Btn1.SetXIcon(IDI_ICONALL);
m_Btn2.SetXIcon(IDI_ICONALL);
m_Btn3.SetXIcon(IDI_ICONBUTTON);
m_Btn4.SetXIcon(IDI_ICONBUTTON);
m_Btn5.SetXIcon(IDI_ICONBUTTON);
m_Btn6.SetXIcon(IDI_ICONFIND);
m_Btn8.SetXIcon(IDI_ICONBUTTON);
m_Btn9.SetXIcon(IDI_ICONBUTTON);
m_Btn10.SetXIcon(IDI_ICONBUTTON);
m_listMain.InsertColumn(0,"條形碼",LVCFMT_CENTER,100);
m_listMain.InsertColumn(1,"名稱",LVCFMT_CENTER,100);
m_listMain.InsertColumn(2,"庫存上限",LVCFMT_CENTER,100);
m_listMain.InsertColumn(3,"庫存下限",LVCFMT_CENTER,100);
m_listMain.InsertColumn(4,"銷售價",LVCFMT_CENTER,100);
m_listMain.InsertColumn(5,"庫存",LVCFMT_CENTER,100);
m_listMain.InsertColumn(6,"數量",LVCFMT_CENTER,100);
m_listMain.SetExtendedStyle(LVS_EX_GRIDLINES|LVS_EX_FULLROWSELECT);
GetDlgItem(IDC_STATIC1)->SetFont(&ftHeader,TRUE);
return TRUE; // return TRUE unless you set the focus to a control
// EXCEPTION: OCX Property Pages should return FALSE
}
void CDlgXiaoShouKanDan::OnButton4()
{
// TODO: Add your control notification handler code here
int i;
CString strSql,str;
CADOConn adoMain;
CMyTime time1;
if(m_str1!="")
{
for(i=0;i<m_listMain.GetItemCount();i++)
{
strSql="update 商品庫存數量統計表 set 庫存=";
str.Format("%0.2f",atof(m_listMain.GetItemText(i,5))-atof(m_listMain.GetItemText(i,6)));
strSql=strSql+str+" where 條形碼='";
strSql=strSql+m_listMain.GetItemText(i,0)+"'";
adoMain.ExecuteSQL(strSql);
}
}
time1.SetNow();
m_str1=time1.GetSimpleString();
m_str2=time1.GetDateString(FALSE);
m_str3="";
m_str4="";
m_str5="";
m_flt6=0;
m_flt7=0;
UpdateData(FALSE);
strSql="insert into 銷售單統計表(單編號,開票日期) values('";
strSql=strSql+m_str1+"','";
strSql=strSql+m_str2+"')";
adoMain.ExecuteSQL(strSql);
adoMain.ExitConnect();
m_listMain.DeleteAllItems();
}
void CDlgXiaoShouKanDan::OnButton2()
{
// TODO: Add your control notification handler code here
CDlgAll dlg;
UpdateData(TRUE);
dlg.strTitle="管理員基本信息表";
dlg.strSql="select 編號,姓名 from 管理員基本信息表";
dlg.intOpen=2;
if(dlg.DoModal()==IDOK)
{
m_str3=dlg.strKey;
UpdateData(FALSE);
}
}
void CDlgXiaoShouKanDan::OnFind()
{
// TODO: Add your control notification handler code heres
UpdateData(TRUE);
if(m_str1=="")
{
MessageBox("請先開單,后加載商品!","提示",MB_OK|MB_ICONWARNING);
return;
}
CADOConn adoMain;
CString strSql,str;
CDlgAll dlg;
int i=0;
strSql="SELECT 商品檔案基本信息表.條形碼, 商品檔案基本信息表.名稱,";
strSql=strSql+"商品檔案基本信息表.庫存上限, 商品檔案基本信息表.庫存下限";
strSql=strSql+",商品庫存數量統計表.進貨價," ;
strSql=strSql+"商品庫存數量統計表.庫存 FROM 商品檔案基本信息表 INNER JOIN 商品庫存數量統計表 ON ";
strSql=strSql+"商品檔案基本信息表.條形碼 = 商品庫存數量統計表.條形碼 where 商品檔案基本信息表.條形碼='";
strSql=strSql+m_str8+"' or 商品檔案基本信息表.商品編碼='";
strSql=strSql+m_str8+"' or 商品檔案基本信息表.助記碼='";
strSql=strSql+m_str8+"' or 商品檔案基本信息表.拼音碼='";
strSql=strSql+m_str8+"'";
dlg.strTitle="商品檔案基本信息";
dlg.strSql=strSql;
dlg.intOpen=6;
dlg.intKey=0;
if(dlg.DoModal()==IDOK)
{
while(i<m_listMain.GetItemCount()&&m_listMain.GetItemText(i,0)!=dlg.strKey)
{
i=i+1;
}
if(i<m_listMain.GetItemCount())
{
MessageBox("表中已經存在此商品!","提示",MB_OK|MB_ICONWARNING);
return;
}
if(i==m_listMain.GetItemCount())
{
if(m_listMain.GetItemText(i,0)==dlg.strKey)
{
MessageBox("表中已經存在此商品!","提示",MB_OK|MB_ICONWARNING);
return;
}
}
strSql="SELECT 商品檔案基本信息表.條形碼, 商品檔案基本信息表.名稱,";
strSql=strSql+"商品檔案基本信息表.庫存上限, 商品檔案基本信息表.庫存下限";
strSql=strSql+",商品庫存數量統計表.零售價," ;
strSql=strSql+"商品庫存數量統計表.庫存 FROM 商品檔案基本信息表 INNER JOIN 商品庫存數量統計表 ON ";
strSql=strSql+"商品檔案基本信息表.條形碼 = 商品庫存數量統計表.條形碼 where 商品檔案基本信息表.條形碼='";
strSql=strSql+dlg.strKey+"'";
adoMain.Open(strSql);
adoMain.FillList(&m_listMain);
strSql="insert into 銷售商品管理表(單編號,條形碼,銷售單價,數量) values('";
strSql=strSql+m_str1+"','";
strSql=strSql+dlg.strKey+"',";
strSql=strSql+m_listMain.GetItemText(0,4)+",1)";
adoMain.ExecuteSQL(strSql);
m_listMain.SetItemText(0,6,"1");
}
adoMain.ExitConnect();
}
void CDlgXiaoShouKanDan::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_str4=dlg.strKey;
UpdateData(FALSE);
}
}
void CDlgXiaoShouKanDan::OnDel()
{
// TODO: Add your control notification handler code here
CADOConn adoMain,adoFile;
CString strSql;
POSITION pos;
int i;
UINT j=0;
UpdateData(TRUE);
pos=m_listMain.GetFirstSelectedItemPosition();
i=m_listMain.GetNextSelectedItem(pos);
if (i>=0)
{
if(MessageBox("確信刪除這些信息嗎?","提示",MB_YESNO|MB_ICONQUESTION)==IDNO) return;
i=m_listMain.GetItemCount();
while(j<m_listMain.GetSelectedCount()&&i>=0)
{
if(m_listMain.GetItemState(i,LVIS_SELECTED)==LVIS_SELECTED)
{
strSql="delete * from 銷售商品管理表 where 單編號='";
strSql=strSql+m_str1+"' and 條形碼='";
strSql=strSql+m_listMain.GetItemText(i,0)+"'";
adoMain.ExecuteSQL(strSql);
m_listMain.DeleteItem(i);
j=j+1;
}
i=i-1;
}
}
adoMain.ExitConnect();
m_flt6=0;
m_flt7=0;
UpdateData(FALSE);
}
void CDlgXiaoShouKanDan::OnButton3()
{
// TODO: Add your control notification handler code here
UpdateData(TRUE);
if(m_str1=="")
{
MessageBox("請先開單,后加載商品!","提示",MB_OK|MB_ICONWARNING);
return;
}
POSITION pos;
CString str;
int i;
pos=m_listMain.GetFirstSelectedItemPosition();
i=m_listMain.GetNextSelectedItem(pos);
if (i>=0)
{
str.Format("%0.2f",m_flt6);
m_listMain.SetItemText(i,4,str);
str.Format("%0.2f",m_flt7);
m_listMain.SetItemText(i,6,str);
UpdateData(FALSE);
}
CString strSql;
CADOConn adoMain;
double dbl=0;
strSql="update 銷售單統計表 set 開票日期='";
strSql=strSql+m_str2+"',經辦人='";
strSql=strSql+m_str3+"',分機號='";
strSql=strSql+m_str4+"',備注='";
strSql=strSql+m_str5+"' where 單編號='";
strSql=strSql+m_str1+"'";
adoMain.ExecuteSQL(strSql);
for(i=0;i<m_listMain.GetItemCount();i++)
{
strSql="update 銷售商品管理表 set 銷售單價=";
strSql=strSql+m_listMain.GetItemText(i,4)+",數量=";
strSql=strSql+m_listMain.GetItemText(i,6)+" where 單編號='";
strSql=strSql+m_str1+"' and 條形碼='";
strSql=strSql+m_listMain.GetItemText(i,0)+"'";
adoMain.ExecuteSQL(strSql);
}
for(i=0;i<m_listMain.GetItemCount();i++)
{
dbl=dbl+atof(m_listMain.GetItemText(i,4))*atof(m_listMain.GetItemText(i,6));
}
str.Format("%0.2f",dbl);
GetDlgItem(IDC_EDIT19)->SetWindowText(str);
adoMain.ExitConnect();
}
void CDlgXiaoShouKanDan::OnClickList1(NMHDR* pNMHDR, LRESULT* pResult)
{
// TODO: Add your control notification handler code here
UpdateData(TRUE);
POSITION pos;
int i;
pos=m_listMain.GetFirstSelectedItemPosition();
i=m_listMain.GetNextSelectedItem(pos);
if (i>=0)
{
m_flt6=atof(m_listMain.GetItemText(i,4));
m_flt7=atof(m_listMain.GetItemText(i,6));
UpdateData(FALSE);
}
*pResult = 0;
}
//結算
void CDlgXiaoShouKanDan::OnButton5()
{
// TODO: Add your control notification handler code here
int i;
CString strSql,str;
CADOConn adoMain;
if(m_str1!="")
{
for(i=0;i<m_listMain.GetItemCount();i++)
{
strSql="update 商品庫存數量統計表 set 庫存=";
str.Format("%0.2f",atof(m_listMain.GetItemText(i,5))-atof(m_listMain.GetItemText(i,6)));
strSql=strSql+str+" where 條形碼='";
strSql=strSql+m_listMain.GetItemText(i,0)+"'";
adoMain.ExecuteSQL(strSql);
}
}
m_str1="";
m_str2="";
m_str3="";
m_str4="";
m_str5="";
m_flt6=0;
m_flt7=0;
UpdateData(FALSE);
m_listMain.DeleteAllItems();
}
void CDlgXiaoShouKanDan::OnButton8()
{
// TODO: Add your control notification handler code here
UpdateData(TRUE);
CDlgPrint dlg;
dlg.strTitle=m_str1;
dlg.strSql="SELECT '' as 條形碼,'' as 名稱,'' as 庫存上限,'' as 庫存下限,'' as 銷售價,'' as 庫存,'' as 數量";
dlg.strSql=dlg.strSql+" from 商品庫存數量統計表";
dlg.m_ListMain=&m_listMain;
dlg.DoModal();
}
void CDlgXiaoShouKanDan::OnBnClickedCancel()
{
// TODO: 在此添加控件通知處理程序代碼
OnCancel();
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -