www.pudn.com > RMS2000_C.rar > GlobalPara.cpp


// GlobalPara.cpp : implementation file 
// 
 
#include "stdafx.h" 
#include "DrawCli.h" 
#include "GlobalPara.h" 
 
#ifdef _DEBUG 
#define new DEBUG_NEW 
#undef THIS_FILE 
static char THIS_FILE[] = __FILE__; 
#endif 
 
///////////////////////////////////////////////////////////////////////////// 
// CGlobalPara dialog 
 
 
CGlobalPara::CGlobalPara(CWnd* pParent /*=NULL*/) 
	: CDialog(CGlobalPara::IDD, pParent) 
{ 
	//{{AFX_DATA_INIT(CGlobalPara) 
	m_strSysUserName = _T(""); 
	m_nStaSum = 0; 
	m_nStaToRtu = 0; 
	m_nStaNo = 0; 
	m_AddExpAddr = 0; 
	m_AddExp = _T(""); 
	m_AddExpName = _T(""); 
	m_AddExpNo = 0; 
	m_ExcelPath = _T(""); 
	m_SQLUserName = _T(""); 
	m_UserPassword = _T(""); 
 
	//}}AFX_DATA_INIT 
} 
 
 
void CGlobalPara::DoDataExchange(CDataExchange* pDX) 
{ 
	CDialog::DoDataExchange(pDX); 
	//{{AFX_DATA_MAP(CGlobalPara) 
	DDX_Control(pDX, IDC_SPIN_STATION, m_spinSta); 
	DDX_Text(pDX, IDC_SYSUSER_NAME, m_strSysUserName); 
	DDV_MaxChars(pDX, m_strSysUserName, 20); 
	DDX_Text(pDX, IDC_STATION_SUM, m_nStaSum); 
	DDV_MinMaxInt(pDX, m_nStaSum, 0, 128); 
	DDX_Text(pDX, IDC_STATION_TO_RTU, m_nStaToRtu); 
	DDV_MinMaxInt(pDX, m_nStaToRtu, 1, 128); 
	DDX_Text(pDX, IDC_STATION_NO, m_nStaNo); 
	DDV_MinMaxInt(pDX, m_nStaNo, 1, 128); 
 
	DDX_Control(pDX, IDC_MNP_PORT, m_MnpPort); 
	DDX_Control(pDX, IDC_MNP_BAUD, m_MnpBaud); 
	DDX_Control(pDX, IDC_WARN_PRINT, m_WarnPrint); 
	DDX_Control(pDX, IDC_VOICE_WARN, m_VoiceWarn); 
	DDX_Control(pDX, IDC_STROE_LAP, m_StoreLap); 
	DDX_Control(pDX, IDC_STORE_HERE, m_DataStoreHere); 
	DDX_Control(pDX, IDC_NOT_CALL, m_NotCall); 
	DDX_Control(pDX, IDC_MASTER_WS, m_MasterWs); 
	DDX_Control(pDX, IDC_INST_SVR, m_InstServer); 
	DDX_Control(pDX, IDC_INST_ANALOG, m_InstAnalog); 
	DDX_Control(pDX, IDC_DATA_NET, m_DataFromNet); 
	DDX_Control(pDX, IDC_COMM_PORT, m_CommPort); 
	DDX_Control(pDX, IDC_COMM_BAUD, m_CommBaud); 
	DDX_Control(pDX, IDC_ANALOG_TEST, m_AnalogTest); 
	DDX_Control(pDX, IDC_SPIN_ADDEXP, m_SpinAddExp); 
	DDX_Text(pDX, IDC_ADDEXP_ADDR, m_AddExpAddr); 
	DDX_Text(pDX, IDC_ADDEXP_EXP, m_AddExp); 
	DDX_Text(pDX, IDC_ADDEXP_NAME, m_AddExpName); 
	DDX_Text(pDX, IDC_ADDEXP_NO, m_AddExpNo); 
	DDX_Text(pDX, IDC_EXCEL_PATH, m_ExcelPath); 
	DDX_Text(pDX, IDC_USER_NAME, m_SQLUserName); 
	DDX_Text(pDX, IDC_USER_PASSWORD, m_UserPassword); 
 
	//}}AFX_DATA_MAP 
} 
 
 
BEGIN_MESSAGE_MAP(CGlobalPara, CDialog) 
	//{{AFX_MSG_MAP(CGlobalPara) 
	ON_EN_CHANGE(IDC_STATION_SUM, OnChangeStationSum) 
	ON_EN_CHANGE(IDC_STATION_TO_RTU, OnChangeStationToRtu) 
	ON_EN_CHANGE(IDC_STATION_NO, OnChangeStationNo) 
	ON_BN_CLICKED(IDC_NOT_CALL, OnNotCall) 
	ON_EN_CHANGE(IDC_ADDEXP_NO, OnChangeAddexpNo) 
	ON_EN_CHANGE(IDC_ADDEXP_NAME, OnChangeAddexpName) 
	ON_EN_CHANGE(IDC_ADDEXP_EXP, OnChangeAddexpExp) 
	ON_EN_CHANGE(IDC_ADDEXP_ADDR, OnChangeAddexpAddr) 
	//}}AFX_MSG_MAP 
END_MESSAGE_MAP() 
 
///////////////////////////////////////////////////////////////////////////// 
// CGlobalPara message handlers 
 
void CGlobalPara::OnOK()  
{ 
	CWnd::GetDlgItemText(IDC_SYSUSER_NAME,m_RmsGlo.SystemName,NAME_LEN); 
 	CWnd::GetDlgItemText(IDC_EXCEL_PATH,m_RmsGlo.XlsPath,100); 
 	CWnd::GetDlgItemText(IDC_USER_NAME,m_RmsGlo.UserName,20); 
 	CWnd::GetDlgItemText(IDC_USER_PASSWORD,m_RmsGlo.UserPassword,20); 
	CWnd::GetDlgItemText(IDC_RUN_DATE,m_RmsGlo.RunDate,12); 
 	CWnd::GetDlgItemText(IDC_SERVER_NAME,m_RmsGlo.ServerName,50); 
 
	m_RmsGlo.RtuPort=m_CommPort.GetCurSel(); 
	m_RmsGlo.mnpPort=m_MnpPort.GetCurSel(); 
 	m_RmsGlo.StoreLap=m_StoreLap.GetCurSel(); 
 	m_RmsGlo.RtuBaudRate=m_CommBaud.GetCurSel(); 
 	m_RmsGlo.mnpBaudRate=m_MnpBaud.GetCurSel(); 
 
 	m_RmsGlo.SimulateScreen=m_InstAnalog.GetCheck(); 
	m_RmsGlo.WarnPrint=m_WarnPrint.GetCheck(); 
	m_RmsGlo.VoiceWarn=m_VoiceWarn.GetCheck(); 
	m_RmsGlo.NetServer=m_InstServer.GetCheck(); 
	m_RmsGlo.MasterWs=m_MasterWs.GetCheck(); 
	m_RmsGlo.NetStructure=m_DataFromNet.GetCheck(); 
	m_RmsGlo.DataStoreHere=m_DataStoreHere.GetCheck(); 
	m_RmsGlo.ODBCStoreData=m_AnalogTest.GetCheck(); 
 
	CDrawApp* pApp=(CDrawApp*)AfxGetApp(); 
	pApp->PutGloParam(&m_RmsGlo); 
	CDialog::OnOK(); 
} 
 
BOOL CGlobalPara::OnInitDialog()  
{ 
	CDialog::OnInitDialog(); 
	CDrawApp* pApp=(CDrawApp*)AfxGetApp(); 
	m_RmsGlo=pApp->m_QJCS; 
 
	CWnd::SetDlgItemText(IDC_EXCEL_PATH,m_RmsGlo.XlsPath); 
	CWnd::SetDlgItemText(IDC_USER_NAME,m_RmsGlo.UserName); 
	CWnd::SetDlgItemText(IDC_USER_PASSWORD,m_RmsGlo.UserPassword); 
 	CWnd::SetDlgItemText(IDC_SYSUSER_NAME,m_RmsGlo.SystemName); 
 	CWnd::SetDlgItemText(IDC_RUN_DATE,m_RmsGlo.RunDate); 
	CWnd::SetDlgItemText(IDC_SERVER_NAME,m_RmsGlo.ServerName); 
 
	CWnd::SetDlgItemText(IDC_WORK_PATH,RunWorkPath); 
	CWnd::SetDlgItemInt(IDC_TCPIP_PORT,IpPort-5); 
 
	m_CommPort.AddString("ÎÞ"); 
	m_CommPort.AddString("COM1"); 
	m_CommPort.AddString("COM2"); 
	m_CommPort.SetCurSel(m_RmsGlo.RtuPort); 
 
 	m_MnpPort.AddString("ÎÞ"); 
 	m_MnpPort.AddString("COM1"); 
	m_MnpPort.AddString("COM2"); 
	m_MnpPort.SetCurSel(m_RmsGlo.mnpPort); 
	char szBuff[15]; 
	for (int itemp=1; itemp<=4; itemp++) 
	{ 
		wsprintf(szBuff,"%d·ÖÖÓ",itemp*15);									 
		m_StoreLap.AddString(szBuff); 
	} 
	m_StoreLap.SetCurSel(m_RmsGlo.StoreLap); 
 
	int baudrate = 300; 
	for (int nSetting = 0; nSetting<8; nSetting++) 
	{ 
		wsprintf(szBuff,"%d",baudrate);									 
		m_CommBaud.AddString(szBuff); 
		m_MnpBaud.AddString(szBuff); 
		baudrate = baudrate << 1; 
	} 
	m_CommBaud.SetCurSel(m_RmsGlo.RtuBaudRate); 
	m_MnpBaud.SetCurSel(m_RmsGlo.mnpBaudRate); 
 
 
	m_spinSta.SetRange(1, m_RmsGlo.InstallSta); 
	m_spinSta.SetBase(10); 
	m_spinSta.SetPos(1); 
  
	CWnd::SetDlgItemInt(IDC_STATION_SUM,m_RmsGlo.InstallSta); 
	CWnd::SetDlgItemInt(IDC_STATION_TO_RTU,m_RmsGlo.StaToRtu[1-1]); 
	m_NotCall.SetCheck(m_RmsGlo.RadioStop[1-1]); 
 
	m_InstAnalog.SetCheck(m_RmsGlo.SimulateScreen); 
	m_WarnPrint.SetCheck(m_RmsGlo.WarnPrint); 
	m_VoiceWarn.SetCheck(m_RmsGlo.VoiceWarn); 
	m_InstServer.SetCheck(m_RmsGlo.NetServer); 
	m_MasterWs.SetCheck(m_RmsGlo.MasterWs); 
	m_DataFromNet.SetCheck(m_RmsGlo.NetStructure); 
	m_DataStoreHere.SetCheck(m_RmsGlo.DataStoreHere); 
	m_AnalogTest.SetCheck(m_RmsGlo.ODBCStoreData); 
 
	m_SpinAddExp.SetRange(1, JS_NUM); 
	m_SpinAddExp.SetBase(10); 
	m_SpinAddExp.SetPos(1); 
  
	CWnd::SetDlgItemText(IDC_ADDEXP_NAME,m_RmsGlo.FormulaName[1-1]); 
	CWnd::SetDlgItemText(IDC_ADDEXP_EXP,m_RmsGlo.Formula[1-1]); 
   	CWnd::SetDlgItemInt(IDC_ADDEXP_ADDR,m_RmsGlo.FormulaAddr[1-1]); 
 
	return TRUE;  // return TRUE unless you set the focus to a control 
	              // EXCEPTION: OCX Property Pages should return FALSE 
} 
  
void CGlobalPara::OnChangeStationSum()  
{ 
  	m_RmsGlo.InstallSta=CWnd::GetDlgItemInt(IDC_STATION_SUM); 
	if (m_RmsGlo.InstallSta>0) 
		m_spinSta.SetRange(1, m_RmsGlo.InstallSta); 
} 
 
void CGlobalPara::OnChangeStationToRtu()  
{ 
  	int No=CWnd::GetDlgItemInt(IDC_STATION_NO); 
	if ( (No>0)&&(No<=MAX_RTU_NUM)  ) 
  		m_RmsGlo.StaToRtu[No-1]=CWnd::GetDlgItemInt(IDC_STATION_TO_RTU); 
} 
 
void CGlobalPara::OnChangeStationNo()  
{ 
  	int No=CWnd::GetDlgItemInt(IDC_STATION_NO); 
	if ( (No>0) && (No<=MAX_RTU_NUM) ) 
	{ 
		CWnd::SetDlgItemInt(IDC_STATION_TO_RTU,m_RmsGlo.StaToRtu[No-1]); 
		m_NotCall.SetCheck(m_RmsGlo.RadioStop[No-1]); 
	} 
} 
 
void CGlobalPara::OnNotCall()  
{ 
   	int itemp=CWnd::GetDlgItemInt(IDC_STATION_NO);	 
	if ((1<=itemp)&&(itemp<=MAX_RTU_NUM)) 
		m_RmsGlo.RadioStop[itemp-1]=m_NotCall.GetCheck(); 
 	 
} 
  
void CGlobalPara::OnChangeAddexpNo()  
{ 
  	int itemp=CWnd::GetDlgItemInt(IDC_ADDEXP_NO);	 
	if ((1<=itemp)&&(itemp<=JS_NUM)) 
	{ 
		CWnd::SetDlgItemText(IDC_ADDEXP_NAME,m_RmsGlo.FormulaName[itemp-1]); 
		CWnd::SetDlgItemText(IDC_ADDEXP_EXP,m_RmsGlo.Formula[itemp-1]); 
		CWnd::SetDlgItemInt(IDC_ADDEXP_ADDR,m_RmsGlo.FormulaAddr[itemp-1]); 
	} 
} 
 
void CGlobalPara::OnChangeAddexpName()  
{ 
   	int itemp=CWnd::GetDlgItemInt(IDC_ADDEXP_NO);	 
	if ((1<=itemp)&&(itemp<=JS_NUM)) 
 		CWnd::GetDlgItemText(IDC_ADDEXP_NAME,m_RmsGlo.FormulaName[itemp-1],NAME_LEN); 
} 
 
void CGlobalPara::OnChangeAddexpExp()  
{ 
   	int itemp=CWnd::GetDlgItemInt(IDC_ADDEXP_NO);	 
	if ((1<=itemp)&&(itemp<=JS_NUM)) 
 		CWnd::GetDlgItemText(IDC_ADDEXP_EXP,m_RmsGlo.Formula[itemp-1],FORMULA_LEN); 
} 
 
void CGlobalPara::OnChangeAddexpAddr()  
{ 
  	int itemp=CWnd::GetDlgItemInt(IDC_ADDEXP_NO);	 
	if ((1<=itemp)&&(itemp<=JS_NUM)) 
   		m_RmsGlo.FormulaAddr[itemp-1]=CWnd::GetDlgItemInt(IDC_ADDEXP_ADDR); 
}