📄 saleorderform.cpp
字号:
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 + -