home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Tricks of the Windows Gam…ming Gurus (2nd Edition)
/
Disc2.iso
/
msdn_vcb
/
samples
/
vc98
/
mfc
/
database
/
dynabind
/
addfield.cpp
next >
Wrap
C/C++ Source or Header
|
1998-03-26
|
2KB
|
85 lines
// addfield.cpp : implementation file
//
// This is a part of the Microsoft Foundation Classes C++ library.
// Copyright (C) 1992-1998 Microsoft Corporation
// All rights reserved.
//
// This source code is only intended as a supplement to the
// Microsoft Foundation Classes Reference and related
// electronic documentation provided with the library.
// See these sources for detailed information regarding the
// Microsoft Foundation Classes product.
#include "stdafx.h"
#include "enroll.h"
#include "sectset.h"
#include "addfield.h"
#include "columnst.h"
#ifdef _DEBUG
#undef THIS_FILE
static char BASED_CODE THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// CAddField dialog
CAddField::CAddField(CWnd* pParent /*=NULL*/)
: CDialog(CAddField::IDD, pParent)
{
//{{AFX_DATA_INIT(CAddField)
m_strField = "";
//}}AFX_DATA_INIT
}
void CAddField::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CAddField)
DDX_Control(pDX, IDC_LIST1, m_lbFields);
DDX_LBString(pDX, IDC_LIST1, m_strField);
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(CAddField, CDialog)
//{{AFX_MSG_MAP(CAddField)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CAddField message handlers
BOOL CAddField::OnInitDialog()
{
CDialog::OnInitDialog();
CColumns* pcols = new CColumns(m_pSet->m_pDatabase);
pcols->m_strTableNameParam = m_pSet->GetTableName();
pcols->Open();
UINT ccols = 0;
while (!pcols->IsEOF())
{
if ((pcols->m_nDataType == SQL_CHAR || pcols->m_nDataType == SQL_VARCHAR) &&
!m_pSet->FindField(pcols->m_strColumnName))
{
ccols++;
m_lbFields.AddString(pcols->m_strColumnName);
}
pcols->MoveNext();
}
m_lbFields.SetSel(0);
if (ccols == 0)
AfxMessageBox("No additional columns available to add.\n", MB_OK | MB_ICONEXCLAMATION);
delete pcols;
m_lbFields.SetCurSel(0);
return TRUE; // return TRUE unless you set the focus to a control
}