📄 dlgbf.cpp
字号:
// DlgBF.cpp : implementation file
//
#include "stdafx.h"
#include "a1.h"
#include "DlgBF.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// CDlgBF dialog
CDlgBF::CDlgBF(CWnd* pParent /*=NULL*/)
: CDialog(CDlgBF::IDD, pParent)
{
//{{AFX_DATA_INIT(CDlgBF)
// NOTE: the ClassWizard will add member initialization here
//}}AFX_DATA_INIT
}
void CDlgBF::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CDlgBF)
// NOTE: the ClassWizard will add DDX and DDV calls here
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(CDlgBF, CDialog)
//{{AFX_MSG_MAP(CDlgBF)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CDlgBF message handlers
void CDlgBF::OnOK()
{
// CDialog::OnOK();
}
BOOL CDlgBF::OnInitDialog()
{
CDialog::OnInitDialog();
// EXCEPTION: OCX Property Pages should return FALSE
return true;
}
CString CDlgBF::ChanShengID()
{
CTime tt=CTime::GetCurrentTime();
CString rq=tt.Format("%Y-%m-%d");
CString str_tt=tt.Format("BACKUP%Y-%m-%d-%H-%M-");
CString sql;
sql.Format("select bf_id from tabbf where rq= #%s# order by bf_id asc",rq);
if(!m_runsql.CheckSQLResult(sql))
{
return (str_tt+"00001");
}
else
{
_variant_t value;CString str,sub;
for(int i=1;i<99999;i++)
{
value=m_runsql.m_recordset->GetCollect("bf_id");
str=(char*)(_bstr_t)value;
sub=str.Mid(23);
int number=atoi(sub);
if(number!=i)
{
break;
}
m_runsql.m_recordset->MoveNext();
if(m_runsql.m_recordset->adoEOF)
{
i++;
break;
}
}
if(i==99999)
{
MessageBox("今日备份数量大于99999了","错误");
return CString("");
}
str.Format("%05d",i);
str_tt=str_tt+str;
return str_tt;
}
}
bool CDlgBF::BeiFen()
{
LONG result;
HKEY hKey;
TCHAR data[400];
DWORD dataSize;
result=::RegOpenKeyEx(HKEY_LOCAL_MACHINE,"SOFTWARE\\ODBC\\ODBC.INI\\yaopin",
0,KEY_QUERY_VALUE,&hKey);
if(result==ERROR_SUCCESS)
{
dataSize=sizeof(data);
::RegQueryValueEx(hKey,"DBQ",NULL,NULL,(LPBYTE)&data,&dataSize);
}
else
{
MessageBox("没找到数据库文件!","错误");
// this->EndDialog(0);
return true;
}
MessageBox("请选择路径和文件名称");
CString bf_id=this->ChanShengID();
CFileDialog dlg(false,"mdb","备份数据"+bf_id,OFN_HIDEREADONLY|OFN_OVERWRITEPROMPT,"(*.mdb)|*.mdb|");//
if(dlg.DoModal()==IDOK)
{
this->BeginWaitCursor();
CString path=dlg.GetPathName();
if(!::CopyFile(data,path,false))
{
MessageBox("文件拷贝错误","错误");
this->EndWaitCursor();
return false;
}
CString sql;
CString rq=bf_id.Mid(6,10);
sql.Format("insert into tabbf(bf_id,rq,bf_path) values('%s',#%s#,'%s')",bf_id,rq,path);
m_runsql.RunSQL(sql);
this->EndWaitCursor();
MessageBox("OK","医药管理系统");
}
return TRUE; // return TRUE unless you set the focus to a control
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -