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

📄 saleorderform.cpp

📁 基于VC+SQL SERVER环境开发的企业商品销售系统.完整的数据库和原代码
💻 CPP
📖 第 1 页 / 共 4 页
字号:
		hTRes = m_pDepartmentRecordset.CreateInstance(_T("ADODB.Recordset"));
		if (SUCCEEDED(hTRes))
		{
			hTRes = m_pDepartmentRecordset->Open((LPTSTR)strSQL.GetBuffer(130),
			((CSaleApp*)AfxGetApp())->m_pConn.GetInterfacePtr(),
					adOpenDynamic,adLockPessimistic,adCmdText);
			if(SUCCEEDED(hTRes))
			{
				TRACE(_T("连接成功!\n"));
			//	CComboBox clientList=GetDlgItem(IDC_client);
			//	AfxMessageBox(((CSaleApp*)AfxGetApp())->GetStringFromVariant(m_pClientRecordset->GetCollect("clientID")));
				while(!(m_pDepartmentRecordset->adoEOF))
				{		
					m_departmentCombo.AddString(((CSaleApp*)AfxGetApp())->GetStringFromVariant(m_pDepartmentRecordset->GetCollect("departmentName")));
					m_pDepartmentRecordset->MoveNext();
				}
			}
		}
		m_pDepartmentRecordset->Close();


		strSQL="select * from saleContract where checked='T'";
		_RecordsetPtr m_pSaleContractRecordset;
		hTRes = m_pSaleContractRecordset.CreateInstance(_T("ADODB.Recordset"));
		if (SUCCEEDED(hTRes))
		{
			//----------------------------------------------------
			hTRes = m_pSaleContractRecordset->Open((LPTSTR)strSQL.GetBuffer(130),
			((CSaleApp*)AfxGetApp())->m_pConn.GetInterfacePtr(),
					adOpenDynamic,adLockPessimistic,adCmdText);
			if(SUCCEEDED(hTRes))
			{
				TRACE(_T("连接成功!\n"));
			//	CComboBox clientList=GetDlgItem(IDC_client);
			//	AfxMessageBox(((CSaleApp*)AfxGetApp())->GetStringFromVariant(m_pClientRecordset->GetCollect("clientID")));
				while(!(m_pSaleContractRecordset->adoEOF))
				{		
					m_contractIDCombo.AddString(((CSaleApp*)AfxGetApp())->GetStringFromVariant(m_pSaleContractRecordset->GetCollect("contractID")));
					m_pSaleContractRecordset->MoveNext();
				}
			}
		}
		m_pSaleContractRecordset->Close();



		strSQL="select * from saleType";
		_RecordsetPtr m_pSaleTypeRecordset;
		hTRes = m_pSaleTypeRecordset.CreateInstance(_T("ADODB.Recordset"));
		if (SUCCEEDED(hTRes))
		{
			//----------------------------------------------------
			hTRes = m_pSaleTypeRecordset->Open((LPTSTR)strSQL.GetBuffer(130),
			((CSaleApp*)AfxGetApp())->m_pConn.GetInterfacePtr(),
					adOpenDynamic,adLockPessimistic,adCmdText);
			if(SUCCEEDED(hTRes))
			{
				TRACE(_T("连接成功!\n"));
			//	CComboBox clientList=GetDlgItem(IDC_client);
			//	AfxMessageBox(((CSaleApp*)AfxGetApp())->GetStringFromVariant(m_pClientRecordset->GetCollect("clientID")));
				while(!(m_pSaleTypeRecordset->adoEOF))
				{		
					m_saleTypeCombo.AddString(((CSaleApp*)AfxGetApp())->GetStringFromVariant(m_pSaleTypeRecordset->GetCollect("saleTypeName")));
					m_pSaleTypeRecordset->MoveNext();
				}
			}
		}
		m_pSaleTypeRecordset->Close();

		strSQL="select * from quote where checked='T'";
		_RecordsetPtr m_pQuoteRecordset;
		hTRes = m_pQuoteRecordset.CreateInstance(_T("ADODB.Recordset"));
		if (SUCCEEDED(hTRes))
		{
			//----------------------------------------------------
			hTRes = m_pQuoteRecordset->Open((LPTSTR)strSQL.GetBuffer(130),
			((CSaleApp*)AfxGetApp())->m_pConn.GetInterfacePtr(),
					adOpenDynamic,adLockPessimistic,adCmdText);
			if(SUCCEEDED(hTRes))
			{
				TRACE(_T("连接成功!\n"));
			//	CComboBox clientList=GetDlgItem(IDC_client);
			//	AfxMessageBox(((CSaleApp*)AfxGetApp())->GetStringFromVariant(m_pClientRecordset->GetCollect("clientID")));
				while(!(m_pQuoteRecordset->adoEOF))
				{		
					m_quoteIDCombo.AddString(((CSaleApp*)AfxGetApp())->GetStringFromVariant(m_pQuoteRecordset->GetCollect("quoteID")));
					m_pQuoteRecordset->MoveNext();
				}
			}
		}
		m_pQuoteRecordset->Close();
		
		strSQL="select * from staff";
		_RecordsetPtr m_pStaffRecordset;
		hTRes = m_pStaffRecordset.CreateInstance(_T("ADODB.Recordset"));
		if (SUCCEEDED(hTRes))
		{
			//----------------------------------------------------
			hTRes = m_pStaffRecordset->Open((LPTSTR)strSQL.GetBuffer(130),
			((CSaleApp*)AfxGetApp())->m_pConn.GetInterfacePtr(),
					adOpenDynamic,adLockPessimistic,adCmdText);
			if(SUCCEEDED(hTRes))
			{
				TRACE(_T("连接成功!\n"));
			//	CComboBox clientList=GetDlgItem(IDC_client);
			//	AfxMessageBox(((CSaleApp*)AfxGetApp())->GetStringFromVariant(m_pClientRecordset->GetCollect("clientID")));
				while(!(m_pStaffRecordset->adoEOF))
				{		
					m_sellerCombo.AddString(((CSaleApp*)AfxGetApp())->GetStringFromVariant(m_pStaffRecordset->GetCollect("staffID")));
					m_pStaffRecordset->MoveNext();
				}
			}
		}
		m_pStaffRecordset->Close();


		strSQL="select * from payConditionType";
		_RecordsetPtr m_pPayConditionTypeRecordset;
		hTRes = m_pPayConditionTypeRecordset.CreateInstance(_T("ADODB.Recordset"));
		if (SUCCEEDED(hTRes))
		{
			//----------------------------------------------------
			hTRes = m_pPayConditionTypeRecordset->Open((LPTSTR)strSQL.GetBuffer(130),
			((CSaleApp*)AfxGetApp())->m_pConn.GetInterfacePtr(),
					adOpenDynamic,adLockPessimistic,adCmdText);
			if(SUCCEEDED(hTRes))
			{
				TRACE(_T("连接成功!\n"));
			//	CComboBox clientList=GetDlgItem(IDC_client);
			//	AfxMessageBox(((CSaleApp*)AfxGetApp())->GetStringFromVariant(m_pClientRecordset->GetCollect("clientID")));
				while(!(m_pPayConditionTypeRecordset->adoEOF))
				{		
					m_payConditionCombo.AddString(((CSaleApp*)AfxGetApp())->GetStringFromVariant(m_pPayConditionTypeRecordset->GetCollect("payConditionTypeName")));
					m_pPayConditionTypeRecordset->MoveNext();
				}
			}
		}
		m_pPayConditionTypeRecordset->Close();


		tx_quoteID->EnableWindow(true);
		tx_contractID->EnableWindow(true);
		tx_orderFormID->EnableWindow(false);
		tx_companyContractPerson->EnableWindow(true);
		tx_saleType->EnableWindow(true);
		tx_clientContractPerson->EnableWindow(true);
		tx_subscription->EnableWindow(true);
		tx_transportType->EnableWindow(true);
		tx_clientName->EnableWindow(true);
		tx_seller->EnableWindow(true);
		tx_department->EnableWindow(true);
		tx_payCondition->EnableWindow(true);
		tx_consignmentAddress->EnableWindow(true);
		tx_formDate->EnableWindow(true);
		tx_remark->EnableWindow(true);

		flag=2;
		
		bt_addLine->EnableWindow(true);
		bt_deleteLine->EnableWindow(true);
		bt_save->EnableWindow(true);
		}

	UpdateData(false);
}

void CSaleOrderForm::OnDelete() 
{
	CAffirm dlg;
	if(dlg.DoModal()!=IDOK)
	{
		return;
	}
	_variant_t RecordsAffected;
	CString strSQL;
	strSQL="delete from orderForm where orderFormID='";
	strSQL=strSQL+m_orderFormID+"'";
	(((CSaleApp*)AfxGetApp())->m_pConn)->Execute((_bstr_t)strSQL,&RecordsAffected,adCmdText);
	
	
	m_orderFormList.DeleteAllItems();
	UpdateData(false);
	AfxMessageBox("该订单已删除!");
	OnNextPage();	
	
}

void CSaleOrderForm::OnAddLine() 
{
	CSelectCommodityForQuote dlg;
	if(dlg.DoModal()==IDOK)
	{						
		int i=m_orderFormList.GetItemCount();
		m_orderFormList.InsertItem(i,dlg.commodityID);
		m_orderFormList.SetItemText(i,1,dlg.commodityName);				
		m_orderFormList.SetItemText(i,2,dlg.price);
		CString str;
		str.Format("%f",dlg.m_truePrice);
		m_orderFormList.SetItemText(i,3,str);
		str.Format("%d",dlg.m_num);
		m_orderFormList.SetItemText(i,4,str);
								
		AfxMessageBox("插入成功!");
	}
		
	else
	{
		AfxMessageBox("没有增加商品!");
	}
}

void CSaleOrderForm::OnDeleteLine() 
{
	CAffirm dlg;
	if(dlg.DoModal()!=IDOK)
	{
		return;
	}
	POSITION pos = m_orderFormList.GetFirstSelectedItemPosition();
	if(pos)
	{
		int nFirstSelItem = m_orderFormList.GetNextSelectedItem(pos);		
		m_orderFormList.DeleteItem(nFirstSelItem);
	}		
}

void CSaleOrderForm::OnSave() 
{
	UpdateData(true);
	_RecordsetPtr m_pRecordset;    //用于创建一个查询记录集


	CString strSQL;

	if(flag==1)         //添加
	{
		m_pOrderFormRecordset->AddNew();

		m_pOrderFormRecordset->PutCollect("quoteID",_variant_t(m_quoteID.Left(25)));
		m_pOrderFormRecordset->PutCollect("contractID",_variant_t(m_contractID.Left(25)));
		m_pOrderFormRecordset->PutCollect("orderFormID",_variant_t(m_orderFormID.Left(25)));
		m_pOrderFormRecordset->PutCollect("companyContractPerson",_variant_t(m_companyContractPerson.Left(50)));
		m_pOrderFormRecordset->PutCollect("saleType",_variant_t(m_saleType.Left(50)));
		m_pOrderFormRecordset->PutCollect("clientContractPerson",_variant_t(m_clientContractPerson.Left(50)));
		m_pOrderFormRecordset->PutCollect("subscription",_variant_t(m_subscription));
		m_pOrderFormRecordset->PutCollect("transportType",_variant_t(m_transportType.Left(50)));
		m_pOrderFormRecordset->PutCollect("clientName",_variant_t(m_clientName.Left(50)));
		m_pOrderFormRecordset->PutCollect("seller",_variant_t(m_seller.Left(50)));
		m_pOrderFormRecordset->PutCollect("department",_variant_t(m_department.Left(50)));
		m_pOrderFormRecordset->PutCollect("payCondition",_variant_t(m_payCondition.Left(50)));
		m_pOrderFormRecordset->PutCollect("consignmentAddress",_variant_t(m_consignmentAddress.Left(50)));
		m_pOrderFormRecordset->PutCollect("formDate",_variant_t(m_formDate));
		m_pOrderFormRecordset->PutCollect("remark",_variant_t(m_remark.Left(100)));
		m_pOrderFormRecordset->PutCollect("checked",_variant_t("F"));

		m_pOrderFormRecordset->Update();
		strSQL="SELECT * FROM orderFormCommidity" ;	

		try
		{
			HRESULT hTRes;
			hTRes = m_pRecordset.CreateInstance(_T("ADODB.Recordset"));
			if (SUCCEEDED(hTRes))
			{
				//----------------------------------------------------
				hTRes = m_pRecordset->Open((LPTSTR)strSQL.GetBuffer(130),
					((CSaleApp*)AfxGetApp())->m_pConn.GetInterfacePtr(),
					adOpenDynamic,adLockPessimistic,adCmdText);

				if(SUCCEEDED(hTRes))
				{
					TRACE(_T("连接成功!\n"));
					//------------------------------------------
					for(int i=0;i<m_orderFormList.GetItemCount();i++)
					{
						m_pRecordset->AddNew();
						m_pRecordset->PutCollect("orderFormID",_variant_t(m_orderFormID));
						m_pRecordset->PutCollect("commidityID",_variant_t(m_orderFormList.GetItemText(i,0)));
						m_pRecordset->PutCollect("num",_variant_t(m_orderFormList.GetItemText(i,4)));
						m_pRecordset->PutCollect("price",_variant_t(m_orderFormList.GetItemText(i,3)));
						m_pRecordset->Update();
					}
					
					AfxMessageBox("保存成功!");
				}
			}
		}
		catch(_com_error e)///捕捉异常
		{
			CString errormessage;
			MessageBox("创建记录集失败!","错误");
		}
	
	}
	else if(flag==2)      //修改
	{
		_variant_t RecordsAffected;
		CString strSQL;
		strSQL="delete from orderFormCommidity where orderFormID='";
		strSQL=strSQL+m_orderFormID+"'";
		(((CSaleApp*)AfxGetApp())->m_pConn)->Execute((_bstr_t)strSQL,&RecordsAffected,adCmdText);
		

		m_pOrderFormRecordset->PutCollect("quoteID",_variant_t(m_quoteID.Left(25)));
		m_pOrderFormRecordset->PutCollect("contractID",_variant_t(m_contractID.Left(25)));
		m_pOrderFormRecordset->PutCollect("orderFormID",_variant_t(m_orderFormID.Left(25)));
		m_pOrderFormRecordset->PutCollect("companyContractPerson",_variant_t(m_companyContractPerson.Left(50)));
		m_pOrderFormRecordset->PutCollect("saleType",_variant_t(m_saleType.Left(50)));
		m_pOrderFormRecordset->PutCollect("clientContractPerson",_variant_t(m_clientContractPerson.Left(50)));
		m_pOrderFormRecordset->PutCollect("subscription",_variant_t(m_subscription));
		m_pOrderFormRecordset->PutCollect("transportType",_variant_t(m_transportType.Left(50)));
		m_pOrderFormRecordset->PutCollect("clientName",_variant_t(m_clientName.Left(50)));
		m_pOrderFormRecordset->PutCollect("seller",_variant_t(m_seller.Left(50)));
		m_pOrderFormRecordset->PutCollect("department",_variant_t(m_department.Left(50)));
		m_pOrderFormRecordset->PutCollect("payCondition",_variant_t(m_payCondition.Left(50)));
		m_pOrderFormRecordset->PutCollect("consignmentAddress",_variant_t(m_consignmentAddress.Left(50)));
		m_pOrderFormRecordset->PutCollect("formDate",_variant_t(m_formDate));
		m_pOrderFormRecordset->PutCollect("remark",_variant_t(m_remark.Left(100)));
		m_pOrderFormRecordset->PutCollect("checked",_variant_t("F"));

		m_pOrderFormRecordset->Update();
		strSQL="SELECT * FROM orderFormCommidity" ;	

		try
		{
			HRESULT hTRes;
			hTRes = m_pRecordset.CreateInstance(_T("ADODB.Recordset"));
			if (SUCCEEDED(hTRes))
			{
				//----------------------------------------------------
				hTRes = m_pRecordset->Open((LPTSTR)strSQL.GetBuffer(130),
					((CSaleApp*)AfxGetApp())->m_pConn.GetInterfacePtr(),
					adOpenDynamic,adLockPessimistic,adCmdText);

				if(SUCCEEDED(hTRes))
				{
					TRACE(_T("连接成功!\n"));
					//------------------------------------------
					for(int i=0;i<m_orderFormList.GetItemCount();i++)
					{
						m_pRecordset->AddNew();
						m_pRecordset->PutCollect("orderFormID",_variant_t(m_orderFormID.Left(25)));
						m_pRecordset->PutCollect("commidityID",_variant_t(m_orderFormList.GetItemText(i,0)));
						m_pRecordset->PutCollect("num",_variant_t(m_orderFormList.GetItemText(i,4)));
						m_pRecordset->PutCollect("price",_variant_t(m_orderFormList.GetItemText(i,3)));
						m_pRecordset->Update();
					}
					
					AfxMessageBox("保存成功!");
				}
			}
		}
		catch(_com_error e)///捕捉异常
		{
			CString errormessage;
			MessageBox("创建记录集失败!","错误");
		}
		
	}
	bt_add->EnableWindow(true);
	bt_prevPage->EnableWindow(true);
	bt_firstPage->EnableWindow(true);
	bt_nextPage->EnableWindow(true);
	bt_lastPage->EnableWindow(true);
	bt_modify->EnableWindow(true);

⌨️ 快捷键说明

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