⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 viewfenjicableinfo.cpp

📁 电缆故障监控系统
💻 CPP
📖 第 1 页 / 共 2 页
字号:
	UpdateData(TRUE);
	if(nIndex==0)//全部记录
		return;
	else//按分机号查询
	{
		if(m_edit1>m_edit2)
		{
			int temp=m_edit1;
			m_edit1=m_edit2;
			m_edit2=temp;
		}
        m_table1.m_strSort=_T("[Id]");
		str1.Format("%d",m_edit1);
		str2.Format("%d",m_edit2);
        m_table1.m_strFilter=_T("[Id] Between " + str1 + " AND " + str2); 
		if(m_table1.Requery())
		{
			m_list1.DeleteAllItems();
			InSertList1();
		}
	}
    UpdateData(FALSE);		
}
void CViewFenjiCableInfo::OnProbe2() 
{
	// TODO: Add your control notification handler code here
	int nIndex=m_mode2.GetCurSel();
    CString str1,str2;
	UpdateData(TRUE);
	if(nIndex==0)//全部记录
		return;
	else//按分机号查询
	{
		if(m_edit3>m_edit4)
		{
			int temp=m_edit3;
			m_edit3=m_edit4;
			m_edit4=temp;
		}
        m_table2.m_strSort=_T("[Id]");
		str1.Format("%d",m_edit3*100);
		str2.Format("%d",m_edit4*100+16);
        m_table2.m_strFilter=_T("[Id] Between " + str1 + " AND " + str2); 
		if(m_table2.Requery())
		{
			m_list2.DeleteAllItems();
			InSertList2();
		}
	}
    UpdateData(FALSE);			
}


void CViewFenjiCableInfo::OnSelchangeMode1() 
{
	// TODO: Add your control notification handler code here
	int nIndex=m_mode1.GetCurSel();
	if(nIndex==0)//全部记录
	{
        GetDlgItem(IDC_PROBE1)->EnableWindow(FALSE);
		WINDOWPLACEMENT wndplace;
		wndplace.rcNormalPosition.left	    = 2000;
		wndplace.rcNormalPosition.right	    = 2000;
		wndplace.rcNormalPosition.top		= 2000;
		wndplace.rcNormalPosition.bottom	= 2000;
		GetDlgItem(IDC_MYSTATIC1)->SetWindowPlacement(&wndplace);
		GetDlgItem(IDC_MYSTATIC2)->SetWindowPlacement(&wndplace);
		GetDlgItem(IDC_EDIT1)->SetWindowPlacement(&wndplace);
		GetDlgItem(IDC_EDIT2)->SetWindowPlacement(&wndplace);

		m_table1.m_strSort=_T("[Id]");
        m_table1.m_strFilter=_T(""); 
        m_table1.Requery();
        m_list1.DeleteAllItems();
	    InSertList1();	
    }
	else//按分机号查询
	{
        GetDlgItem(IDC_PROBE1)->EnableWindow(TRUE);
		GetDlgItem(IDC_MYSTATIC1)->SetWindowPlacement(&m_mystaticwnd[0]);
		GetDlgItem(IDC_MYSTATIC2)->SetWindowPlacement(&m_mystaticwnd[1]);
		GetDlgItem(IDC_EDIT1)->SetWindowPlacement(&m_editwnd[0]);
		GetDlgItem(IDC_EDIT2)->SetWindowPlacement(&m_editwnd[1]);
        m_edit1=0;
		m_edit2=100;
	}
	UpdateData(FALSE);	
}

void CViewFenjiCableInfo::OnSelchangeMode2() 
{
	// TODO: Add your control notification handler code here
	int nIndex=m_mode2.GetCurSel();
	if(nIndex==0)//全部记录
	{
        GetDlgItem(IDC_PROBE2)->EnableWindow(FALSE);
		WINDOWPLACEMENT wndplace;
		wndplace.rcNormalPosition.left	    = 2000;
		wndplace.rcNormalPosition.right	    = 2000;
		wndplace.rcNormalPosition.top		= 2000;
		wndplace.rcNormalPosition.bottom	= 2000;
		GetDlgItem(IDC_MYSTATIC3)->SetWindowPlacement(&wndplace);
		GetDlgItem(IDC_MYSTATIC4)->SetWindowPlacement(&wndplace);
		GetDlgItem(IDC_EDIT3)->SetWindowPlacement(&wndplace);
		GetDlgItem(IDC_EDIT4)->SetWindowPlacement(&wndplace);

		m_table2.m_strSort=_T("[Id]");
        m_table2.m_strFilter=_T(""); 
        m_table2.Requery();
        m_list2.DeleteAllItems();
	    InSertList2();	
    }
	else//按分机号查询
	{
        GetDlgItem(IDC_PROBE2)->EnableWindow(TRUE);
		GetDlgItem(IDC_MYSTATIC3)->SetWindowPlacement(&m_mystaticwnd[2]);
		GetDlgItem(IDC_MYSTATIC4)->SetWindowPlacement(&m_mystaticwnd[3]);
		GetDlgItem(IDC_EDIT3)->SetWindowPlacement(&m_editwnd[2]);
		GetDlgItem(IDC_EDIT4)->SetWindowPlacement(&m_editwnd[3]);
        m_edit3=0;
		m_edit4=10;
	}
	UpdateData(FALSE);		
}

void CViewFenjiCableInfo::OnExport1() 
{
	// TODO: Add your control notification handler code here
	if(!bHasExcelDriver())
	{
		MessageBox("没有安装Microsoft Excel Driver!","提示信息");
		return;
	}
	CString strPathname;

    CFileDialog filesavebox(FALSE,"xls",/*"default.xls"*/NULL,OFN_HIDEREADONLY/*|OFN_OVERWRITEPROMPT*/,"Excel文件(*.xls)|*.xls|",NULL);	
	if(filesavebox.DoModal()!=IDOK) return;
	strPathname=filesavebox.GetPathName();
	CDatabase database;
	CString   sDriver="Microsoft Excel Driver (*.xls)";
	CString sSql;
	CString str;
	int i,nTotalItem,j;
	TRY
	{
		sSql.Format("DRIVER={%s};DSN=;FIRSTROWHASNAMES=1;READONLY=FALSE;CREATE_DB=\"%s\";DBQ=%s",sDriver,strPathname,strPathname);
		if(database.OpenEx(sSql,CDatabase::noOdbcDialog))
		{
			//创建表结构
			//		sSql="DROP TABLE 分机信息表";
			//     database.ExecuteSQL(sSql);
			sSql="CREATE TABLE 分机信息表 (分机号 TEXT,分机名 TEXT,分机电话 TEXT,";
            sSql+="用户1 TEXT,用户电话1 TEXT,用户2 TEXT,用户电话2 TEXT,用户3 TEXT,用户电话3 TEXT,";
            sSql+="用户4 TEXT,用户电话4 TEXT,用户5 TEXT,用户电话5 TEXT,用户6 TEXT,用户电话6 TEXT,";
            sSql+="维护1 TEXT,维护电话1 TEXT,维护2 TEXT,维护电话2 TEXT,维护3 TEXT,维护电话3 TEXT,";
            sSql+="维护4 TEXT,维护电话4 TEXT,维护5 TEXT,维护电话5 TEXT,维护6 TEXT,维护电话6 TEXT,";
            sSql+="无应答等待时间 NUMBER,灵敏度 NUMBER,循环拨打次数 NUMBER,布防等待时间 NUMBER,电压转折点 NUMBER,本机模式 TEXT,测距系数 NUMBER)";
			database.ExecuteSQL(sSql);
	//		sSql="CREATE TABLE 分机信息表 (Name TEXT,Age NUMBER)";
	//		database.ExecuteSQL(sSql);
			str="(分机号,分机名,分机电话,";
            str+="用户1,用户电话1,用户2,用户电话2,用户3,用户电话3,";
            str+="用户4,用户电话4,用户5,用户电话5,用户6,用户电话6,";
            str+="维护1,维护电话1,维护2,维护电话2,维护3,维护电话3,";
            str+="维护4,维护电话4,维护5,维护电话5,维护6,维护电话6,";
            str+="无应答等待时间,灵敏度,循环拨打次数,布防等待时间,电压转折点,本机模式,测距系数)";
            nTotalItem=m_list1.GetItemCount();
			for(i=0;i<nTotalItem;i++)
			{
				sSql="INSERT INTO 分机信息表 ";
				sSql+=str;
				sSql+=" VALUES(";
				for(j=0;j<27;j++)
				{
					sSql+="'";
					sSql+=m_list1.GetItemText(i,j);
					sSql+="',";
				}
				for(j=0;j<5;j++)
				{
					sSql+=m_list1.GetItemText(i,j+27);
					sSql+=",";
				}
				sSql+="'";
				sSql+=m_list1.GetItemText(i,32);
				sSql+="',";
				sSql+=m_list1.GetItemText(i,33);
				sSql+=")";
				database.ExecuteSQL(sSql);
			}
		}
        database.Close();
	}
	CATCH_ALL(e)
	{
		
		TRACE0("%s","不能对表重新写入!");
	}
	END_CATCH_ALL;			
}

void CViewFenjiCableInfo::OnExport2() 
{
	// TODO: Add your control notification handler code here
	if(!bHasExcelDriver())
	{
		MessageBox("没有安装Microsoft Excel Driver!","提示信息");
		return;
	}
	CString strPathname;

    CFileDialog filesavebox(FALSE,"xls",/*"default.xls"*/NULL,OFN_HIDEREADONLY/*|OFN_OVERWRITEPROMPT*/,"Excel文件(*.xls)|*.xls|",NULL);	
	if(filesavebox.DoModal()!=IDOK) return;
	strPathname=filesavebox.GetPathName();
	CDatabase database;
	CString   sDriver="Microsoft Excel Driver (*.xls)";
	CString sSql;
	CString str;
	int i,nTotalItem,j;
	TRY
	{
		sSql.Format("DRIVER={%s};DSN=;FIRSTROWHASNAMES=1;READONLY=FALSE;CREATE_DB=\"%s\";DBQ=%s",sDriver,strPathname,strPathname);
		if(database.OpenEx(sSql,CDatabase::noOdbcDialog))
		{
     		sSql="CREATE TABLE 电缆信息表 (分机号 TEXT,电缆号 TEXT,电缆起点 TEXT,";
            sSql+="电缆终点 TEXT,功能设置 TEXT)";
			database.ExecuteSQL(sSql);
			str="(分机号,电缆号,电缆起点,";
            str+="电缆终点,功能设置)";
            nTotalItem=m_list2.GetItemCount();
			for(i=0;i<nTotalItem;i++)
			{
				sSql="INSERT INTO 电缆信息表 ";
				sSql+=str;
				sSql+=" VALUES(";
				for(j=0;j<5;j++)
				{
					sSql+="'";
					sSql+=m_list2.GetItemText(i,j);
					sSql+="'";
					if(j<4)
					  sSql+=",";
				}
				sSql+=")";
				database.ExecuteSQL(sSql);
			}
		}
        database.Close();
	}
	CATCH_ALL(e)
	{
		
		TRACE0("%s","不能对表重新写入!");
	}
	END_CATCH_ALL;				
}
BOOL CViewFenjiCableInfo::bHasExcelDriver()
{
    char szBuf[2001];
	WORD cbBufMax=2000;
	WORD cbBufOut;
	char* pszBuf=szBuf;
	CString sDriver;
	if(!SQLGetInstalledDrivers(szBuf,cbBufMax,&cbBufOut)) return FALSE;
	do
	{
		if(strstr(pszBuf,"Excel")!=0)
		   return TRUE;
		pszBuf=strchr(pszBuf,'\0')+1;
	}
	while(pszBuf[0]!='\0');
	return FALSE;
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -