📄 blackretrivaldlg.cpp
字号:
// blackretrivalDlg.cpp : implementation file
//
#include "stdafx.h"
#include "fee.h"
#include "blackretrivalDlg.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// CblackretrivalDlg dialog
CblackretrivalDlg::CblackretrivalDlg(CWnd* pParent /*=NULL*/)
: CDialog(CblackretrivalDlg::IDD, pParent)
{
//{{AFX_DATA_INIT(CblackretrivalDlg)
// NOTE: the ClassWizard will add member initialization here
//}}AFX_DATA_INIT
}
void CblackretrivalDlg::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CblackretrivalDlg)
DDX_Control(pDX, IDC_PROGRESS1, m_blackretrivalprogess);
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(CblackretrivalDlg, CDialog)
//{{AFX_MSG_MAP(CblackretrivalDlg)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CblackretrivalDlg message handlers
BOOL CblackretrivalDlg::OnInitDialog()
{
CDialog::OnInitDialog();
m_blackretrivalprogess.SetRange(0,100);
m_blackretrivalprogess.SetPos(0);
// TODO: Add extra initialization here
return TRUE; // return TRUE unless you set the focus to a control
// EXCEPTION: OCX Property Pages should return FALSE
}
void CblackretrivalDlg::OnOK()
{
// TODO: Add extra validation here
CString strsubCallingNum,strsubCalledNum;
CString strSql;
unsigned long recordcount,donerecordcount;
unsigned int pos;
HRESULT result;
unsigned char flag,flag1;
strSql.Format("select * from blackSub");
recordcount=0;
donerecordcount=0;
CFeeApp* pApp=(CFeeApp *)AfxGetApp();
pApp->m_pjifeiRecordset->CursorLocation=adUseClientBatch;
result=pApp->m_pjifeiRecordset->Open(strSql.AllocSysString(),
pApp->m_pjifeiConnection.GetInterfacePtr(),
adOpenDynamic,adLockOptimistic,adCmdText);
if (!SUCCEEDED(result))
{
AfxMessageBox("can't open telephoneCode table");
}
if (!pApp->m_pjifeiRecordset->adoEOF)
{
recordcount=pApp->m_pjifeiRecordset->GetRecordCount();
}
while(!pApp->m_pjifeiRecordset->adoEOF)
{
flag=0;
_variant_t varport;
varport=pApp->m_pjifeiRecordset->GetCollect(_variant_t("blackCalledNum"));
if (varport.vt!=VT_NULL)
strsubCalledNum =(char*)_bstr_t(varport);
else
strsubCalledNum="null";
varport=pApp->m_pjifeiRecordset->GetCollect(_variant_t("blackCallingNum"));
if (varport.vt!=VT_NULL)
strsubCallingNum =(char*)_bstr_t(varport);
else
strsubCallingNum="null";
//strsubCalledNum=(char*)(_bstr_t)pApp->m_pjifeiRecordset->GetCollect(_variant_t("blackCalledNum"));
flag1=0;
flag=1;
strSql.Format("select * from feefreecalled where callednum='%s'",strsubCalledNum);
result=pApp->m_pjifei3Recordset->Open(strSql.AllocSysString(),
pApp->m_pjifei3Connection.GetInterfacePtr(),
adOpenDynamic,adLockOptimistic,adCmdText);
if (!SUCCEEDED(result))
{
AfxMessageBox("can't open feetele table");
}
if(!pApp->m_pjifei3Recordset->adoEOF)
{
flag1=1;
flag=2;
}
pApp->m_pjifei3Recordset->Close();
long lentemp;
TCHAR strcalleddir[50];
lentemp=strlen(strsubCalledNum);
for(long n=0;n<lentemp;n++)
{
lstrcpyn(strcalleddir,strsubCalledNum,n+2);
strSql.Format("select * from feedirection where feedirection='%s'",strcalleddir);
result=pApp->m_pjifei3Recordset->Open(strSql.AllocSysString(),
pApp->m_pjifei3Connection.GetInterfacePtr(),
adOpenDynamic,adLockOptimistic,adCmdText);
if (!SUCCEEDED(result))
{
AfxMessageBox("can't open feedirection table");
}
if (!pApp->m_pjifei3Recordset->adoEOF) //找到被叫局向
{
flag1=1;
flag=2;
}
pApp->m_pjifei3Recordset->Close();
}
if (flag==2)
{
strSql.Format("delete * from blackSub where blackCallingNum='%s' and blackCalledNum='%s'",\
strsubCallingNum,strsubCalledNum);
result=pApp->m_pjifei2Recordset->Open(strSql.AllocSysString(),
pApp->m_pjifei2Connection.GetInterfacePtr(),
adOpenDynamic,adLockOptimistic,adCmdText);
if (!SUCCEEDED(result))
{
AfxMessageBox("can't open blackSub table");
}
}
donerecordcount++;
pos=((donerecordcount*100)/recordcount);
m_blackretrivalprogess.SetPos(pos);
pApp->m_pjifeiRecordset->MoveNext();
}
pApp->m_pjifeiRecordset->Close();
AfxMessageBox("Restoration finished");
CDialog::OnOK();
}
void CblackretrivalDlg::OnCancel()
{
// TODO: Add extra cleanup here
CDialog::OnCancel();
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -