📄 dware.cpp
字号:
// DWare.cpp : implementation file
//
#include "stdafx.h"
#include "商品销售管理系统.h"
#include "DWare.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
#include "ExternDllHeader.h"
/////////////////////////////////////////////////////////////////////////////
// CDWare dialog
CDWare::CDWare(CWnd* pParent /*=NULL*/)
: CDialog(CDWare::IDD, pParent)
{
//{{AFX_DATA_INIT(CDWare)
//}}AFX_DATA_INIT
this->AddOrChange=0;
}
void CDWare::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CDWare)
DDX_Control(pDX, IDC_WARE_EDTSELLPRICE, m_EdtSellPrice);
DDX_Control(pDX, IDC_WARE_BUTUNDO, m_ButUndo);
DDX_Control(pDX, IDC_WARE_BUTSAVE, m_ButSave);
DDX_Control(pDX, IDC_WARE_BUTEXIT, m_ButExit);
DDX_Control(pDX, IDC_WARE_EDTUNIT, m_EdtUnit);
DDX_Control(pDX, IDC_WARE_EDTSPEC, m_EdtSpec);
DDX_Control(pDX, IDC_WARE_EDTSNAME, m_EdtSName);
DDX_Control(pDX, IDC_WARE_EDTPRICE, m_EdtPrice);
DDX_Control(pDX, IDC_WARE_EDTNAME, m_EdtName);
DDX_Control(pDX, IDC_WARE_EDTID, m_EdtID);
DDX_Control(pDX, IDC_WARE_EDTARER, m_EdtArer);
DDX_Control(pDX, IDC_WARE_DTPOUTDATE, m_DtpOutDate);
DDX_Control(pDX, IDC_WARE_DTPKEEPDATE, m_DtpKeepDate);
DDX_Control(pDX, IDC_WARE_BUTDELE, m_ButDelete);
DDX_Control(pDX, IDC_WARE_BUTCHANGE, m_ButChange);
DDX_Control(pDX, IDC_WARE_BUTADD, m_ButAdd);
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(CDWare, CDialog)
//{{AFX_MSG_MAP(CDWare)
ON_BN_CLICKED(IDC_WARE_BUTADD, OnWareButadd)
ON_BN_CLICKED(IDC_WARE_BUTCHANGE, OnWareButchange)
ON_BN_CLICKED(IDC_WARE_BUTDELE, OnWareButdele)
ON_BN_CLICKED(IDC_WARE_BUTSAVE, OnWareButsave)
ON_BN_CLICKED(IDC_WARE_BUTEXIT, OnWareButexit)
ON_BN_CLICKED(IDC_WARE_BUTUNDO, OnWareButundo)
ON_EN_CHANGE(IDC_WARE_EDTNAME, OnChangeWareEdtname)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CDWare message handlers
void CDWare::OnOK()
{
// TODO: Add extra validation here
//CDialog::OnOK();
}
BOOL CDWare::OnInitDialog()
{
CDialog::OnInitDialog();
Warerst.Open("商品信息表");
Warerst.MoveFirst();
if(m_sID!="0")
Display("编号",m_sID);
this->Enabled(false);
return TRUE; // return TRUE unless you set the focus to a control
// EXCEPTION: OCX Property Pages should return FALSE
}
void CDWare::Display(CString sField,CString sValue)
{
RxRecordset disRst;
CString sSQL;
sSQL.Format("SELECT * FROM 商品信息表 WHERE %s='%s'",sField,sValue);
disRst.Open(sSQL,adCmdText);
disRst.MoveFirst();
CString EdtSpec,EdtUnit,EdtSName,EdtPrice,EdtSellPrice,EdtName,EdtID,EdtArer,DtpOutDate,DtpKeepDate;
CTime tOutDate,tKeepDate;
EdtID=disRst.GetFieldValue("编号");
EdtName=disRst.GetFieldValue("名称");
EdtSName=disRst.GetFieldValue("简称");
EdtSpec=disRst.GetFieldValue("规格");
EdtUnit=disRst.GetFieldValue("计量单位");
EdtArer=disRst.GetFieldValue("产地");
DtpOutDate=disRst.GetFieldValue("出厂日期");
DtpKeepDate=disRst.GetFieldValue("保质期");
EdtPrice=disRst.GetFieldValue("进货价格");
EdtSellPrice=disRst.GetFieldValue("销售价格");
m_EdtID.SetWindowText(EdtID);
m_EdtName.SetWindowText(EdtName);
m_EdtSName.SetWindowText(EdtSName);
m_EdtSpec.SetWindowText(EdtSpec);
m_EdtUnit.SetWindowText(EdtUnit);
m_EdtArer.SetWindowText(EdtArer);
m_EdtPrice.SetWindowText(EdtPrice);
m_EdtSellPrice.SetWindowText(EdtSellPrice);
tOutDate=CStringTOCTime(DtpOutDate);
tKeepDate=CStringTOCTime(DtpKeepDate);
m_DtpOutDate.SetTime(&tOutDate);
m_DtpKeepDate.SetTime(&tKeepDate);
disRst.Close();
}
BOOL CDWare::DestroyWindow()
{
Warerst.Close();
return CDialog::DestroyWindow();
}
void CDWare::Enabled(bool bEnabled)
{
m_EdtName.EnableWindow(bEnabled);
m_EdtSName.EnableWindow(bEnabled);
m_EdtSpec.EnableWindow(bEnabled);
m_EdtUnit.EnableWindow(bEnabled);
m_EdtArer.EnableWindow(bEnabled);
m_EdtPrice.EnableWindow(bEnabled);
m_EdtSellPrice.EnableWindow(bEnabled);
m_DtpOutDate.EnableWindow(bEnabled);
m_DtpKeepDate.EnableWindow(bEnabled);
m_ButDelete.EnableWindow(!bEnabled);
m_ButChange.EnableWindow(!bEnabled);
m_ButAdd.EnableWindow(!bEnabled);
m_ButUndo.EnableWindow(bEnabled);
m_ButSave.EnableWindow(bEnabled);
m_ButExit.EnableWindow(!bEnabled);
}
void CDWare::OnWareButadd()
{
CString cID;
this->Enabled(true);
m_EdtID.GetWindowText(cID);
if(cID.IsEmpty())
cID="SP00000001";
else
cID=ado.AutoNumber("商品信息表","编号","SP",2);
this->m_EdtID.SetWindowText(cID);
this->Clear();
m_EdtName.SetFocus();
this->AddOrChange=1;
CTime time;
time=time.GetCurrentTime();
this->m_DtpKeepDate.SetTime(&time);
this->m_DtpOutDate.SetTime(&time);
}
void CDWare::Clear()
{
m_EdtName.SetWindowText("");
m_EdtSName.SetWindowText("");
m_EdtSpec.SetWindowText("");
m_EdtUnit.SetWindowText("");
m_EdtArer.SetWindowText("");
m_EdtPrice.SetWindowText("");
m_EdtSellPrice.SetWindowText("");
CTime time;
time=time.GetCurrentTime();
m_DtpOutDate.SetTime(&time);
m_DtpKeepDate.SetTime(&time);
}
void CDWare::OnWareButchange()
{
CString cID;
this->Enabled(true);
m_EdtName.SetFocus();
this->AddOrChange=2;
}
void CDWare::OnWareButdele()
{
if(MessageBox("删除后无法恢复 ,确定删除此条记录吗?","系统提示",MB_OKCANCEL|MB_ICONQUESTION)==1)
{
CString sSQL,sID;
this->m_EdtID.GetWindowText(sID);
sSQL.Format("DELETE FROM 商品信息表 WHERE 编号='%s'",sID);
RxRecordset DeleRst;
DeleRst.Open(sSQL,adCmdText);
this->OnCancel();
}
}
void CDWare::OnWareButsave()
{
if(MessageBox("确定要保存记录吗?","系统提示",MB_OKCANCEL|MB_ICONQUESTION)==1)
{
CString EdtSpec,EdtUnit,EdtSName,EdtPrice,EdtSellPrice,EdtName,EdtID,EdtArer,DtpOutDate,DtpKeepDate;
CTime tOutDate,tKeepDate;
m_EdtID.GetWindowText(EdtID);
m_EdtName.GetWindowText(EdtName);
m_EdtSName.GetWindowText(EdtSName);
m_EdtSpec.GetWindowText(EdtSpec);
m_EdtUnit.GetWindowText(EdtUnit);
m_EdtArer.GetWindowText(EdtArer);
m_EdtPrice.GetWindowText(EdtPrice);
m_EdtSellPrice.GetWindowText(EdtSellPrice);
m_DtpOutDate.GetTime(tOutDate);
m_DtpKeepDate.GetTime(tKeepDate);
DtpOutDate=CTimeToCString(tOutDate);
DtpKeepDate=CTimeToCString(tKeepDate);
RxRecordset AddRst;
CString sSQL;
if(this->AddOrChange==1) //添加
sSQL.Format("INSERT INTO 商品信息表 VALUES('%s','%s','%s','%s','%s','%s','%s','%s',%s,%s)",EdtID,EdtName,EdtSName,EdtSpec,EdtArer,EdtUnit,DtpOutDate,DtpKeepDate,EdtPrice,EdtSellPrice);
if(this->AddOrChange==2) //修改
sSQL.Format("UPDATE 商品信息表 SET 名称='%s',简称='%s',规格='%s',产地='%s',计量单位='%s',出厂日期='%s',保质期='%s',进货价格=%s,销售价格=%s WHERE 编号='%s'",EdtName,EdtSName,EdtSpec,EdtArer,EdtUnit,DtpOutDate,DtpKeepDate,EdtPrice,EdtSellPrice,EdtID);
AddRst.Open(sSQL,adCmdText);
sSQL.Format("INSERT INTO 库存信息表 VALUES('%s',0)",EdtID);
AddRst.Open(sSQL,adCmdText);
this->AddOrChange=0;
this->Enabled(false);
this->m_ButAdd.SetFocus();
}
}
void CDWare::OnWareButexit()
{
if(this->AddOrChange!=0)
OnWareButsave();
this->OnCancel();
}
void CDWare::OnWareButundo()
{
if(MessageBox("确定要撤消操作吗?","系统提示",MB_OKCANCEL|MB_ICONQUESTION)==1)
{
Enabled(false);
Display("编号",m_sID);
this->AddOrChange=0;
this->m_ButAdd.SetFocus();
}
}
void CDWare::SetID(CString sID)
{
m_sID=sID;
}
void CDWare::OnChangeWareEdtname()
{
CString sName,sSName;
this->m_EdtName.GetWindowText(sName);
sSName=CharToLetterCode(sName);
this->m_EdtSName.SetWindowText(sSName);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -