www.pudn.com > daothreadfix.zip > MultiDaoRecordSet.h


#if !defined(AFX_MULTIDAORECORDSET_H__BECC8DC3_A967_11D2_BA4C_006097808646__INCLUDED_) 
#define AFX_MULTIDAORECORDSET_H__BECC8DC3_A967_11D2_BA4C_006097808646__INCLUDED_ 
 
#if _MSC_VER >= 1000 
#pragma once 
#endif // _MSC_VER >= 1000 
// MultiDaoRecordSet.h : header file 
// 
 
///////////////////////////////////////////////////////////////////////////// 
// CMultiDaoRecordSet DAO recordset 
 
enum { 
			MultiDaoOpen, 	 
			MultiDaoClose, 	 
			MultiDaoIsOpen, 
			MultiDaoIsBOF, 
			MultiDaoIsEOF, 
			MultiDaoIsDeleted, 
			MultiDaoIsFieldDirty, 
			MultiDaoIsFieldNull, 
			MultiDaoIsFieldNullable, 
			MultiDaoGetName, 
			MultiDaoGetType, 
			MultiDaoGetSQL, 
			MultiDaoGetEditMode, 
			MultiDaoGetLastModifiedBookmark, 
			MultiDaoGetRecordCount, 
			MultiDaoMoveNext, 
			MultiDaoMovePrev, 
			MultiDaoMoveFirst, 
			MultiDaoMoveLast, 
			MultiDaoMove, 
			MultiDaoFindNext, 
			MultiDaoFindPrev, 
			MultiDaoFindFirst, 
			MultiDaoFindLast, 
			MultiDaoFind, 
			MultiDaoGetBookmark, 
			MultiDaoSetBookmark, 
			MultiDaoAddNew, 
			MultiDaoEdit, 
			MultiDaoUpdate, 
			MultiDaoDelete, 
			MultiDaoCancelUpdate, 
			MultiDaoRequery, 
		}; 
 
 
#ifdef MULTIDAORECORDSET_CPP 
CString cDAOMessageArray[] =   
{ 
	"MultiDaoOpen", 	 
	"MultiDaoClose", 	 
	"MultiDaoIsOpen", 
	"MultiDaoIsBOF", 
	"MultiDaoIsEOF", 
	"MultiDaoIsDeleted", 
	"MultiDaoIsFieldDirty", 
	"MultiDaoIsFieldNull", 
	"MultiDaoIsFieldNullable", 
	"MultiDaoGetName", 
	"MultiDaoGetType", 
	"MultiDaoGetSQL", 
	"MultiDaoGetEditMode", 
	"MultiDaoGetLastModifiedBookmark", 
	"MultiDaoGetRecordCount", 
	"MultiDaoMoveNext", 
	"MultiDaoMovePrev", 
	"MultiDaoMoveFirst", 
	"MultiDaoMoveLast", 
	"MultiDaoMove", 
	"MultiDaoFindNext", 
	"MultiDaoFindPrev", 
	"MultiDaoFindFirst", 
	"MultiDaoFindLast", 
	"MultiDaoFind", 
	"MultiDaoGetBookmark", 
	"MultiDaoSetBookmark", 
	"MultiDaoAddNew", 
	"MultiDaoEdit", 
	"MultiDaoUpdate", 
	"MultiDaoDelete", 
	"MultiDaoCancelUpdate", 
	"MultiDaoRequery", 
}; 
#else 
extern CString cDAOMessageArray[];   
#endif 
 
class CMultiDaoRecordSet : public CDaoRecordset 
{ 
public: 
	 
	//jtm 
	//FORCE user to pass database... 
	CMultiDaoRecordSet(CDaoDatabase* pDatabase); 
 
	~CMultiDaoRecordSet(); 
	 
	DECLARE_DYNAMIC(CMultiDaoRecordSet) 
 
 
 
 
// Field/Param Data 
	//{{AFX_FIELD(CMultiDaoRecordSet, CDaoRecordset) 
	//}}AFX_FIELD 
 
// Overrides 
	// ClassWizard generated virtual function overrides 
	//{{AFX_VIRTUAL(CMultiDaoRecordSet) 
	public: 
	virtual CString GetDefaultDBName();		// Default database name 
	//}}AFX_VIRTUAL 
 
// Implementation 
	//jtm 
	//redefined public functions 
	//Note: I am only redefining SOME 
	//of the public functions this is NOT 
	//a FULL implementation !!!!!! 
public: 
	//jtm -- only supporting this open..... 
	virtual void Open(int nOpenType = AFX_DAO_USE_DEFAULT_TYPE, 
		LPCTSTR lpszSQL = NULL, int nOptions = 0); 
	virtual void Close(); 
	BOOL IsOpen(); 
	BOOL IsBOF(); 
	BOOL IsEOF(); 
	BOOL IsDeleted(); 
	BOOL IsFieldDirty(void* pv); 
	BOOL IsFieldNull(void* pv); 
	BOOL IsFieldNullable(void* pv); 
	CString GetName(); 
	short GetType(); 
	short GetEditMode(); 
	CString GetSQL(); 
	COleVariant GetLastModifiedBookmark(); 
	long GetRecordCount();					   
	void MoveNext(); 
	void MovePrev(); 
	void MoveFirst(); 
	void MoveLast(); 
	virtual void Move(long lRows);		   
	BOOL FindNext(LPCTSTR lpszFilter); 
	BOOL FindPrev(LPCTSTR lpszFilter); 
	BOOL FindFirst(LPCTSTR lpszFilter); 
	BOOL FindLast(LPCTSTR lpszFilter); 
	virtual BOOL Find(long lFindType, LPCTSTR lpszFilter); 
	COleVariant GetBookmark(); 
	void SetBookmark(COleVariant varBookmark);				 
	virtual void AddNew(); 
	virtual void Edit(); 
	virtual void Update(); 
	virtual void Delete(); 
	virtual void CancelUpdate();									 
	virtual void Requery(); 
 
	void *pParam1; 
	void *pParam2; 
	void *pParam3; 
}; 
 
//{{AFX_INSERT_LOCATION}} 
// Microsoft Developer Studio will insert additional declarations immediately before the previous line. 
 
#endif // !defined(AFX_MULTIDAORECORDSET_H__BECC8DC3_A967_11D2_BA4C_006097808646__INCLUDED_)