📄 invoice.cpp
字号:
void CInvoice::OnCancellation()
{
int invoiceID=((CSaleApp*)AfxGetApp())->m_pIDRecordset->GetCollect("invoiceID").intVal;
CString str;
str.Format("%d",invoiceID-1);
((CSaleApp*)AfxGetApp())->m_pIDRecordset->PutCollect("invoiceID",_variant_t(str));
((CSaleApp*)AfxGetApp())->m_pIDRecordset->Update();
bt_cancellation->EnableWindow(false);
OnNextPage();
}
void CInvoice::OnAuditing()
{
CString str;
GetDlgItemText(IDC_auditing,str);
if(str=="审核")
{
if(m_pInvoiceRecordset->adoEOF)
m_pInvoiceRecordset->MovePrevious();
m_pInvoiceRecordset->PutCollect("checked",_variant_t("T"));
m_pInvoiceRecordset->Update();
AfxMessageBox("通过审核!");
bt_modify->EnableWindow(false);
SetDlgItemText(IDC_auditing,"弃审");
}
else
{
if(m_pInvoiceRecordset->adoEOF)
m_pInvoiceRecordset->MovePrevious();
m_pInvoiceRecordset->PutCollect("checked",_variant_t("F"));
m_pInvoiceRecordset->Update();
AfxMessageBox("审核取消!");
bt_modify->EnableWindow(true);
SetDlgItemText(IDC_auditing,"审核");
}
}
void CInvoice::OnExit()
{
this->OnCancel();
}
BOOL CInvoice::OnInitDialog()
{
CDialog::OnInitDialog();
tx_clientName=GetDlgItem(IDC_clientName);
tx_department=GetDlgItem(IDC_department);
tx_formDate=GetDlgItem(IDC_formDate);
tx_saleType=GetDlgItem(IDC_saleType);
tx_seller=GetDlgItem(IDC_seller);
tx_payCondition=GetDlgItem(IDC_payCondition);
tx_taxNO=GetDlgItem(IDC_taxNO);
tx_bank=GetDlgItem(IDC_bank);
tx_account=GetDlgItem(IDC_account);
tx_remark=GetDlgItem(IDC_remark);
tx_invoiceID=GetDlgItem(IDC_invoiceID);
bt_firstPage=GetDlgItem(IDC_firstPage);
bt_prevPage=GetDlgItem(IDC_prevPage);
bt_nextPage=GetDlgItem(IDC_nextPage);
bt_lastPage=GetDlgItem(IDC_lastPage);
bt_add=GetDlgItem(IDC_new);
bt_save=GetDlgItem(IDC_save);
bt_modify=GetDlgItem(IDC_modify);
bt_delete=GetDlgItem(IDC_delete);
bt_deleteLine=GetDlgItem(IDC_deleteLine);
bt_cancellation=GetDlgItem(IDC_cancellation);
bt_checked=GetDlgItem(IDC_auditing);
tx_clientName->EnableWindow(false);
tx_department->EnableWindow(false);
tx_formDate->EnableWindow(false);
tx_saleType->EnableWindow(false);
tx_seller->EnableWindow(false);
tx_payCondition->EnableWindow(false);
tx_taxNO->EnableWindow(false);
tx_bank->EnableWindow(false);
tx_account->EnableWindow(false);
tx_remark->EnableWindow(false);
tx_invoiceID->EnableWindow(false);
DWORD style;
style=m_invoiceCommidityList.GetExStyle();
style=(style|LVS_EX_GRIDLINES|LVS_EX_FULLROWSELECT)&(~LVS_EX_CHECKBOXES) ;
m_invoiceCommidityList.SetExtendedStyle(style);
m_invoiceCommidityList.InsertColumn(0,"单据号",LVCFMT_LEFT,100);
m_invoiceCommidityList.InsertColumn(1,"产品编号",LVCFMT_LEFT,100);
m_invoiceCommidityList.InsertColumn(2,"产品名称",LVCFMT_LEFT,100);
m_invoiceCommidityList.InsertColumn(3,"规格",LVCFMT_LEFT,100);
m_invoiceCommidityList.InsertColumn(4,"型号",LVCFMT_LEFT,100);
m_invoiceCommidityList.InsertColumn(5,"数量",LVCFMT_LEFT,100);
m_invoiceCommidityList.InsertColumn(6,"单价",LVCFMT_LEFT,100);
m_invoiceCommidityList.InsertColumn(7,"合计",LVCFMT_LEFT,100);
CString strSQL;
HRESULT hTRes;
strSQL="select * from client";
_RecordsetPtr m_pClientRecordset;
hTRes = m_pClientRecordset.CreateInstance(_T("ADODB.Recordset"));
if (SUCCEEDED(hTRes))
{
//----------------------------------------------------
hTRes = m_pClientRecordset->Open((LPTSTR)strSQL.GetBuffer(130),
((CSaleApp*)AfxGetApp())->m_pConn.GetInterfacePtr(),
adOpenDynamic,adLockPessimistic,adCmdText);
if(SUCCEEDED(hTRes))
{
TRACE(_T("连接成功!\n"));
while(!(m_pClientRecordset->adoEOF))
{
m_clientCombo.AddString(((CSaleApp*)AfxGetApp())->GetStringFromVariant(m_pClientRecordset->GetCollect("clientID")));
m_pClientRecordset->MoveNext();
}
}
}
m_pClientRecordset->Close();
strSQL="select * from department";
_RecordsetPtr m_pDepartmentRecordset;
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"));
while(!(m_pDepartmentRecordset->adoEOF))
{
m_departmentCombo.AddString(((CSaleApp*)AfxGetApp())->GetStringFromVariant(m_pDepartmentRecordset->GetCollect("departmentName")));
m_pDepartmentRecordset->MoveNext();
}
}
}
m_pDepartmentRecordset->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"));
while(!(m_pSaleTypeRecordset->adoEOF))
{
m_saleTypeCombo.AddString(((CSaleApp*)AfxGetApp())->GetStringFromVariant(m_pSaleTypeRecordset->GetCollect("saleTypeName")));
m_pSaleTypeRecordset->MoveNext();
}
}
}
m_pSaleTypeRecordset->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"));
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"));
while(!(m_pPayConditionTypeRecordset->adoEOF))
{
m_payConditionCombo.AddString(((CSaleApp*)AfxGetApp())->GetStringFromVariant(m_pPayConditionTypeRecordset->GetCollect("payConditionTypeName")));
m_pPayConditionTypeRecordset->MoveNext();
}
}
}
m_pPayConditionTypeRecordset->Close();
_RecordsetPtr m_pRecordset; //用于创建一个查询记录集
//-----------------------------------------------
strSQL="SELECT * FROM invoice";
try
{
hTRes = m_pInvoiceRecordset.CreateInstance(_T("ADODB.Recordset"));
if (SUCCEEDED(hTRes))
{
//----------------------------------------------------
hTRes = m_pInvoiceRecordset->Open((LPTSTR)strSQL.GetBuffer(130),
((CSaleApp*)AfxGetApp())->m_pConn.GetInterfacePtr(),
adOpenDynamic,adLockPessimistic,adCmdText);
if(SUCCEEDED(hTRes))
{
TRACE(_T("连接成功!\n"));
if(invoiceID!="")
{
while(!(m_pInvoiceRecordset->adoEOF))
{
CString str2=((CSaleApp*)AfxGetApp())->GetStringFromVariant(m_pInvoiceRecordset->GetCollect("invoiceID"));
if(((CSaleApp*)AfxGetApp())->compareTwoCString(invoiceID,str2)==0)
break;
else
m_pInvoiceRecordset->MoveNext();
}
}
if (!(m_pInvoiceRecordset->adoEOF))
{
m_clientName=((CSaleApp*)AfxGetApp())->GetStringFromVariant(m_pInvoiceRecordset->GetCollect("clientName"));
m_department=((CSaleApp*)AfxGetApp())->GetStringFromVariant(m_pInvoiceRecordset->GetCollect("department"));
DATE dt;
COleDateTime da;
dt=m_pInvoiceRecordset->GetCollect("formDate").date;
da=COleDateTime(dt);
m_formDate.SetDate(da.GetYear(),da.GetMonth(),da.GetDay());
m_saleType=((CSaleApp*)AfxGetApp())->GetStringFromVariant(m_pInvoiceRecordset->GetCollect("saleType"));
m_seller=((CSaleApp*)AfxGetApp())->GetStringFromVariant(m_pInvoiceRecordset->GetCollect("seller"));
m_payCondition=((CSaleApp*)AfxGetApp())->GetStringFromVariant(m_pInvoiceRecordset->GetCollect("payCondition"));
m_taxNO=((CSaleApp*)AfxGetApp())->GetStringFromVariant(m_pInvoiceRecordset->GetCollect("taxNO"));
m_bank=((CSaleApp*)AfxGetApp())->GetStringFromVariant(m_pInvoiceRecordset->GetCollect("bank"));
m_account=((CSaleApp*)AfxGetApp())->GetStringFromVariant(m_pInvoiceRecordset->GetCollect("account"));
m_remark=((CSaleApp*)AfxGetApp())->GetStringFromVariant(m_pInvoiceRecordset->GetCollect("remark"));
m_invoiceID=((CSaleApp*)AfxGetApp())->GetStringFromVariant(m_pInvoiceRecordset->GetCollect("invoiceID"));
CString checked;
checked=((CSaleApp*)AfxGetApp())->GetStringFromVariant(m_pInvoiceRecordset->GetCollect("checked"));
if(checked=="T")
{
bt_modify->EnableWindow(false);
SetDlgItemText(IDC_auditing,"弃审");
}
else
{
bt_modify->EnableWindow(true);
SetDlgItemText(IDC_auditing,"审核");
}
strSQL="select * from invoiceCommidity where invoiceID='";
strSQL=strSQL+((CSaleApp*)AfxGetApp())->GetStringFromVariant(m_pInvoiceRecordset->GetCollect("invoiceID"));
strSQL+="'";
}
hTRes = m_pRecordset.CreateInstance(_T("ADODB.Recordset"));
hTRes = m_pRecordset->Open((LPTSTR)strSQL.GetBuffer(130),
((CSaleApp*)AfxGetApp())->m_pConn.GetInterfacePtr(),
adOpenDynamic,adLockPessimistic,adCmdText);
int i=0;
while(!(m_pRecordset->adoEOF))
{
m_invoiceCommidityList.InsertItem(i,((CSaleApp*)AfxGetApp())->GetStringFromVariant(m_pRecordset->GetCollect("consignmentFormID")));
m_invoiceCommidityList.SetItemText(i,1,((CSaleApp*)AfxGetApp())->GetStringFromVariant(m_pRecordset->GetCollect("commidityID")));
m_invoiceCommidityList.SetItemText(i,2,((CSaleApp*)AfxGetApp())->GetStringFromVariant(m_pRecordset->GetCollect("commidityName")));
m_invoiceCommidityList.SetItemText(i,3,((CSaleApp*)AfxGetApp())->GetStringFromVariant(m_pRecordset->GetCollect("standard")));
m_invoiceCommidityList.SetItemText(i,4,((CSaleApp*)AfxGetApp())->GetStringFromVariant(m_pRecordset->GetCollect("model")));
m_invoiceCommidityList.SetItemText(i,5,((CSaleApp*)AfxGetApp())->GetStringFromVariant(m_pRecordset->GetCollect("num")));
m_invoiceCommidityList.SetItemText(i,6,((CSaleApp*)AfxGetApp())->GetStringFromVariant(m_pRecordset->GetCollect("price")));
m_invoiceCommidityList.SetItemText(i,7,((CSaleApp*)AfxGetApp())->GetStringFromVariant(m_pRecordset->GetCollect("total")));
if (!(m_pRecordset->adoEOF))
{
m_pRecordset->MoveNext();
i++;
}
}
}
}
}
catch(_com_error e)///捕捉异常
{
CString errormessage;
MessageBox("创建记录集失败!","错误");
}
flag=0;
bt_deleteLine->EnableWindow(false);
bt_prevPage->EnableWindow(false);
bt_firstPage->EnableWindow(false);
// bt_addLine->EnableWindow(false);
bt_cancellation->EnableWindow(false);
bt_save->EnableWindow(false);
UpdateData(false);
return TRUE; // return TRUE unless you set the focus to a control
// EXCEPTION: OCX Property Pages should return FALSE
}
void CInvoice::OnClickList(NMHDR* pNMHDR, LRESULT* pResult)
{
// TODO: Add your control notification handler code here
*pResult = 0;
}
void CInvoice::OnSelchangeClientName()
{
UpdateData(true);
m_invoiceCommidityList.DeleteAllItems();
CString strSQL;
HRESULT hTRes;
strSQL="select * from invoiceView where clientName='";
strSQL=strSQL+m_clientName+"'";
_RecordsetPtr m_pInvoiceCommidityRecordset;
hTRes = m_pInvoiceCommidityRecordset.CreateInstance(_T("ADODB.Recordset"));
if (SUCCEEDED(hTRes))
{
//----------------------------------------------------
hTRes = m_pInvoiceCommidityRecordset->Open((LPTSTR)strSQL.GetBuffer(130),
((CSaleApp*)AfxGetApp())->m_pConn.GetInterfacePtr(),
adOpenDynamic,adLockPessimistic,adCmdText);
if(SUCCEEDED(hTRes))
{
TRACE(_T("连接成功!\n"));
int i=0;
while(!(m_pInvoiceCommidityRecordset->adoEOF))
{
m_invoiceCommidityList.InsertItem(i,(LPCTSTR)(_bstr_t)m_pInvoiceCommidityRecordset->GetCollect("consignmentFormID"));
m_invoiceCommidityList.SetItemText(i,1,(LPCTSTR)(_bstr_t)m_pInvoiceCommidityRecordset->GetCollect("commidityID"));
m_invoiceCommidityList.SetItemText(i,2,(LPCTSTR)(_bstr_t)m_pInvoiceCommidityRecordset->GetCollect("commidityName"));
m_invoiceCommidityList.SetItemText(i,3,(LPCTSTR)(_bstr_t)m_pInvoiceCommidityRecordset->GetCollect("standard"));
m_invoiceCommidityList.SetItemText(i,4,(LPCTSTR)(_bstr_t)m_pInvoiceCommidityRecordset->GetCollect("model"));
m_invoiceCommidityList.SetItemText(i,5,(LPCTSTR)(_bstr_t)m_pInvoiceCommidityRecordset->GetCollect("num"));
m_invoiceCommidityList.SetItemText(i,6,(LPCTSTR)(_bstr_t)m_pInvoiceCommidityRecordset->GetCollect("truePrice"));
m_invoiceCommidityList.SetItemText(i,7,(LPCTSTR)(_bstr_t)m_pInvoiceCommidityRecordset->GetCollect("total"));
m_pInvoiceCommidityRecordset->MoveNext();
i++;
}
}
}
m_pInvoiceCommidityRecordset->Close();
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -