📄 dlgjbzl_sp.cpp
字号:
// DlgJBZL_SP.cpp : implementation file
//
#include "stdafx.h"
#include "falcon_jxc.h"
#include "DlgJBZL_SP.h"
#include "DlgJBZL_SP_TJ.h"
#include "mainfrm.h"
#include "FALCON_JXCView.h"
#include "message.h"
#include "DlgJBZL_ZKL.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// CDlgJBZL_SP dialog
CDlgJBZL_SP::CDlgJBZL_SP(CWnd* pParent /*=NULL*/)
: CDialog(CDlgJBZL_SP::IDD, pParent)
{
//{{AFX_DATA_INIT(CDlgJBZL_SP)
m_sGuanjianzi = _T("");
m_sChaxuntiaojian = _T("");
m_sChaxuntiaojian1 = _T("");
m_sGuanjianzi1 = _T("");
//}}AFX_DATA_INIT
m_iRow = 1;
m_iDelRow = 0;
m_iColNum = 11;//数据库的列数
m_bSave = FALSE;
}
void CDlgJBZL_SP::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CDlgJBZL_SP)
DDX_Control(pDX, IDC_CHAXUNTIAOJIAN1, m_ctrChaxuntiaojian1);
DDX_Control(pDX, IDC_CHAXUNTIAOJIAN, m_ctrChaxuntiaojian);
DDX_Control(pDX, IDC_MSFLEXGRID1, m_ctrMSFlexGrid);
DDX_Text(pDX, IDC_GUANJIANZI, m_sGuanjianzi);
DDX_CBString(pDX, IDC_CHAXUNTIAOJIAN, m_sChaxuntiaojian);
DDX_CBString(pDX, IDC_CHAXUNTIAOJIAN1, m_sChaxuntiaojian1);
DDX_Text(pDX, IDC_GUANJIANZI1, m_sGuanjianzi1);
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(CDlgJBZL_SP, CDialog)
//{{AFX_MSG_MAP(CDlgJBZL_SP)
ON_BN_CLICKED(IDC_TIANJIA, OnTianjia)
ON_BN_CLICKED(IDC_SHANCHU, OnShanchu)
ON_BN_CLICKED(IDC_QUEDING, OnQueding)
ON_BN_CLICKED(IDC_CHAXUN, OnChaxun)
ON_BN_CLICKED(IDC_JIAGEZHEKOU, OnJiagezhekou)
ON_BN_CLICKED(ID_TUICHU, OnTuichu)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CDlgJBZL_SP message handlers
void CDlgJBZL_SP::OnTianjia()
{
// TODO: Add your control notification handler code here
UpdateData();
CDlgJBZL_SP_TJ dlg;
CString str;
if(dlg.DoModal() == IDOK)
{
if (dlg.m_sShangpinbianma == "")
{
return;
}
if (m_iRow != 1)
{
for(int i = 1; i < m_iRow; i++)
{
if(dlg.m_sShangpinbianma == m_ctrMSFlexGrid.GetTextMatrix(i,0))
{
AfxMessageBox("该编码商品已存在!");
return;
}
}
}
m_iRow++;
m_ctrMSFlexGrid.SetRows(m_iRow);
m_ctrMSFlexGrid.SetTextMatrix(m_iRow-1,0,dlg.m_sShangpinbianma);
m_ctrMSFlexGrid.SetTextMatrix(m_iRow-1,1,dlg.m_sMingcheng);
m_ctrMSFlexGrid.SetTextMatrix(m_iRow-1,2,dlg.m_sDanwei);
m_ctrMSFlexGrid.SetTextMatrix(m_iRow-1,3,dlg.m_sGuige);
m_ctrMSFlexGrid.SetTextMatrix(m_iRow-1,4,dlg.m_sXinghao);
m_ctrMSFlexGrid.SetTextMatrix(m_iRow-1,5,dlg.m_sGonghuoshang);
m_ctrMSFlexGrid.SetTextMatrix(m_iRow-1,6,dlg.m_sShengchanshang);
str.Format("%.2f",dlg.m_fJinjia);
m_ctrMSFlexGrid.SetTextMatrix(m_iRow-1,7,str);
str.Format("%.2f",dlg.m_fShoujia);
m_ctrMSFlexGrid.SetTextMatrix(m_iRow-1,8,str);
str.Format("%d",dlg.m_iZuixiaokucun);
m_ctrMSFlexGrid.SetTextMatrix(m_iRow-1,9,str);
m_ctrMSFlexGrid.SetTextMatrix(m_iRow-1,10,dlg.m_sBeizhu);
}
}
BOOL CDlgJBZL_SP::OnInitDialog()
{
CDialog::OnInitDialog();
// TODO: Add extra initialization here
m_ctrMSFlexGrid.SetCols(11);
m_ctrMSFlexGrid.SetRows(m_iRow);
m_ctrMSFlexGrid.SetTextArray(0,"商品编码");
m_ctrMSFlexGrid.SetTextArray(1,"名称");
m_ctrMSFlexGrid.SetTextArray(2,"单位");
m_ctrMSFlexGrid.SetTextArray(3,"规格");
m_ctrMSFlexGrid.SetTextArray(4,"型号");
m_ctrMSFlexGrid.SetTextArray(5,"供货商");
m_ctrMSFlexGrid.SetTextArray(6,"生产厂商");
m_ctrMSFlexGrid.SetTextArray(7,"进价");
m_ctrMSFlexGrid.SetTextArray(8,"售价");
m_ctrMSFlexGrid.SetTextArray(9,"最小库存");
m_ctrMSFlexGrid.SetTextArray(10,"商品分类");
m_ctrChaxuntiaojian.AddString("商品编码");
m_ctrChaxuntiaojian.AddString("供货商");
m_ctrChaxuntiaojian.AddString("商品名称");
m_ctrChaxuntiaojian.AddString("生产厂商");
m_ctrChaxuntiaojian.SetCurSel(0);
m_ctrChaxuntiaojian1.AddString("商品名称");
m_ctrChaxuntiaojian1.AddString("供货商");
m_ctrChaxuntiaojian1.AddString("商品编码");
m_ctrChaxuntiaojian1.AddString("生产厂商");
m_ctrChaxuntiaojian1.SetCurSel(0);
CMainFrame* pwnd=(CMainFrame*)AfxGetApp()->m_pMainWnd;
CFALCON_JXCView* pView=(CFALCON_JXCView*)pwnd->GetActiveView();
CFALCON_JXCDoc* pDoc= pView->GetDocument();
if(pDoc->ConnectToServer())
{
pDoc->SendMsg("",1910);
}
else
return FALSE;
a:
if(pDoc->m_b2910)
{
if (pDoc->m_pMsg->ShortMessage != "")
{
m_iRow += pDoc->m_iRow;
m_ctrMSFlexGrid.SetRows(m_iRow);
CString str;
int n = 0;
for(int i = 1; i <= pDoc->m_iRow; i++)
{
str = pDoc->m_StrArray[n];
m_ctrMSFlexGrid.SetTextMatrix(i,0,str);
str = pDoc->m_StrArray[n+1];
m_ctrMSFlexGrid.SetTextMatrix(i,1,str);
str = pDoc->m_StrArray[n+2];
m_ctrMSFlexGrid.SetTextMatrix(i,2,str);
str = pDoc->m_StrArray[n+3];
m_ctrMSFlexGrid.SetTextMatrix(i,3,str);
str = pDoc->m_StrArray[n+4];
m_ctrMSFlexGrid.SetTextMatrix(i,4,str);
str = pDoc->m_StrArray[n+5];
m_ctrMSFlexGrid.SetTextMatrix(i,5,str);
str = pDoc->m_StrArray[n+6];
m_ctrMSFlexGrid.SetTextMatrix(i,6,str);
str = pDoc->m_StrArray[n+7];
m_ctrMSFlexGrid.SetTextMatrix(i,7,str);
str = pDoc->m_StrArray[n+8];
m_ctrMSFlexGrid.SetTextMatrix(i,8,str);
str = pDoc->m_StrArray[n+9];
m_ctrMSFlexGrid.SetTextMatrix(i,9,str);
str = pDoc->m_StrArray[n+10];
m_ctrMSFlexGrid.SetTextMatrix(i,10,str);
n += m_iColNum;
}
}
pDoc->m_b2910=false;
}
else
{
pDoc->ProcessReadMessage();
goto a;
}
return TRUE; // return TRUE unless you set the focus to a control
// EXCEPTION: OCX Property Pages should return FALSE
}
BEGIN_EVENTSINK_MAP(CDlgJBZL_SP, CDialog)
//{{AFX_EVENTSINK_MAP(CDlgJBZL_SP)
ON_EVENT(CDlgJBZL_SP, IDC_MSFLEXGRID1, -600 /* Click */, OnClickMsflexgrid1, VTS_NONE)
//}}AFX_EVENTSINK_MAP
END_EVENTSINK_MAP()
void CDlgJBZL_SP::OnClickMsflexgrid1()
{
// TODO: Add your control notification handler code here
m_iDelRow = m_ctrMSFlexGrid.GetRow();
}
void CDlgJBZL_SP::OnShanchu()
{
// TODO: Add your control notification handler code here
UpdateData();
CMainFrame* pwnd = (CMainFrame*)AfxGetApp()->m_pMainWnd;
CFALCON_JXCView* pView = (CFALCON_JXCView*)pwnd->GetActiveView();
CFALCON_JXCDoc* pDoc = pView->GetDocument();
CString str,strDel;
if (m_iDelRow >0)
{
str.Format("是否删除商品 %s 的资料?",m_ctrMSFlexGrid.GetTextMatrix(m_iDelRow,0));
if(AfxMessageBox(str,MB_YESNO) == IDYES)
{
//删除数据库内容
strDel = m_ctrMSFlexGrid.GetTextMatrix(m_iDelRow,0);
if(pDoc->ConnectToServer())
{
pDoc->SendMsg(strDel,1913);//发送删除"商品基本资料"请求
}
else
{
AfxMessageBox("连接数据库失败!");
return;
}
//刷新显示
if(m_iRow > 2)
{
m_ctrMSFlexGrid.RemoveItem(m_iDelRow);
m_iRow--;
m_ctrMSFlexGrid.SetRows(m_iRow);
}
else
{
m_iRow--;
m_ctrMSFlexGrid.SetRows(m_iRow);
}
}
}
else
{
AfxMessageBox("请选择要删除的记录!");
return;
}
}
void CDlgJBZL_SP::OnQueding()
{
// TODO: Add your control notification handler code here
UpdateData();
CMainFrame* pwnd=(CMainFrame*)AfxGetApp()->m_pMainWnd;
CFALCON_JXCView* pView=(CFALCON_JXCView*)pwnd->GetActiveView();
CFALCON_JXCDoc* pDoc= pView->GetDocument();
CString strInsert,str;
str.Format("%d",m_iRow-1);
strInsert = str;
strInsert+=CHARFLAG;
str.Format("%d",m_iColNum);
strInsert += str;
strInsert+=CHARFLAG;
for(int i = 1; i < m_iRow; i++)
{
for(int j = 0; j < m_iColNum; j++)
{
strInsert += m_ctrMSFlexGrid.GetTextMatrix(i,j);
strInsert+=CHARFLAG;
}
}
if(pDoc->ConnectToServer())
{
pDoc->SendMsg(strInsert,1911);//发送存储"商品基本资料"请求
// m_ctrMSFlexGrid.SetRows(1); //是否清屏?
}
else
return;
/*/////////////////////
添加打印函数
*/////////////////////
m_bSave = TRUE;
// OnOK();
}
void CDlgJBZL_SP::OnChaxun()
{
// TODO: Add your control notification handler code here
UpdateData();
CMainFrame* pwnd=(CMainFrame*)AfxGetApp()->m_pMainWnd;
CFALCON_JXCView* pView=(CFALCON_JXCView*)pwnd->GetActiveView();
CFALCON_JXCDoc* pDoc = pView->GetDocument();
if(m_sGuanjianzi == "" && m_sGuanjianzi1 =="")
{
AfxMessageBox("请输入关键字!");
return;
}
CString strRequest;
strRequest = m_sChaxuntiaojian;
strRequest += CHARFLAG;
strRequest += m_sGuanjianzi;
strRequest += CHARFLAG;
strRequest += m_sChaxuntiaojian1;
strRequest += CHARFLAG;
strRequest += m_sGuanjianzi1;
strRequest += CHARFLAG;
if(pDoc->ConnectToServer())
{
pDoc->SendMsg(strRequest,1912);//发送根据关键字查询商品资料的请求
}
else
return;
a:
if(pDoc->m_b2912)
{
if(pDoc->m_pMsg->ShortMessage != "")
{
m_iRow = pDoc->m_iRow+1;
m_ctrMSFlexGrid.SetRows(m_iRow);
CString str;
for(int i = 1; i < m_iRow; i++)
{
for(int j = 0; j < m_iColNum; j++)
{
str = pDoc->m_StrArray[j+(i-1)*m_iColNum];
m_ctrMSFlexGrid.SetTextMatrix(i,j,str);
}
UpdateData(FALSE);
}
}
else
{
m_iRow = 1;
m_ctrMSFlexGrid.SetRows(m_iRow);
UpdateData(FALSE);
AfxMessageBox("查询结果为0!");
}
pDoc->m_b2912=false;
}
else
{
pDoc->ProcessReadMessage();
goto a;
}
}
void CDlgJBZL_SP::OnJiagezhekou()
{
// TODO: Add your control notification handler code here
UpdateData();
CDlgJBZL_ZKL dlg;
if(dlg.DoModal() == IDOK)
{
CString str;
float fShoujia;
for(int i = 1; i < m_iRow; i++)
{
int j = 8;//售价在第八列
str = m_ctrMSFlexGrid.GetTextMatrix(i,j);
fShoujia = (float)atof(str);
fShoujia *= dlg.m_fZhekoulv /10;
str.Format("%.2f",fShoujia);
m_ctrMSFlexGrid.SetTextMatrix(i,j,str);
UpdateData(FALSE);
}
}
}
void CDlgJBZL_SP::OnOK()
{
//Dummy OnOk function!
}
void CDlgJBZL_SP::OnCancel()
{
//Dummy OnCancel function!
}
void CDlgJBZL_SP::OnTuichu()
{
// TODO: Add your control notification handler code here
if (m_bSave == FALSE && AfxMessageBox("尚未更新!是否退出?", MB_YESNO | MB_ICONQUESTION) == IDNO)
{
return;
}
else
{
CDialog::OnOK();
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -