初步修复
This commit is contained in:
parent
8fc4357cc6
commit
e4714f3f0e
46705 changed files with 12004901 additions and 0 deletions
|
|
@ -0,0 +1,136 @@
|
|||
// SQLServerDataProviderDoc.cpp : implementation of the CSQLServerDataProviderDoc class
|
||||
//
|
||||
|
||||
#include "stdafx.h"
|
||||
#include "SQLServerDataProvider.h"
|
||||
|
||||
#include "SQLServerDataProviderDoc.h"
|
||||
#include "CalendarDataProviderSQL.h"
|
||||
|
||||
#ifdef _DEBUG
|
||||
#define new DEBUG_NEW
|
||||
#undef THIS_FILE
|
||||
static char THIS_FILE[] = __FILE__;
|
||||
#endif
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// CSQLServerDataProviderDoc
|
||||
|
||||
IMPLEMENT_DYNCREATE(CSQLServerDataProviderDoc, CDocument)
|
||||
|
||||
BEGIN_MESSAGE_MAP(CSQLServerDataProviderDoc, CDocument)
|
||||
//{{AFX_MSG_MAP(CSQLServerDataProviderDoc)
|
||||
// NOTE - the ClassWizard will add and remove mapping macros here.
|
||||
// DO NOT EDIT what you see in these blocks of generated code!
|
||||
//}}AFX_MSG_MAP
|
||||
END_MESSAGE_MAP()
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// CSQLServerDataProviderDoc construction/destruction
|
||||
|
||||
CSQLServerDataProviderDoc::CSQLServerDataProviderDoc()
|
||||
{
|
||||
m_pSQLDataProvider = NULL;
|
||||
|
||||
}
|
||||
|
||||
CSQLServerDataProviderDoc::~CSQLServerDataProviderDoc()
|
||||
{
|
||||
SafeReleaseSQLDataProvider();
|
||||
}
|
||||
|
||||
void CSQLServerDataProviderDoc::SafeReleaseSQLDataProvider()
|
||||
{
|
||||
if (m_pSQLDataProvider)
|
||||
{
|
||||
m_pSQLDataProvider->Close();
|
||||
|
||||
m_pSQLDataProvider->InternalRelease();
|
||||
}
|
||||
m_pSQLDataProvider = NULL;
|
||||
}
|
||||
|
||||
BOOL CSQLServerDataProviderDoc::OnNewDocument()
|
||||
{
|
||||
if (!CDocument::OnNewDocument())
|
||||
return FALSE;
|
||||
|
||||
CString strConnectionString = AfxGetApp()->GetProfileString(csOptProfileSection,
|
||||
csOptDataSourceSQLsrvProp, _T(""));
|
||||
|
||||
SafeReleaseSQLDataProvider();
|
||||
m_pSQLDataProvider = new CCalendarDataProviderSQL();
|
||||
|
||||
if (!m_pSQLDataProvider)
|
||||
AfxThrowMemoryException();
|
||||
|
||||
m_pSQLDataProvider->SetConnectionString(strConnectionString);
|
||||
|
||||
if (!m_pSQLDataProvider->Open())
|
||||
{
|
||||
if (!strConnectionString.IsEmpty())
|
||||
{
|
||||
if (AfxGetMainWnd() && !AfxGetMainWnd()->IsWindowVisible())
|
||||
{
|
||||
AfxGetMainWnd()->ShowWindow(SW_SHOW);
|
||||
AfxGetMainWnd()->UpdateWindow();
|
||||
}
|
||||
CString strErr = _T("Cannot connect to DataSource: ");
|
||||
strErr += strConnectionString;
|
||||
AfxMessageBox(strErr);
|
||||
|
||||
}
|
||||
else if (AfxGetMainWnd())
|
||||
{
|
||||
AfxGetMainWnd()->PostMessage(WM_COMMAND, ID_FILE_OPEN);
|
||||
}
|
||||
|
||||
UpdateAllViews(NULL, uvfPopulate + uvfDetachDataProvider);
|
||||
}
|
||||
else
|
||||
{
|
||||
UpdateAllViews(NULL, uvfPopulate + uvfSetDataProvider);
|
||||
}
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// CSQLServerDataProviderDoc serialization
|
||||
|
||||
void CSQLServerDataProviderDoc::Serialize(CArchive& ar)
|
||||
{
|
||||
if (ar.IsStoring())
|
||||
{
|
||||
// TODO: add storing code here
|
||||
}
|
||||
else
|
||||
{
|
||||
// TODO: add loading code here
|
||||
}
|
||||
}
|
||||
|
||||
CXTPCalendarData* CSQLServerDataProviderDoc::GetDataProvider_SQLServer()
|
||||
{
|
||||
return m_pSQLDataProvider;
|
||||
}
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// CSQLServerDataProviderDoc diagnostics
|
||||
|
||||
#ifdef _DEBUG
|
||||
void CSQLServerDataProviderDoc::AssertValid() const
|
||||
{
|
||||
CDocument::AssertValid();
|
||||
}
|
||||
|
||||
void CSQLServerDataProviderDoc::Dump(CDumpContext& dc) const
|
||||
{
|
||||
CDocument::Dump(dc);
|
||||
}
|
||||
#endif //_DEBUG
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// CSQLServerDataProviderDoc commands
|
||||
|
||||
Loading…
Add table
Add a link
Reference in a new issue