📄 searchmaterialoutputform.cpp
字号:
// SearchMaterialOutputForm.cpp : implementation file
//
#include "stdafx.h"
#include "Store.h"
#include "SearchMaterialOutputForm.h"
#include "MaterialOutputForm.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// CSearchMaterialOutputForm dialog
CSearchMaterialOutputForm::CSearchMaterialOutputForm(CWnd* pParent /*=NULL*/)
: CDialog(CSearchMaterialOutputForm::IDD, pParent)
{
//{{AFX_DATA_INIT(CSearchMaterialOutputForm)
m_formDateBegin = COleDateTime::GetCurrentTime();
m_formDateEnd = COleDateTime::GetCurrentTime();
m_materialOutputFormID = _T("");
m_storeHouse = _T("");
m_materialReceiveFormID = _T("");
m_produceDepartment = _T("");
m_materialName = _T("");
m_dealer = _T("");
//}}AFX_DATA_INIT
}
void CSearchMaterialOutputForm::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CSearchMaterialOutputForm)
DDX_Control(pDX, IDC_dealer, m_dealerCombo);
DDX_Control(pDX, IDC_materialName, m_materialNameCombo);
DDX_Control(pDX, IDC_receiveDepartment, m_produceDepartmentCombo);
DDX_Control(pDX, IDC_materialReceiveID, m_materialReceiveFormIDCombo);
DDX_Control(pDX, IDC_storeHouse, m_storeHouseCombo);
DDX_Control(pDX, IDC_materialOutputFormID, m_materialOutputFormIDCombo);
DDX_Control(pDX, IDC_LIST2, m_materialList);
DDX_Control(pDX, IDC_LIST1, m_formList);
DDX_DateTimeCtrl(pDX, IDC_formDateBegin, m_formDateBegin);
DDX_DateTimeCtrl(pDX, IDC_formDateEnd, m_formDateEnd);
DDX_CBString(pDX, IDC_materialOutputFormID, m_materialOutputFormID);
DDX_CBString(pDX, IDC_storeHouse, m_storeHouse);
DDX_CBString(pDX, IDC_materialReceiveID, m_materialReceiveFormID);
DDX_CBString(pDX, IDC_receiveDepartment, m_produceDepartment);
DDX_CBString(pDX, IDC_materialName, m_materialName);
DDX_CBString(pDX, IDC_dealer, m_dealer);
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(CSearchMaterialOutputForm, CDialog)
//{{AFX_MSG_MAP(CSearchMaterialOutputForm)
ON_NOTIFY(NM_CLICK, IDC_LIST1, OnClickList1)
ON_NOTIFY(NM_DBLCLK, IDC_LIST1, OnDblclkList1)
ON_BN_CLICKED(IDC_search, OnSearch)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CSearchMaterialOutputForm message handlers
BOOL CSearchMaterialOutputForm::OnInitDialog()
{
CDialog::OnInitDialog();
DWORD style;
style=m_formList.GetExStyle();
style=(style|LVS_EX_GRIDLINES|LVS_EX_FULLROWSELECT)&(~LVS_EX_CHECKBOXES) ;
m_formList.SetExtendedStyle(style);
m_formList.InsertColumn(0,"材料出库单号",LVCFMT_LEFT,100);
m_formList.InsertColumn(1,"领料单号",LVCFMT_LEFT,100);
m_formList.InsertColumn(2,"仓库名称",LVCFMT_LEFT,100);
m_formList.InsertColumn(3,"领用部门",LVCFMT_LEFT,100);
m_formList.InsertColumn(4,"经办人",LVCFMT_LEFT,100);
m_formList.InsertColumn(5,"项目编码",LVCFMT_LEFT,100);
m_formList.InsertColumn(6,"项目名称",LVCFMT_LEFT,100);
m_formList.InsertColumn(7,"出库类别",LVCFMT_LEFT,100);
m_formList.InsertColumn(8,"备注",LVCFMT_LEFT,100);
style=m_materialList.GetExStyle();
style=(style|LVS_EX_GRIDLINES|LVS_EX_FULLROWSELECT)&(~LVS_EX_CHECKBOXES) ;
m_materialList.SetExtendedStyle(style);
m_materialList.InsertColumn(0,"物料编号",LVCFMT_LEFT,100);
m_materialList.InsertColumn(1,"物料名称",LVCFMT_LEFT,100);
m_materialList.InsertColumn(2,"物料单位",LVCFMT_LEFT,100);
m_materialList.InsertColumn(3,"物料型号",LVCFMT_LEFT,100);
m_materialList.InsertColumn(4,"数量",LVCFMT_LEFT,100);
m_materialList.InsertColumn(5,"单价",LVCFMT_LEFT,100);
m_materialList.InsertColumn(6,"金额",LVCFMT_LEFT,100);
CString strSQL;
HRESULT hTRes;
_RecordsetPtr m_pRecordset;
strSQL="select distinct materialOutputFormID from materialOutputForm";
hTRes = m_pRecordset.CreateInstance(_T("ADODB.Recordset"));
if (SUCCEEDED(hTRes))
{
//----------------------------------------------------
hTRes = m_pRecordset->Open((LPTSTR)strSQL.GetBuffer(130),
((CStoreApp*)AfxGetApp())->m_pConn.GetInterfacePtr(),
adOpenDynamic,adLockPessimistic,adCmdText);
if(SUCCEEDED(hTRes))
{
while(!(m_pRecordset->adoEOF))
{
m_materialOutputFormIDCombo.AddString(((CStoreApp*)AfxGetApp())->GetStringFromVariant(m_pRecordset->GetCollect("materialOutputFormID")));
m_pRecordset->MoveNext();
}
}
}
m_pRecordset->Close();
strSQL="select distinct storeHouse from materialOutputForm";
hTRes = m_pRecordset->Open((LPTSTR)strSQL.GetBuffer(130),
((CStoreApp*)AfxGetApp())->m_pConn.GetInterfacePtr(),
adOpenDynamic,adLockPessimistic,adCmdText);
if(SUCCEEDED(hTRes))
{
while(!(m_pRecordset->adoEOF))
{
m_storeHouseCombo.AddString(((CStoreApp*)AfxGetApp())->GetStringFromVariant(m_pRecordset->GetCollect("storeHouse")));
m_pRecordset->MoveNext();
}
}
m_pRecordset->Close();
strSQL="select distinct receiveDepartment from materialOutputForm";
hTRes = m_pRecordset->Open((LPTSTR)strSQL.GetBuffer(130),
((CStoreApp*)AfxGetApp())->m_pConn.GetInterfacePtr(),
adOpenDynamic,adLockPessimistic,adCmdText);
if(SUCCEEDED(hTRes))
{
while(!(m_pRecordset->adoEOF))
{
m_produceDepartmentCombo.AddString(((CStoreApp*)AfxGetApp())->GetStringFromVariant(m_pRecordset->GetCollect("receiveDepartment")));
m_pRecordset->MoveNext();
}
}
m_pRecordset->Close();
strSQL="select distinct materialName from materialOutputFormView";
hTRes = m_pRecordset->Open((LPTSTR)strSQL.GetBuffer(130),
((CStoreApp*)AfxGetApp())->m_pConn.GetInterfacePtr(),
adOpenDynamic,adLockPessimistic,adCmdText);
if(SUCCEEDED(hTRes))
{
while(!(m_pRecordset->adoEOF))
{
m_materialNameCombo.AddString(((CStoreApp*)AfxGetApp())->GetStringFromVariant(m_pRecordset->GetCollect("materialName")));
m_pRecordset->MoveNext();
}
}
m_pRecordset->Close();
strSQL="select distinct dealer from materialOutputForm";
hTRes = m_pRecordset->Open((LPTSTR)strSQL.GetBuffer(130),
((CStoreApp*)AfxGetApp())->m_pConn.GetInterfacePtr(),
adOpenDynamic,adLockPessimistic,adCmdText);
if(SUCCEEDED(hTRes))
{
while(!(m_pRecordset->adoEOF))
{
m_dealerCombo.AddString(((CStoreApp*)AfxGetApp())->GetStringFromVariant(m_pRecordset->GetCollect("dealer")));
m_pRecordset->MoveNext();
}
}
m_pRecordset->Close();
return TRUE; // return TRUE unless you set the focus to a control
// EXCEPTION: OCX Property Pages should return FALSE
}
void CSearchMaterialOutputForm::OnClickList1(NMHDR* pNMHDR, LRESULT* pResult)
{
HRESULT hTRes;
CString strSQL;
CString str;
int flag=0;
POSITION pos = m_formList.GetFirstSelectedItemPosition();
if(pos)
{
int nFirstSelItem = m_formList.GetNextSelectedItem(pos);
str=m_formList.GetItemText(nFirstSelItem,0);
}
strSQL="select * from materialOutputFormView where materialOutputFormID='";
strSQL=strSQL+str+"'";
_RecordsetPtr m_pRecordset;
hTRes = m_pRecordset.CreateInstance(_T("ADODB.Recordset"));
if (SUCCEEDED(hTRes))
{
//----------------------------------------------------
hTRes = m_pRecordset->Open((LPTSTR)strSQL.GetBuffer(130),
((CStoreApp*)AfxGetApp())->m_pConn.GetInterfacePtr(),
adOpenDynamic,adLockPessimistic,adCmdText);
if(SUCCEEDED(hTRes))
{
int i=0;
m_materialList.DeleteAllItems();
while(!(m_pRecordset->adoEOF))
{
m_materialList.InsertItem(i,((CStoreApp*)AfxGetApp())->GetStringFromVariant(m_pRecordset->GetCollect("materialID")));
m_materialList.SetItemText(i,1,((CStoreApp*)AfxGetApp())->GetStringFromVariant(m_pRecordset->GetCollect("materialName")));
m_materialList.SetItemText(i,2,((CStoreApp*)AfxGetApp())->GetStringFromVariant(m_pRecordset->GetCollect("unit")));
m_materialList.SetItemText(i,3,((CStoreApp*)AfxGetApp())->GetStringFromVariant(m_pRecordset->GetCollect("model")));
m_materialList.SetItemText(i,4,((CStoreApp*)AfxGetApp())->GetStringFromVariant(m_pRecordset->GetCollect("price")));
m_materialList.SetItemText(i,5,((CStoreApp*)AfxGetApp())->GetStringFromVariant(m_pRecordset->GetCollect("num")));
m_materialList.SetItemText(i,6,((CStoreApp*)AfxGetApp())->GetStringFromVariant(m_pRecordset->GetCollect("total")));
m_pRecordset->MoveNext();
i++;
}
}
}
*pResult = 0;
}
void CSearchMaterialOutputForm::OnDblclkList1(NMHDR* pNMHDR, LRESULT* pResult)
{
CString str;
int flag=0;
POSITION pos = m_formList.GetFirstSelectedItemPosition();
if(pos)
{
int nFirstSelItem = m_formList.GetNextSelectedItem(pos);
str=m_formList.GetItemText(nFirstSelItem,0);
}
CMaterialOutputForm dlg;
dlg.m_materialOutputFormID=str;
dlg.is_search=1;
dlg.DoModal();
*pResult = 0;
}
void CSearchMaterialOutputForm::OnSearch()
{
UpdateData(true);
HRESULT hTRes;
CString strSQL;
int flag=0;
m_formList.DeleteAllItems();
strSQL="select * from materialOutputFormView";
if(((CStoreApp*)AfxGetApp())->ToStringCTime(m_formDateBegin)!="")
{
strSQL=strSQL+" where formDate>='"+((CStoreApp*)AfxGetApp())->ToStringCTime(m_formDateBegin)+"'";
flag=1;
}
if(((CStoreApp*)AfxGetApp())->ToStringCTime(m_formDateEnd)!="")
{
strSQL=strSQL+" and formDate<'"+((CStoreApp*)AfxGetApp())->ToStringCTime(m_formDateEnd)+"'";
}
if(m_materialOutputFormID!=""&&flag==1)
{
strSQL=strSQL+" and materialOutputFormID='"+m_materialOutputFormID+"'";
}
else if(m_materialOutputFormID!=""&&flag==0)
{
strSQL=strSQL+" where materialOutputFormID='"+m_materialOutputFormID+"'";
flag=1;
}
if(m_storeHouse!=""&&flag==1)
{
strSQL=strSQL+" and storeHouse='"+m_storeHouse+"'";
}
else if(m_storeHouse!=""&&flag==0)
{
strSQL=strSQL+" where storeHouse='"+m_storeHouse+"'";
flag=1;
}
if(m_materialReceiveFormID!=""&&flag==1)
{
strSQL=strSQL+" and materialReceiveFormID='"+m_materialReceiveFormID+"'";
}
else if(m_materialReceiveFormID!=""&&flag==0)
{
strSQL=strSQL+" where materialReceiveFormID='"+m_materialReceiveFormID+"'";
}
if(m_produceDepartment!=""&&flag==1)
{
strSQL=strSQL+" and receiveDepartment='"+m_produceDepartment+"'";
}
else if(m_produceDepartment!=""&&flag==0)
{
strSQL=strSQL+" where receiveDepartment='"+m_produceDepartment+"'";
flag=1;
}
if(m_materialName!=""&&flag==1)
{
strSQL=strSQL+" and materialName='"+m_materialName+"'";
}
else if(m_materialName!=""&&flag==0)
{
strSQL=strSQL+" where materialName='"+m_materialName+"'";
flag=1;
}
if(m_dealer!=""&&flag==1)
{
strSQL=strSQL+" and dealer='"+m_dealer+"'";
}
else if(m_dealer!=""&&flag==0)
{
strSQL=strSQL+" where dealer='"+m_dealer+"'";
}
_RecordsetPtr m_pRecordset;
hTRes = m_pRecordset.CreateInstance(_T("ADODB.Recordset"));
if (SUCCEEDED(hTRes))
{
//----------------------------------------------------
hTRes = m_pRecordset->Open((LPTSTR)strSQL.GetBuffer(130),
((CStoreApp*)AfxGetApp())->m_pConn.GetInterfacePtr(),
adOpenDynamic,adLockPessimistic,adCmdText);
if(SUCCEEDED(hTRes))
{
int i=0;
m_formList.DeleteAllItems();
while(!(m_pRecordset->adoEOF))
{
m_formList.InsertItem(i,((CStoreApp*)AfxGetApp())->GetStringFromVariant(m_pRecordset->GetCollect("materialOutputFormID")));
m_formList.SetItemText(i,1,((CStoreApp*)AfxGetApp())->GetStringFromVariant(m_pRecordset->GetCollect("materialReceiveFormID")));
m_formList.SetItemText(i,2,((CStoreApp*)AfxGetApp())->GetStringFromVariant(m_pRecordset->GetCollect("storeHouse")));
m_formList.SetItemText(i,3,((CStoreApp*)AfxGetApp())->GetStringFromVariant(m_pRecordset->GetCollect("receiveDepartment")));
m_formList.SetItemText(i,4,((CStoreApp*)AfxGetApp())->GetStringFromVariant(m_pRecordset->GetCollect("dealer")));
m_formList.SetItemText(i,5,((CStoreApp*)AfxGetApp())->GetStringFromVariant(m_pRecordset->GetCollect("projectID")));
m_formList.SetItemText(i,6,((CStoreApp*)AfxGetApp())->GetStringFromVariant(m_pRecordset->GetCollect("projectName")));
m_formList.SetItemText(i,7,((CStoreApp*)AfxGetApp())->GetStringFromVariant(m_pRecordset->GetCollect("houseOutType")));
m_formList.SetItemText(i,8,((CStoreApp*)AfxGetApp())->GetStringFromVariant(m_pRecordset->GetCollect("remark")));
m_pRecordset->MoveNext();
i++;
}
}
}
m_pRecordset->Close();
UpdateData(false);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -