⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 jinhuodan.cpp

📁 商品进存销管理系统 包含发票
💻 CPP
字号:
// jinhuodan.cpp : implementation file
//

#include "stdafx.h"
#include "glxt.h"
#include "jinhuodan.h"
#include "fpmxbSet.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif

/////////////////////////////////////////////////////////////////////////////
// jinhuodan dialog


jinhuodan::jinhuodan(CWnd* pParent /*=NULL*/)
	: CDialog(jinhuodan::IDD, pParent)
{
	//{{AFX_DATA_INIT(jinhuodan)
	m_Tickno = _T("");
	m_Gno = _T("");
	m_Gprice = 0.0;
	m_subtotal = 0.0;
	m_Tcount = 0;
	//}}AFX_DATA_INIT
}


void jinhuodan::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(jinhuodan)
	DDX_Control(pDX, IDC_LIST1, m_list);
	DDX_Text(pDX, IDC_EDIT1, m_Tickno);
	DDX_Text(pDX, IDC_EDIT2, m_Gno);
	DDX_Text(pDX, IDC_EDIT4, m_Gprice);
	DDX_Text(pDX, IDC_EDIT5, m_subtotal);
	DDX_Text(pDX, IDC_EDIT3, m_Tcount);
	//}}AFX_DATA_MAP
}


BEGIN_MESSAGE_MAP(jinhuodan, CDialog)
	//{{AFX_MSG_MAP(jinhuodan)
	ON_BN_CLICKED(IDC_BUTTON1, OnButtonadd)
	ON_BN_CLICKED(IDC_BUTTON2, OnButtonshanchu)
	ON_BN_CLICKED(IDC_BUTTON3, OnButtonupdate)
	ON_BN_CLICKED(IDC_BUTTON4, OnButtonxianshi)
	ON_NOTIFY(NM_CLICK, IDC_LIST1, OnClickList1)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// jinhuodan message handlers

void jinhuodan::OnButtonadd() 
{
	// TODO: Add your control notification handler code here
if(!m_rs.IsOpen())
	   m_rs.Open();
		try
	{
		m_rs.AddNew();
		UpdateData(TRUE);
		
		m_rs.m_Tickno=m_Tickno;
        m_rs.m_Gno=m_Gno;
		m_rs.m_Tcount=m_Tcount;
		m_rs.m_Gprice=m_Gprice;
        m_rs.m_subtotal=m_subtotal;
   
		m_rs.Update();
		
	}
   catch(CDBException * e)
   {
	   AfxMessageBox(e->m_strError,MB_ICONEXCLAMATION);
		e->Delete();	
		//m_rs.MoveFirst();
		
	    m_Tickno=m_rs.m_Tickno;
	    m_Gno=m_rs.m_Gno;
	    m_Tcount=m_rs.m_Tcount;
	    m_Gprice=m_rs.m_Gprice;
	    m_subtotal=m_rs.m_subtotal;
	  
		UpdateData(FALSE);
   }
   try
	{
		m_rs.Requery();
	}
	catch(CDBException * e)
	{
	   AfxMessageBox("Can not Requery!",MB_ICONEXCLAMATION);
	   e->Delete();
	}
   Refresh();
   m_rs.Close();		
}

void jinhuodan::OnButtonshanchu() 
{
	// TODO: Add your control notification handler code here
if(!m_rs.IsOpen())
	m_rs.Open();
	
	
	if(m_rs.IsEOF()||m_rs.IsBOF())
		return;
	try
	{
		m_rs.Delete();

	}
	catch(CDBException * e)
	{
		AfxMessageBox(e->m_strError,MB_ICONEXCLAMATION);
		e->Delete();
		return;
	}
	    try
	{
		m_rs.Requery();
	}
	catch(CDBException * e)
	{
	   AfxMessageBox("Can not Requery!",MB_ICONEXCLAMATION);
	   e->Delete();
	}
	    m_rs.MoveFirst();
	   
        m_Tickno=m_rs.m_Tickno;
	    m_Gno=m_rs.m_Gno;
	    m_Tcount=m_rs.m_Tcount;
	    m_Gprice=m_rs.m_Gprice;
	    m_subtotal=m_rs.m_subtotal;
  
	    UpdateData(FALSE);
		 Refresh();
        m_rs.Close();	
}

void jinhuodan::OnButtonupdate() 
{
	// TODO: Add your control notification handler code here
	if(!m_rs.IsOpen())
	   m_rs.Open();
	
	CString cstickno,csgno;
	int tcount;
	float dgprice,dsubtotal;
	while(m_rs.m_Tickno!=m_Tickno)
	{
		m_rs.MoveNext();
	}
       
	    cstickno=m_rs.m_Tickno;
	    csgno=m_rs.m_Gno;
	    tcount=m_rs.m_Tcount;
	    dgprice=m_rs.m_Gprice;
	    dsubtotal=m_rs.m_subtotal;
	try
	{
		m_rs.Edit();
		UpdateData(TRUE);
		
		
	
		m_rs.m_Tickno=m_Tickno;
        m_rs.m_Gno=m_Gno;
		m_rs.m_Tcount=m_Tcount;
		m_rs.m_Gprice=m_Gprice;
        m_rs.m_subtotal=m_subtotal;
    
		
		m_rs.Update();
	}
	catch(CDBException * e)
	{
		AfxMessageBox(e->m_strError,MB_ICONEXCLAMATION);
		e->Delete();
	
		m_Tickno=cstickno;
		m_Gno=csgno;
		m_Tcount=tcount;
		m_Gprice=dgprice;
		m_subtotal=dsubtotal;
		UpdateData(FALSE);
	}
    Refresh() ;
    m_rs.Close(); 	
	
}

void jinhuodan::OnButtonxianshi() 
{
	// TODO: Add your control notification handler code here
		if(!m_rs.IsOpen())
	   m_rs.Open();
	   m_list.DeleteAllItems();
       int n = 0 ;
	  while(!m_rs.IsEOF())
	  {
	    m_list.InsertItem(n,"");
        CString s;
		
		s.Format("%s",m_rs.m_Tickno);
        m_list.SetItemText(n,0,s);
		s.Format("%s",m_rs.m_Gno);
     	m_list.SetItemText(n,1,s);
		s.Format("%s",m_rs.m_Tcount);
     	m_list.SetItemText(n,2,s);
		s.Format("%.1f",m_rs.m_Gprice);
     	m_list.SetItemText(n,3,s);
        s.Format("%.1f",m_rs.m_subtotal);
     	m_list.SetItemText(n,4,s);
        m_rs.MoveNext();
		n++;
	  }
	  m_rs.Close(); 
	
}
void jinhuodan::Refresh()
{
 if(!m_rs.IsOpen())
	   m_rs.Open();
	m_list.DeleteAllItems();
    int n = 0 ;
    m_rs.MoveFirst();
	  while(!m_rs.IsEOF())
	  {
	    m_list.InsertItem(n,"");
        CString s;
		
		s.Format("%s",m_rs.m_Tickno);
        m_list.SetItemText(n,0,s);
		s.Format("%s",m_rs.m_Gno);
     	m_list.SetItemText(n,1,s);
		s.Format("%s",m_rs.m_Tcount);
     	m_list.SetItemText(n,2,s);
		s.Format("%.1f",m_rs.m_Gprice);
     	m_list.SetItemText(n,3,s);
        s.Format("%.1f",m_rs.m_subtotal);
     	m_list.SetItemText(n,4,s);
        m_rs.MoveNext();
		n++;
	  }
}
void jinhuodan::OnClickList1(NMHDR* pNMHDR, LRESULT* pResult) 
{
int index=m_list.GetNextItem(-1,LVNI_SELECTED);
     if(index!=-1)
 	{
 	   
 	   

       m_Tickno=m_list.GetItemText(index,0);
       m_Gno=m_list.GetItemText(index,1);
       int(m_Tcount)=atof(m_list.GetItemText(index,2));
 	   double(m_Gprice)=atof(m_list.GetItemText(index,3));
       double(m_subtotal)=atof(m_list.GetItemText(index,4));
       UpdateData(FALSE);	
	*pResult = 0;
	}
	 m_db.Open(_T("gshDSN"));
     m_rs.m_pDatabase=&m_db;
     m_rs.Open();
     m_Tickno=m_rs.m_Tickno;
	 m_Gno=m_rs.m_Gno;
	 m_Tcount=m_rs.m_Tcount;
	 m_Gprice=m_rs.m_Gprice;
	 m_subtotal=m_rs.m_subtotal;
     UpdateData(FALSE);


	*pResult = 0;
}
BOOL jinhuodan::OnInitDialog()
{
	CDialog::OnInitDialog();
	m_list.SetExtendedStyle(LVS_EX_GRIDLINES|LVS_EX_FULLROWSELECT );
	
	m_list.InsertColumn(0,"发票号",LVCFMT_LEFT,200);
	m_list.InsertColumn(1,"商品编号",LVCFMT_LEFT,100);
	m_list.InsertColumn(2,"数量",LVCFMT_LEFT,80);
	m_list.InsertColumn(3,"单价",LVCFMT_LEFT,80);
	m_list.InsertColumn(4,"小计",LVCFMT_LEFT,200);

    

	return TRUE;
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -