📄 purchaserecord.cpp
字号:
// PurchaseRecord.cpp : implementation file
//
#include "stdafx.h"
#include "ShopManage.h"
#include "PurchaseRecord.h"
#include "DataManage.h"
#include "NewRecord.h"
extern _RecordsetPtr Record1;
extern _ConnectionPtr DataConn;
extern _RecordsetPtr DataRecord;
extern _CommandPtr Com;
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// CPurchaseRecord dialog
CPurchaseRecord::CPurchaseRecord(CWnd* pParent /*=NULL*/)
: CDialog(CPurchaseRecord::IDD, pParent)
{
//{{AFX_DATA_INIT(CPurchaseRecord)
m_PurchaseID = _T("");
m_GoodsID = _T("");
m_PurchasePrice = 0.0f;
m_PurchaseCount = 0;
m_PurchaseAcount = 0.0f;
m_PurchaseDate = _T("");
//}}AFX_DATA_INIT
}
void CPurchaseRecord::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CPurchaseRecord)
DDX_Text(pDX, IDC_PurchaseID, m_PurchaseID);
DDX_Text(pDX, IDC_GoodsID, m_GoodsID);
DDX_Text(pDX, IDC_PurchasePrice, m_PurchasePrice);
DDX_Text(pDX, IDC_PurchaseCount, m_PurchaseCount);
DDX_Text(pDX, IDC_PurchaseAcount, m_PurchaseAcount);
DDX_Text(pDX, IDC_PurchaseDate, m_PurchaseDate);
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(CPurchaseRecord, CDialog)
//{{AFX_MSG_MAP(CPurchaseRecord)
ON_BN_CLICKED(IDC_PurchaseClose, OnPurchaseClose)
ON_BN_CLICKED(IDC_PurchaseAdd, OnPurchaseAdd)
ON_WM_CLOSE()
ON_BN_CLICKED(IDC_New, OnNew)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CPurchaseRecord message handlers
void CPurchaseRecord::OnOK()
{
// TODO: Add extra validation here
//CDialog::OnOK();
}
void CPurchaseRecord::OnPurchaseClose()
{
// TODO: Add your control notification handler code here
//if(MessageBox("确实要退出本窗口吗?","提示",MB_YESNO) != IDNO)
EndDialog(0);
}
void CPurchaseRecord::OnPurchaseAdd()
{
// TODO: Add your control notification handler code here
CDataManage dm;
CString sql;
CString PurchaseID="",GoodsID="",PurchaseDate="";
float PurchasePrice=0,PurchaseAcount=0;
int PurchaseCount;
UpdateData(TRUE);
if(m_PurchaseID.GetLength() == 0)
{
MessageBox("请输入信息","提示");
return;
}
/**************赋值**********************/
PurchaseID = m_PurchaseID;
GoodsID = m_GoodsID;
PurchasePrice = m_PurchasePrice;
PurchaseCount = m_PurchaseCount;
PurchaseAcount = m_PurchaseAcount;
PurchaseDate = m_PurchaseDate;
/********************d********************/
sql.Format("insert into Purchase values ('%s','%s','%f','%d','%f','%s')",
PurchaseID,GoodsID,PurchasePrice,PurchaseCount,PurchaseAcount,PurchaseDate);
/*****************************************/
try
{
dm.ConnectDataBase();
Record1->Open(_variant_t("Purchase"),
_variant_t((IDispatch *)DataConn,true), adOpenKeyset,
adLockOptimistic, adCmdTable);
}
catch (_com_error& e)
{
MessageBox(e.ErrorMessage(),"提示");
}
/*****************************************/
try
{
//_variant_t RecordsAffected;
//DataConn->Execute((_bstr_t)sql,&RecordsAffected,adCmdText);
dm.ExecSQL(sql);
//this->MessageBox("操作成功","提示");
}
catch(_com_error &e)
{
this->MessageBox(e.ErrorMessage(),"提示");
}
/*****************库存修改****************/
CString temp = "";
Record1->raw_Close();
sql.Format("select StorageCount from Storage where GoodsID=%s",GoodsID);
Record1->Open((_variant_t)sql,DataConn.GetInterfacePtr(),adOpenKeyset,adLockOptimistic,adCmdText);
if(Record1->RecordCount > 0)
{
temp = (TCHAR*)(_bstr_t)Record1->GetFields()->GetItem((long)0)->Value;
Record1->raw_Close();
int Count=atoi(temp);
Count+=PurchaseCount;
sql.Format("update Storage set StorageCount=%d where GoodsID=%s",Count,GoodsID);
dm.ExecSQL(sql);
}
else
{
MessageBox("新记录","提示");
NewRecord nr;
nr.DoModal();
}
/*****************************************/
m_PurchaseID = "";
m_GoodsID = "";
m_PurchasePrice = 0;
m_PurchaseCount = 0;
m_PurchaseAcount = 0;
m_PurchaseDate = "";
UpdateData(FALSE);
}
void CPurchaseRecord::OnClose()
{
// TODO: Add your message handler code here and/or call default
//CDialog::OnClose();
}
void CPurchaseRecord::OnNew()
{
// TODO: Add your control notification handler code here
NewRecord nr;
nr.DoModal();
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -