📄 printsendlist.cpp
字号:
// PrintSendList.cpp : 实现文件
//
#include "stdafx.h"
#include "PrintSendList.h"
#include "printrx.h"
extern _ConnectionPtr pMyConnect;
extern CString str_select_outcomecompany;
extern CString str_printsendlist_billno[PRINT_SEND_LIST];
extern int iPrintsendlist_number;
CString str_select_outcomecompanysn = _T("");
CString str_select_outcomecompanyaddr = _T("");
CString str_select_outcomecompanytel = _T("");
// CPrintSendList 对话框
IMPLEMENT_DYNAMIC(CPrintSendList, CDialog)
CPrintSendList::CPrintSendList(CWnd* pParent /*=NULL*/)
: CDialog(CPrintSendList::IDD, pParent)
{
}
CPrintSendList::~CPrintSendList()
{
}
void CPrintSendList::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
DDX_Control(pDX, IDC_LIST_PRINTSENDLIST, m_list_printsendlist);
}
BEGIN_MESSAGE_MAP(CPrintSendList, CDialog)
ON_CBN_SELCHANGE(IDC_COMBO_RXCONTACT, &CPrintSendList::OnCbnSelchangeComboRxcontact)
ON_BN_CLICKED(IDOK, &CPrintSendList::OnBnClickedOk)
END_MESSAGE_MAP()
// CPrintSendList 消息处理程序
BOOL CPrintSendList::OnInitDialog()
{
CDialog::OnInitDialog();
_RecordsetPtr m_pRs;
CString m_strSql;
int number = 0;
CComboBox* pWnd;
m_list_printsendlist.SetExtendedStyle( LVS_EX_GRIDLINES | LVS_EX_FULLROWSELECT );
m_list_printsendlist.InsertColumn(0,_T("序号")); //插入列
m_list_printsendlist.InsertColumn(1,_T("品牌"));
m_list_printsendlist.InsertColumn(2,_T("型号"));
m_list_printsendlist.InsertColumn(3,_T("数量"));
m_list_printsendlist.InsertColumn(4,_T("说明"));
CRect rect4;
m_list_printsendlist.GetClientRect(rect4); //获得当前客户区信息
m_list_printsendlist.SetColumnWidth(0,rect4.Width()/10); //设置列的宽度。
m_list_printsendlist.SetColumnWidth(1,rect4.Width()/5);
m_list_printsendlist.SetColumnWidth(2,rect4.Width()*2/5);
m_list_printsendlist.SetColumnWidth(3,rect4.Width()/8);
m_list_printsendlist.SetColumnWidth(4,rect4.Width()/5);
CString strTemp;
CString str_billno = _T("");
m_list_printsendlist.DeleteAllItems();
for( int i = 0; i < iPrintsendlist_number;i++ )
{
str_billno = str_printsendlist_billno[i];
m_strSql.Format(_T("select BRAND,MODE,NUMBER from INOUT_TABLE where ( BILL_NO='") +str_printsendlist_billno[i]+ _T("' and COMPANY='") +str_select_outcomecompany+ _T("')"));
m_pRs.CreateInstance( __uuidof(Recordset) );
m_pRs->Open( _bstr_t(m_strSql), _variant_t((IDispatch *)pMyConnect,true), adOpenKeyset, adLockOptimistic, adCmdText);
try
{
if ( m_pRs->GetRecordCount() > 0 )
{
_variant_t TheValue;
_bstr_t tmp;
m_pRs->MoveFirst();
while(m_pRs->adoEOF==VARIANT_FALSE)
{
CString str111;
CString str222;
//Retrieve column's value:
strTemp.Format(_T("%d"),i+1);
m_list_printsendlist.InsertItem(i,strTemp); //插入第一个数据,即第0条数据。先插入,然后在修改其他的信息。
TheValue = m_pRs->Fields->GetItem(_variant_t("BRAND"))->Value;
if( TheValue.vt != VT_NULL )
{
tmp=(_bstr_t)TheValue;
m_list_printsendlist.SetItemText(i,1,tmp);
CString str1 = tmp;
str111 = str1;
}
TheValue = m_pRs->Fields->GetItem(_variant_t("MODE"))->Value;
if( TheValue.vt != VT_NULL )
{
tmp=(_bstr_t)TheValue;
m_list_printsendlist.SetItemText(i,2,tmp);
CString str2 = tmp;
str222 = str2;
}
TheValue = m_pRs->Fields->GetItem(_variant_t("NUMBER"))->Value;
if( TheValue.vt != VT_NULL )
{
tmp=(_bstr_t)TheValue;
m_list_printsendlist.SetItemText(i,3,tmp);
}
CString tmp4 = GetBrandModeNote( str111, str222 );
m_list_printsendlist.SetItemText(i,4,tmp4);
//Do something what you want to do: ......
m_pRs->MoveNext();
}
}
}
catch (_com_error &e)
{
::MessageBox(NULL,e.Description(),(LPCTSTR)(_T("警告")),MB_OK);
}
m_pRs->Close();
}
number = 0;
pWnd = (CComboBox*)GetDlgItem(IDC_COMBO_TXCOMPANY);
pWnd->ResetContent();
m_strSql.Format(_T("select NAME from COMPANY_TABLE where ( SN > 0)") );
m_pRs.CreateInstance( __uuidof(Recordset) );
m_pRs->Open( _bstr_t(m_strSql), _variant_t((IDispatch *)pMyConnect,true), adOpenKeyset, adLockOptimistic, adCmdText);
try
{
if ( m_pRs->GetRecordCount() > 0 )
{
_variant_t TheValue;
_bstr_t tmp;
m_pRs->MoveFirst();
while(m_pRs->adoEOF==VARIANT_FALSE)
{
//Retrieve column's value:
TheValue = m_pRs->Fields->GetItem(_variant_t("NAME"))->Value;
if( TheValue.vt != VT_NULL )
{
tmp=(_bstr_t)TheValue;
CString str_tmp1 = tmp;
pWnd->InsertString(number,str_tmp1);
number++;
}
//Do something what you want to do: ......
m_pRs->MoveNext();
}
}
}
catch (_com_error &e)
{
::MessageBox(NULL,e.Description(),(LPCTSTR)(_T("警告")),MB_OK);
}
m_pRs->Close();
pWnd = (CComboBox*)GetDlgItem(IDC_EDIT_RXCOMPANY);
pWnd->SetWindowTextW(str_select_outcomecompany);
m_strSql.Format(_T("select SN,ADDR from CUSTOMER_TABLE where ( NAME ='") +str_select_outcomecompany+ _T("')") );
m_pRs.CreateInstance( __uuidof(Recordset) );
m_pRs->Open( _bstr_t(m_strSql), _variant_t((IDispatch *)pMyConnect,true), adOpenKeyset, adLockOptimistic, adCmdText);
try
{
if ( m_pRs->GetRecordCount() > 0 )
{
_variant_t TheValue;
m_pRs->MoveFirst();
while(m_pRs->adoEOF==VARIANT_FALSE)
{
//Retrieve column's value:
TheValue = m_pRs->Fields->GetItem(_variant_t("SN"))->Value;
if( TheValue.vt != VT_NULL )
{
_bstr_t s1=(_bstr_t)TheValue;
CString str_temp1 = s1;
str_select_outcomecompanysn = str_temp1;
}
TheValue = m_pRs->Fields->GetItem(_variant_t("ADDR"))->Value;
if( TheValue.vt != VT_NULL )
{
_bstr_t s2=(_bstr_t)TheValue;
CString str_temp2 = s2;
str_select_outcomecompanyaddr = str_temp2;
}
//Do something what you want to do: ......
m_pRs->MoveNext();
}
}
}
catch (_com_error &e)
{
::MessageBox(NULL,e.Description(),(LPCTSTR)(_T("警告")),MB_OK);
}
m_pRs->Close();
pWnd = (CComboBox*)GetDlgItem(IDC_EDIT_RXADDR);
pWnd->SetWindowTextW(str_select_outcomecompanyaddr);
number = 0;
pWnd = (CComboBox*)GetDlgItem(IDC_COMBO_RXCONTACT);
pWnd->ResetContent();
m_strSql.Format(_T("select CONTACT_NAME from CUSTOMER_CONTACT_TABLE where ( CUSTOMER_SN='") +str_select_outcomecompanysn+ _T("')") );
m_pRs.CreateInstance( __uuidof(Recordset) );
m_pRs->Open( _bstr_t(m_strSql), _variant_t((IDispatch *)pMyConnect,true), adOpenKeyset, adLockOptimistic, adCmdText);
try
{
if ( m_pRs->GetRecordCount() > 0 )
{
_variant_t TheValue;
_bstr_t tmp;
m_pRs->MoveFirst();
while(m_pRs->adoEOF==VARIANT_FALSE)
{
//Retrieve column's value:
TheValue = m_pRs->Fields->GetItem(_variant_t("CONTACT_NAME"))->Value;
if( TheValue.vt != VT_NULL )
{
tmp=(_bstr_t)TheValue;
CString str_tmp1 = tmp;
pWnd->InsertString(number,str_tmp1);
number++;
}
//Do something what you want to do: ......
m_pRs->MoveNext();
}
}
}
catch (_com_error &e)
{
//::MessageBox(NULL,e.Description(),(LPCTSTR)(_T("警告")),MB_OK);
}
m_pRs->Close();
number = 0;
pWnd = (CComboBox*)GetDlgItem(IDC_COMBO_TRANSPORT);
pWnd->ResetContent();
m_strSql.Format(_T("select NAME from TRANSPORT_TABLE where ( SN > 0 )") );
m_pRs.CreateInstance( __uuidof(Recordset) );
m_pRs->Open( _bstr_t(m_strSql), _variant_t((IDispatch *)pMyConnect,true), adOpenKeyset, adLockOptimistic, adCmdText);
try
{
if ( m_pRs->GetRecordCount() > 0 )
{
_variant_t TheValue;
_bstr_t tmp;
m_pRs->MoveFirst();
while(m_pRs->adoEOF==VARIANT_FALSE)
{
//Retrieve column's value:
TheValue = m_pRs->Fields->GetItem(_variant_t("NAME"))->Value;
if( TheValue.vt != VT_NULL )
{
tmp=(_bstr_t)TheValue;
CString str_tmp1 = tmp;
pWnd->InsertString(number,str_tmp1);
number++;
}
//Do something what you want to do: ......
m_pRs->MoveNext();
}
}
}
catch (_com_error &e)
{
::MessageBox(NULL,e.Description(),(LPCTSTR)(_T("警告")),MB_OK);
}
m_pRs->Close();
return FALSE;// 将焦点设置到控件,否则返回 TRUE
}
void CPrintSendList::OnCbnSelchangeComboRxcontact()
{
// TODO: 在此添加控件通知处理程序代码
CString str0;
CComboBox* pTemp;
pTemp = (CComboBox*)GetDlgItem(IDC_COMBO_RXCONTACT);
int iPos=pTemp ->GetCurSel();//当前选中的行。
int n = pTemp->GetLBTextLen( iPos );
pTemp->GetLBText( iPos, str0.GetBuffer(n) );
str0.ReleaseBuffer();
int number = 0;
_RecordsetPtr m_pRs;
CString m_strSql;
CComboBox* pWnd;
pWnd = (CComboBox*)GetDlgItem(IDC_EDIT_RXTEL);
m_strSql.Format(_T("select TEL from CUSTOMER_CONTACT_TABLE where ( CONTACT_NAME ='") +str0+ _T("' and CUSTOMER_SN='") +str_select_outcomecompanysn+ _T("')") );
m_pRs.CreateInstance( __uuidof(Recordset) );
m_pRs->Open( _bstr_t(m_strSql), _variant_t((IDispatch *)pMyConnect,true), adOpenKeyset, adLockOptimistic, adCmdText);
try
{
if ( m_pRs->GetRecordCount() > 0 )
{
_variant_t TheValue;
_bstr_t tmp;
m_pRs->MoveFirst();
while(m_pRs->adoEOF==VARIANT_FALSE)
{
//Retrieve column's value:
TheValue = m_pRs->Fields->GetItem(_variant_t("TEL"))->Value;
if( TheValue.vt != VT_NULL )
{
tmp=(_bstr_t)TheValue;
CString str_tmp0 = tmp;
str_select_outcomecompanytel = str_tmp0;
pWnd->SetWindowTextW(str_select_outcomecompanytel);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -