コード例 #1
0
BOOL CuDlgDomPropRoleXGrantedEvent::OnInitDialog() 
{
  CDialog::OnInitDialog();

  // subclass list control and connect image list
  VERIFY (m_cListCtrl.SubclassDlgItem (IDC_MFC_LIST1, this));
  m_ImageList.Create(16, 16, TRUE, 1, 1);
  m_ImageList.AddIcon(IDI_TREE_STATIC_DBEVENT);
  m_cListCtrl.SetImageList (&m_ImageList, LVSIL_SMALL);
  m_ImageCheck.Create (IDB_CHECK_NOFRAME, 16, 1, RGB (255, 0, 0));
  m_cListCtrl.SetCheckImageList(&m_ImageCheck);

  CHECKMARK_COL_DESCRIBE  aColumns[LAYOUT_NUMBER] = {
    { _T(""),               FALSE, 80 + 16+4 },   // 16+4 for image
    { _T(""),               FALSE, 80 },
    { _T(""),               FALSE, 80 },
    { _T("Raise"),          TRUE,  -1 },
    { _T("Register"),       TRUE,  -1 },
  };
  lstrcpy(aColumns[0].szCaption, VDBA_MfcResourceString(IDS_TC_NAME));// _T("Name")
  lstrcpy(aColumns[1].szCaption, VDBA_MfcResourceString(IDS_TC_OWNER));//_T("Owner")
  lstrcpy(aColumns[2].szCaption, VDBA_MfcResourceString(IDS_TC_PARENT_DB));
  InitializeColumns(m_cListCtrl, aColumns, LAYOUT_NUMBER);

  return TRUE;  // return TRUE unless you set the focus to a control
                // EXCEPTION: OCX Property Pages should return FALSE
}
コード例 #2
0
BOOL CuDlgDomPropDbSeq::OnInitDialog()
{
    CDialog::OnInitDialog();
    VERIFY (m_cListCtrl.SubclassDlgItem (IDC_MFC_LIST1, this));

    // Initalize the Column Header of CListCtrl (CuListCtrl)
    LV_COLUMN lvcolumn;
    TCHAR strHeader[LAYOUT_NUMBER][32];
    lstrcpy(strHeader[0], VDBA_MfcResourceString(IDS_TC_NAME));// _T("Name")
    lstrcpy(strHeader[1], VDBA_MfcResourceString(IDS_TC_OWNER));//_T("Owner")
    int i, hWidth   [LAYOUT_NUMBER] = {120, 120};

    memset (&lvcolumn, 0, sizeof (LV_COLUMN));
    lvcolumn.mask = LVCF_FMT|LVCF_SUBITEM|LVCF_TEXT|LVCF_WIDTH;
    for (i=0; i<LAYOUT_NUMBER; i++)
    {
        lvcolumn.fmt = LVCFMT_LEFT;
        lvcolumn.pszText = (LPTSTR)(LPCTSTR)strHeader[i];
        lvcolumn.iSubItem = i;
        lvcolumn.cx = hWidth[i];
        m_cListCtrl.InsertColumn (i, &lvcolumn);
    }

    m_ImageList.Create(16, 16, TRUE, 1, 1);
    m_ImageList.AddIcon(IDI_TREE_STATIC_SEQUENCE);
    m_cListCtrl.SetImageList(&m_ImageList, LVSIL_SMALL);

    return TRUE;  // return TRUE unless you set the focus to a control
    // EXCEPTION: OCX Property Pages should return FALSE
}
コード例 #3
0
BOOL CuDlgDomPropTableColumns::OnInitDialog() 
{
  CDialog::OnInitDialog();

  //
  // subclass columns list control and connect image list
  //
  VERIFY (m_cListColumns.SubclassDlgItem (IDC_MFC_LIST1, this));
	m_ImageList.Create(1, 18, TRUE, 1, 0);
	m_cListColumns.SetImageList (&m_ImageList, LVSIL_SMALL);
	m_ImageCheck.Create (IDB_CHECK_NOFRAME, 16, 1, RGB (255, 0, 0));
	m_cListColumns.SetCheckImageList(&m_ImageCheck);

  #define COLLIST_NUMBER  7
  CHECKMARK_COL_DESCRIBE  aColColumns[COLLIST_NUMBER] = {
    /* { _T("Order #"),                FALSE, 60 }, */
    { _T(""),                       FALSE, 80 },
    { _T(""),                       FALSE, 100},
    { _T(""),                       FALSE, -1 },
    { _T("With Null"),              TRUE,  -1 },
    { _T("With Default"),           TRUE,  -1 },
    { _T(""),                       FALSE, -1 },
    { _T(""),                       FALSE, -1 },
  };
  lstrcpy(aColColumns[0].szCaption, VDBA_MfcResourceString(IDS_TC_COL_NAME));
  lstrcpy(aColColumns[1].szCaption, VDBA_MfcResourceString(IDS_TC_TYPE));
  lstrcpy(aColColumns[2].szCaption, VDBA_MfcResourceString(IDS_TC_PRIM_KEY));
  lstrcpy(aColColumns[5].szCaption, VDBA_MfcResourceString(IDS_TC_DEFAULT_SPEC));
  lstrcpy(aColColumns[6].szCaption, VDBA_MfcResourceString(IDS_TC_COLUMN_COMMENT));

  InitializeColumns(m_cListColumns, aColColumns, COLLIST_NUMBER);

  return TRUE;  // return TRUE unless you set the focus to a control
                // EXCEPTION: OCX Property Pages should return FALSE
}
コード例 #4
0
void CxDlgUserMod::ExecuteRemoteCommand(LPCTSTR csCommandLine)
{
	int hnode;
	CString csTempo,csNodeName,csTitle;

	LPUCHAR vnodeName = (LPUCHAR)GetVirtNodeName ( m_nNodeHandle);
	csNodeName = vnodeName;
	hnode = OpenNodeStruct  ((LPUCHAR)(LPCTSTR)csNodeName);
	if (hnode<0)
	{
		CString strMsg = VDBA_MfcResourceString (IDS_MAX_NB_CONNECT);//_T("Maximum number of connections has been reached"
		strMsg += CString(VDBA_MfcResourceString (IDS_E_USERMOD));            // " - Cannot launch 'usermod' command.");
		AfxMessageBox (strMsg);
		return;
	}
	// Temporary for activate a session
	UCHAR buf[MAXOBJECTNAME];
	DOMGetFirstObject (hnode, OT_DATABASE, 0, NULL, FALSE, NULL, buf, NULL, NULL);
	csTitle.Format(IDS_T_USERMOD, (LPCTSTR)csNodeName, (LPCTSTR)m_csDBName);
	execrmcmd1( (char *)(LPCTSTR)csNodeName,
	            (char *)(LPCTSTR)csCommandLine,
	            (char *)(LPCTSTR)csTitle,
	            TRUE);

	CloseNodeStruct(hnode,FALSE);
}
コード例 #5
0
void CuDlgDBEventPane01::UpdateControl()
{
    CView*  pView = (CView*)GetParent();
    ASSERT  (pView);
    CDbeventDoc* pDoc = (CDbeventDoc*)pView->GetDocument();
    ASSERT  (pDoc);
    CWnd*   pSplitter = pView->GetParent();
    ASSERT (pSplitter);
    CDbeventFrame* pFrame = (CDbeventFrame*)pSplitter->GetParent();
    ASSERT (pFrame);
    //
    // Remark:
    // InitializeDBEvent() is called on the CBN_SELCHANGE of Database ComboBox.
    CString strNone;
    if (strNone.LoadString (IDS_DATABASE_NONE) == 0)
        strNone = "<None>";
    if (pDoc->m_strDBName == "" || pDoc->m_strDBName == strNone)
        return;
    
    // Load ...
    // Initialize the new Database.
    if (DBETraceInit (pDoc->m_hNode, (LPUCHAR)(LPCTSTR)pDoc->m_strDBName , pFrame->m_hWnd, &(pDoc->m_nHandle)) == RES_SUCCESS)
    {
        pDoc->m_bDBInit = TRUE;
        m_strCurrentDB  = pDoc->m_strDBName;
    }
    else
    {
        pDoc->m_bDBInit = FALSE;
        pDoc->m_nHandle = -1;
        BfxMessageBox (VDBA_MfcResourceString(IDS_E_INITIALIZE_DB_EVENT));//"Error while initializing the Database for DB Event Registration"
    }
    if (pDoc->m_bDBInit)
    {
        int index;
        CTypedPtrList<CObList, CuDataRegisteredDBevent*>& listDBEvent = pDoc->m_listRegisteredDBEvent;

        POSITION pos = listDBEvent.GetHeadPosition();
        while  (pos != NULL)
        {
            CuDataRegisteredDBevent* dbe = listDBEvent.GetNext (pos);

            index = m_cListDBEvent.AddString (dbe->m_strDBEvent);
            if (index != LB_ERR)
            {
                LPTSTR lpszOwner = new TCHAR [dbe->m_strOwner.GetLength() +1];
                lstrcpy (lpszOwner, (LPTSTR)(LPCTSTR)dbe->m_strOwner);
                m_cListDBEvent.SetItemData (index, (DWORD)lpszOwner);
                if (dbe->m_bRegistered)
                {
                    if (DBETraceRegister (pDoc->m_nHandle, (LPUCHAR)(LPCTSTR)dbe->m_strDBEvent, (LPUCHAR)(LPCTSTR)dbe->m_strOwner) != RES_SUCCESS)
			            BfxMessageBox (VDBA_MfcResourceString(IDS_E_REGISTERING_DB_EVENT));//"Error while Registering DB Event"
                    else
                        m_cListDBEvent.SetCheck (index, 1);
                }
            }
        }
    }
}
コード例 #6
0
void CuDlgDomPropTableStatistic::OnGenerate() 
{
	CWaitCursor doWaitCursor;
	SORTPARAMS s;
	s.m_bAsc  = m_statisticData.m_bAsc;
	s.m_nItem = m_statisticData.m_nCurrentSort;
	int nSelected = m_cListColumn.GetNextItem (-1, LVNI_SELECTED);

	if (nSelected != -1)
	{
		CaTableStatisticColumn* pColumn = (CaTableStatisticColumn*)m_cListColumn.GetItemData (nSelected);
		if (!pColumn)
			return;
		if(pColumn->m_bComposite && m_statisticData.m_nNumColumnKey<2)
		{
			if (m_statisticData.m_nOT == OT_TABLE)
			{
				//
				// There is only one column in the key structure of the base table,
				// therefore a composite histogram cannot be generated.
				//
				AfxMessageBox(VDBA_MfcResourceString(IDS_ERR_TBL_ONLY_WITH_TWO_KEY_COL));
				return;
			}
			else if (m_statisticData.m_nOT == OT_INDEX)
			{
				//
				// Statistics cannot be generated on this index since it has only
				// 1 key column. This operation is used to generate a composite histogram.
				AfxMessageBox(VDBA_MfcResourceString(IDS_ERR_ONLY_WITH_TWO_KEY_COL));
				return;
			}
		}

		CString strColumn = pColumn->m_strColumn;

		if (!Table_GenerateStatistics (this->m_hWnd ,pColumn, m_statisticData))
			return;
		if (!QueryStatColumns())
			return;
		m_cListColumn.SortItems(CaTableStatisticColumn::Compare, (LPARAM)&s);
		//
		// Try to selected the old selected item:
		nSelected = Find (strColumn);
		if (nSelected != -1)
		{
			//
			// This line cause to execute the member: OnItemchangedList1()
			// and then draw the statistic:
			m_cListColumn.SetItemState (nSelected, LVIS_SELECTED|LVIS_FOCUSED, LVIS_SELECTED|LVIS_FOCUSED);
		}
	}
	EnableButtons();
}
コード例 #7
0
BOOL IsServiceInstalled (LPCTSTR lpszServiceName)
{
	SC_HANDLE  schSCManager;
	SC_HANDLE  schService;

	//
	// Connect to service control manager on the local machine and
	// open the ServicesActive database
	schSCManager = OpenSCManager(NULL, NULL, SC_MANAGER_ALL_ACCESS);
	if (schSCManager == NULL )
	{
		CString strMsg;
		LONG err = GetLastError();
		
		switch (err)
		{
		case ERROR_ACCESS_DENIED:
		case ERROR_DATABASE_DOES_NOT_EXIST:
		case ERROR_INVALID_PARAMETER:
			//strMsg = _T("Failed to connect to the Service Control Manager");
			AfxMessageBox (VDBA_MfcResourceString(IDS_E_CONNECT_SERVICE));
			break;
		}
		return FALSE;
	}

	// 
	// Check if the Service 'lpszServiceName' is already installed
	// REGEDT32.EXE can check this on
	// HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services
	schService = OpenService (schSCManager, lpszServiceName, SERVICE_ALL_ACCESS);
	if (schService != NULL)
		return TRUE;
	return FALSE;
}
コード例 #8
0
BOOL CuDlgDomPropReplicConn::OnInitDialog() 
{
  CDialog::OnInitDialog();
  VERIFY (m_cListCtrl.SubclassDlgItem (IDC_MFC_LIST1, this));

  // Initalize the Column Header of CListCtrl (CuListCtrl)
  LV_COLUMN lvcolumn;
  TCHAR strHeader[LAYOUT_NUMBER][32] = 
  {
      _T("#"),
      _T(""),
  };
  lstrcpy(strHeader[1], VDBA_MfcResourceString(IDS_TC_VNODE));
  int i, hWidth   [LAYOUT_NUMBER] = {30 + 16, 200};   // + 16 for image

  memset (&lvcolumn, 0, sizeof (LV_COLUMN));
  lvcolumn.mask = LVCF_FMT|LVCF_SUBITEM|LVCF_TEXT|LVCF_WIDTH;
  for (i=0; i<LAYOUT_NUMBER; i++)
  {
      //CString strHeader;
      //strHeader.LoadString (strHeaderID[i]);
      lvcolumn.fmt = LVCFMT_LEFT;
      lvcolumn.pszText = (LPTSTR)(LPCTSTR)strHeader[i];
      lvcolumn.iSubItem = i;
      lvcolumn.cx = hWidth[i];
      m_cListCtrl.InsertColumn (i, &lvcolumn); 
  }

  m_ImageList.Create(16, 16, TRUE, 1, 1);
  m_ImageList.AddIcon(IDI_TREE_STATIC_REPLIC_CONNECTION);
  m_cListCtrl.SetImageList(&m_ImageList, LVSIL_SMALL);

  return TRUE;  // return TRUE unless you set the focus to a control
                // EXCEPTION: OCX Property Pages should return FALSE
}
コード例 #9
0
void CxDlgTablePrimaryKey::OnAddColumn() 
{
	if (m_bAlter)
		return;

	CString strItem;
	int iIndex = -1;
	int i, idx, nCount = m_cListCtrl.GetItemCount();

	for (i=0; i<nCount; i++)
	{
		if (m_cListCtrl.GetItemState(i, LVIS_SELECTED) & LVIS_SELECTED)
		{
			strItem = m_cListCtrl.GetItemText (i, 0);
			if (m_cListKey.FindStringExact (-1, strItem) != LB_ERR)
				continue;
			if (m_cListCtrl.GetCheck(i, 1) == TRUE)
			{
				//CString strMsg = _T("Nullable column cannot be part of primary key.");
				AfxMessageBox (VDBA_MfcResourceString(IDS_E_NULLABLE_COL));
				continue;
			}
			idx = m_cListKey.AddString(strItem);
		}
	}
	EnableControls();
}
コード例 #10
0
BOOL CuDlgDomPropTableGrantees::OnInitDialog()
{
    CDialog::OnInitDialog();

    // subclass list control and connect image list
    VERIFY (m_cListCtrl.SubclassDlgItem (IDC_MFC_LIST1, this));
    m_ImageList.Create(16, 16, TRUE, 1, 1);
    m_ImageList.AddIcon(IDI_TREE_STATIC_DBGRANTEES); // Index 0: unknown type
    m_ImageList.AddIcon(IDI_TREE_STATIC_USER);              // Index 1: user
    m_ImageList.AddIcon(IDI_TREE_STATIC_GROUP);             // Index 2: group
    m_ImageList.AddIcon(IDI_TREE_STATIC_ROLE);              // Index 3: role
    m_cListCtrl.SetImageList (&m_ImageList, LVSIL_SMALL);
    m_ImageCheck.Create (IDB_CHECK_NOFRAME, 16, 1, RGB (255, 0, 0));
    m_cListCtrl.SetCheckImageList(&m_ImageCheck);

    // Initalize the Column Header of CListCtrl (CuListCtrl)
    CHECKMARK_COL_DESCRIBE  aColumns[LAYOUT_NUMBER] = {
        {  _T(""),          FALSE, 80 + 16 + 4 },  // + 16+4 since image
        {  _T("Select"),    TRUE,  -1 },
        {  _T("Insert"),    TRUE,  -1 },
        {  _T("Update"),    TRUE,  -1 },
        {  _T("Delete"),    TRUE,  -1 },
        {  _T("Reference"), TRUE,  -1 },
        {  _T("Copy Into"), TRUE,  -1 },
        {  _T("Copy From"), TRUE,  -1 },
        {  _T("All"),       TRUE,  -1 },
    };
    lstrcpy(aColumns[0].szCaption, VDBA_MfcResourceString(IDS_TC_NAME)); // _T("Name")
    InitializeColumns(m_cListCtrl, aColumns, LAYOUT_NUMBER-1); // Remove _T("All")

    return TRUE;  // return TRUE unless you set the focus to a control
    // EXCEPTION: OCX Property Pages should return FALSE
}
コード例 #11
0
void CxDlgPreferencesBackgroundRefresh::FillObjectType ()
{
	int  nIdx;
	FREQUENCY* pObj = NULL;
	CString strMsg = VDBA_MfcResourceString(IDS_E_INITIALIZE_OBJECT);//_T("Cannot Initialize Object Types.");
	InitObjectType ();
	nIdx = m_cComboObjectType.AddString (m_strAllObject);
	if (nIdx == CB_ERR)
	{
		AfxMessageBox (strMsg);
		return;
	}
	pObj = new FREQUENCY;
	memset (pObj, 0, sizeof(FREQUENCY));
	m_cComboObjectType.SetItemData (nIdx, (DWORD)pObj);

	for (int i = 0; i < GetMaxRefreshObjecttypes(); i++)
	{
		nIdx = m_cComboObjectType.AddString ((LPCTSTR)RefreshSettingsObjectTypeString [RefObjTypePosInArray(i)].szString);
		if (nIdx == CB_ERR)
		{
			AfxMessageBox (strMsg);
			return;
		}
		pObj = new FREQUENCY;
		memcpy (pObj, &(FreqSettings[RefObjTypePosInArray(i)]), sizeof (FREQUENCY));
		m_cComboObjectType.SetItemData (nIdx, (DWORD)pObj);
	}
}
コード例 #12
0
BOOL CuDlgDomPropIceFacetNPageRoles::OnInitDialog()
{
    CDialog::OnInitDialog();

    // subclass list control and connect image list
    VERIFY (m_cListCtrl.SubclassDlgItem (IDC_MFC_LIST1, this));
    m_ImageList.Create(16, 16, TRUE, 1, 1);
    m_ImageList.AddIcon(IDI_TREE_STATIC_ICE_ROLE);
    m_cListCtrl.SetImageList(&m_ImageList, LVSIL_SMALL);
    m_ImageCheck.Create (IDB_CHECK_NOFRAME, 16, 1, RGB (255, 0, 0));
    m_cListCtrl.SetCheckImageList(&m_ImageCheck);

    // Initalize the Column Header of CListCtrl (CuListCtrl)
    CHECKMARK_COL_DESCRIBE  aColumns[LAYOUT_NUMBER] = {
        {  _T(""),    FALSE, 100 + 16 + 4 },  // + 16+4 since image
        {  _T("Execute"), TRUE,  -1 },
        {  _T("Read"),    TRUE,  -1 },
        {  _T("Update"),  TRUE,  -1 },
        {  _T("Delete"),  TRUE,  -1 },
    };
    lstrcpy(aColumns[0].szCaption, VDBA_MfcResourceString(IDS_TC_NAME)); // _T("Name")
    InitializeColumns(m_cListCtrl, aColumns, LAYOUT_NUMBER);

    return TRUE;  // return TRUE unless you set the focus to a control
    // EXCEPTION: OCX Property Pages should return FALSE
}
コード例 #13
0
BOOL CuDlgDBEventPane02::OnMaxLineChange (int nMax)
{
    CView*  pView = (CView*)GetParent();
    ASSERT  (pView);
    CDbeventDoc* pDoc = (CDbeventDoc*)pView->GetDocument();
    ASSERT  (pDoc);

    int nCount = m_cListRaisedDBEvent.GetItemCount();
    if (nCount > nMax)
    {
        int i, diff = nCount - nMax;
        if (pDoc->m_bClearFirst)
        {
            for (i=0; i<diff; i++)
                m_cListRaisedDBEvent.DeleteItem (0); 
        }
        else
        {
            //CString strMsg = "New value is smaller than actual number of lines,\n"
            //                 "and 'Clear First When Max Reached is not checked'.\n"
            //                 "Previous value is kept";
            BfxMessageBox (VDBA_MfcResourceString(IDS_E_NEW_VALUE), MB_OK|MB_ICONEXCLAMATION);
            return FALSE;
        }
    }
    return TRUE;
}
コード例 #14
0
BOOL CuDlgDomPropTableStatistic::OnInitDialog() 
{
	CDialog::OnInitDialog();
	VERIFY (m_cListColumn.SubclassDlgItem (IDC_MFC_LIST1, this));
	LONG style = GetWindowLong (m_cListColumn.m_hWnd, GWL_STYLE);
	style |= LVS_SHOWSELALWAYS;
	SetWindowLong (m_cListColumn.m_hWnd, GWL_STYLE, style);
	m_ImageCheck.Create (IDB_CHECK_NOFRAME, 16, 1, RGB (255, 0, 0));
	m_cListColumn.SetCheckImageList(&m_ImageCheck);

	m_ImageList.Create(1, 23, TRUE, 1, 0);
	VERIFY (m_cListStatItem.SubclassDlgItem (IDC_MFC_LIST2, this));
	m_cListStatItem.SetImageList (&m_ImageList, LVSIL_SMALL);

	int i;
	LV_COLUMN lvcolumn;
	const int LAYOUT_NUMBER_STATITEM = 6;
	LSCTRLHEADERPARAMS statHeader [LAYOUT_NUMBER_STATITEM] = 
	{
		{_T("#"),     30, LVCFMT_RIGHT, FALSE},
		{_T(""),      80, LVCFMT_LEFT,  FALSE},
		{_T(""),      50, LVCFMT_RIGHT, FALSE},
		{_T(""),      100, LVCFMT_LEFT,  FALSE},
		{_T(""),      60, LVCFMT_RIGHT, FALSE},
		{_T(""),      100, LVCFMT_LEFT,  FALSE}
	};
	lstrcpy(statHeader [1].m_tchszHeader,VDBA_MfcResourceString(IDS_TC_VALUE));      //_T("Value")
	lstrcpy(statHeader [2].m_tchszHeader,VDBA_MfcResourceString(IDS_TC_COUNT));      //_T("Count")
	lstrcpy(statHeader [3].m_tchszHeader,VDBA_MfcResourceString(IDS_TC_GRAPH));      //_T("Graph")
	lstrcpy(statHeader [4].m_tchszHeader,VDBA_MfcResourceString(IDS_TC_REP_FACTOR)); //_T("Rep Factor")
	lstrcpy(statHeader [5].m_tchszHeader,VDBA_MfcResourceString(IDS_TC_GRAPH));      //_T("Graph")

	memset (&lvcolumn, 0, sizeof (LV_COLUMN));
	lvcolumn.mask = LVCF_FMT|LVCF_SUBITEM|LVCF_TEXT|LVCF_WIDTH;
	for (i=0; i<LAYOUT_NUMBER_STATITEM; i++)
	{
		lvcolumn.fmt = statHeader[i].m_fmt;
		lvcolumn.pszText = (LPTSTR)(LPCTSTR)statHeader[i].m_tchszHeader;
		lvcolumn.iSubItem = i;
		lvcolumn.cx = statHeader[i].m_cxWidth;
		m_cListStatItem.InsertColumn (i, &lvcolumn, statHeader[i].m_bUseCheckMark);
	}

	EnableButtons();
	return TRUE;  // return TRUE unless you set the focus to a control
	              // EXCEPTION: OCX Property Pages should return FALSE
}
コード例 #15
0
BOOL IsServiceRunning (LPCTSTR lpszServiceName)
{
	SC_HANDLE  schSCManager;
	SC_HANDLE  schService;
	SERVICE_STATUS svrstatus;
	memset (&svrstatus, sizeof(svrstatus), 0);
	//
	// Connect to service control manager on the local machine and 
	// open the ServicesActive database
	schSCManager = OpenSCManager(NULL, NULL, SC_MANAGER_ALL_ACCESS);
	if (schSCManager == NULL )
	{
		CString strMsg;
		LONG err = GetLastError();
		
		switch (err)
		{
		case ERROR_ACCESS_DENIED:
		case ERROR_DATABASE_DOES_NOT_EXIST:
		case ERROR_INVALID_PARAMETER:
			//strMsg = _T("Failed to connect to the Service Control Manager");
			AfxMessageBox (VDBA_MfcResourceString(IDS_E_CONNECT_SERVICE));
			break;
		}
		return FALSE;
	}
	// 
	// Check if the Service 'lpszServiceName' is already installed
	// REGEDT32.EXE can check this on
	// HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services
	schService = OpenService (schSCManager, lpszServiceName, SERVICE_ALL_ACCESS);
	if (schService == NULL)
		return FALSE;
	// 
	// Check if the Service 'lpszServiceName' is Running
	if (!QueryServiceStatus (schService, &svrstatus))
	{
		//CString strMsg = _T("Cannot query the service status information");
		AfxMessageBox (VDBA_MfcResourceString(IDS_E_SERVICE_STATUS));
		return FALSE;
	}
	if (svrstatus.dwCurrentState == SERVICE_RUNNING)
		return TRUE;
	return FALSE;
}
コード例 #16
0
void CuDlgDomPropTblPages::SetCellLegendsToHashed()
{
  m_stCell1.SetItemType(PAGE_HEADER);         // Free Header page
  m_stCell2.SetItemType(PAGE_MAP);            // Free Map    page

  m_stCell3.SetItemType(PAGE_UNUSED);         // Unused page
  m_stPg3.SetWindowText(VDBA_MfcResourceString(IDS_I_UNUSED));//_T("Unused")

  m_stCell4.ShowWindow(SW_HIDE);
  m_stPg4.ShowWindow(SW_HIDE);

  m_stCell5.SetItemType(PAGE_DATA);                 // Data page
  m_stPg5.SetWindowText(VDBA_MfcResourceString(IDS_I_DATA_WO));//_T("Data w/o overflow"
  m_stCell6.SetItemType(PAGE_EMPTY_DATA_NO_OVF);    // Empty data, with no overflow page
  m_stPg6.SetWindowText(VDBA_MfcResourceString(IDS_I_EMPTY_WO));//_T("Empty w/o overflow")
  m_stCell7.SetItemType(PAGE_DATA_WITH_OVF);        // Non-Empty data, with overflow pages
  m_stPg7.SetWindowText(VDBA_MfcResourceString(IDS_I_DATA_WITH));//_T("Data with overflow")
  m_stCell8.SetItemType(PAGE_EMPTY_DATA_WITH_OVF);  // Empty data, wih overflow pages
  m_stPg8.SetWindowText(VDBA_MfcResourceString(IDS_I_EMPTY_WITH));//_T("Empty with overflow")

  m_stCell9.SetItemType(PAGE_OVERFLOW_DATA);        // Overflow data page
  m_stPg9.SetWindowText(VDBA_MfcResourceString(IDS_I_OVERFLOW_WITH_DTA));//_T("Overflow with data")
  m_stCell10.SetItemType(PAGE_EMPTY_OVERFLOW);      // Empty overflow page
  m_stPg10.SetWindowText(VDBA_MfcResourceString(IDS_I_EMPTY_OVERFLOW));//_T("Empty Overflow")

  m_stCell11.ShowWindow(SW_HIDE);
  m_stPg11.ShowWindow(SW_HIDE);
  m_stCell12.ShowWindow(SW_HIDE);
  m_stPg12.ShowWindow(SW_HIDE);
}
コード例 #17
0
void CuDlgDomPropTblPages::SetCellLegendsToNonHashed()
{
  m_stCell1.SetItemType(PAGE_HEADER);         // Free Header page
  m_stCell2.SetItemType(PAGE_MAP);            // Free Map    page

  m_stCell3.SetItemType(PAGE_FREE);           // Free page, has been used and subsequently made free
  m_stPg3.SetWindowText(VDBA_MfcResourceString(IDS_I_FREE));//_T("Free")

  m_stCell4.SetItemType(PAGE_UNUSED);         // Unused page, has never been written to
  m_stCell4.ShowWindow(SW_SHOW);
  m_stPg4.ShowWindow(SW_SHOW);

  m_stCell5.SetItemType(PAGE_DATA);           // Data page
  m_stPg5.SetWindowText(VDBA_MfcResourceString(IDS_I_DATA));//_T("Data")
  m_stCell6.SetItemType(PAGE_ASSOCIATED);     // Associated data page
  m_stPg6.SetWindowText(VDBA_MfcResourceString(IDS_I_ASSO_DATA));//_T("Associated data")
  m_stCell7.SetItemType(PAGE_OVERFLOW_LEAF);  // Overflow leaf page
  m_stPg7.SetWindowText(VDBA_MfcResourceString(IDS_I_OVERFLOW_LEAF));//_T("Overflow leaf")
  m_stCell8.SetItemType(PAGE_OVERFLOW_DATA);  // Overflow data page
  m_stPg8.SetWindowText(VDBA_MfcResourceString(IDS_I_OVERFLOW_DATA));//_T("Overflow data")

  m_stCell9.SetItemType(PAGE_ROOT);           // Root page
  m_stPg9.SetWindowText(VDBA_MfcResourceString(IDS_I_ROOT));//_T("Root")
  m_stCell10.SetItemType(PAGE_INDEX);         // Index page
  m_stPg10.SetWindowText(VDBA_MfcResourceString(IDS_I_PAGE_INDEX));//_T("Index")

  m_stCell11.ShowWindow(SW_SHOW);
  m_stPg11.ShowWindow(SW_SHOW);
  m_stCell12.ShowWindow(SW_SHOW);
  m_stPg12.ShowWindow(SW_SHOW);

  m_stCell11.SetItemType(PAGE_SPRIG);         // Sprig page
  m_stCell12.SetItemType(PAGE_LEAF);          // Leaf page
}
コード例 #18
0
BOOL CuDlgDomPropRoleXGrantedDb::OnInitDialog() 
{
  CDialog::OnInitDialog();

  // subclass list control and connect image list
  VERIFY (m_cListCtrl.SubclassDlgItem (IDC_MFC_LIST1, this));
  m_ImageList.Create(16, 16, TRUE, 1, 1);
  m_ImageList.AddIcon(IDI_TREE_STATIC_DATABASE);
  m_cListCtrl.SetImageList (&m_ImageList, LVSIL_SMALL);
  m_ImageCheck.Create (IDB_CHECK_NOFRAME, 16, 1, RGB (255, 0, 0));
  m_cListCtrl.SetCheckImageList(&m_ImageCheck);

  CHECKMARK_COL_DESCRIBE  aColumns[LAYOUT_NUMBER] = {
    { _T(""),               FALSE, 80 + 16+4 },   // 16+4 for image
    {   _T("access"),    TRUE,  -1 },     //  OT_DBGRANT_ACCESY_USER,
    {   _T("no access"),    TRUE,  -1 },  //  OT_DBGRANT_ACCESN_USER,
    {   _T("crepr"),    TRUE,  -1 },      //  OT_DBGRANT_CREPRY_USER,
    {   _T("no crepr"),    TRUE,  -1 },   //  OT_DBGRANT_CREPRN_USER,
    {   _T("cretb"),    TRUE,  -1 },      //  OT_DBGRANT_CRETBY_USER,
    {   _T("no cretb"),    TRUE,  -1 },   //  OT_DBGRANT_CRETBN_USER,
    {   _T("dbadm"),    TRUE,  -1 },      //  OT_DBGRANT_DBADMY_USER,
    {   _T("no dbadm"),    TRUE,  -1 },   //  OT_DBGRANT_DBADMN_USER,
    {   _T("lkmod"),    TRUE,  -1 },      //  OT_DBGRANT_LKMODY_USER,
    {   _T("no lkmod"),    TRUE,  -1 },   //  OT_DBGRANT_LKMODN_USER,
    {   _T("qryio"),    TRUE,  -1 },      //  OT_DBGRANT_QRYIOY_USER,
    {   _T("no qryio"),    TRUE,  -1 },   //  OT_DBGRANT_QRYION_USER,
    {   _T("qryrw"),    TRUE,  -1 },      //  OT_DBGRANT_QRYRWY_USER,
    {   _T("no qryrw"),    TRUE,  -1 },   //  OT_DBGRANT_QRYRWN_USER,
    {   _T("updsc"),    TRUE,  -1 },      //  OT_DBGRANT_UPDSCY_USER,
    {   _T("no updsc"),    TRUE,  -1 },   //  OT_DBGRANT_UPDSCN_USER,

    {   _T("selsc"),    TRUE,  -1 },      //  OT_DBGRANT_SELSCY_USER,
    {   _T("no selsc"),    TRUE,  -1 },   //  OT_DBGRANT_SELSCN_USER,
    {   _T("cnctl"),    TRUE,  -1 },      //  OT_DBGRANT_CNCTLY_USER,
    {   _T("no cnctl"),    TRUE,  -1 },   //  OT_DBGRANT_CNCTLN_USER,
    {   _T("idltl"),    TRUE,  -1 },      //  OT_DBGRANT_IDLTLY_USER,
    {   _T("no idltl"),    TRUE,  -1 },   //  OT_DBGRANT_IDLTLN_USER,
    {   _T("sespr"),    TRUE,  -1 },      //  OT_DBGRANT_SESPRY_USER,
    {   _T("no sespr"),    TRUE,  -1 },   //  OT_DBGRANT_SESPRN_USER,
    {   _T("tblst"),    TRUE,  -1 },      //  OT_DBGRANT_TBLSTY_USER,
    {   _T("no tblst"),    TRUE,  -1 },   //  OT_DBGRANT_TBLSTN_USER,

    {   _T("qrycpu"),    TRUE,  -1 },        //  OT_DBGRANT_QRYCPY_USER,
    {   _T("no qrycpu"),    TRUE,  -1 },     //  OT_DBGRANT_QRYCPN_USER,
    {   _T("qrypage"),    TRUE,  -1 },       //  OT_DBGRANT_QRYPGY_USER,
    {   _T("no qrypage"),    TRUE,  -1 },    //  OT_DBGRANT_QRYPGN_USER,
    {   _T("qrycost"),    TRUE,  -1 },       //  OT_DBGRANT_QRYCOY_USER,
    {   _T("no qrycost"),    TRUE,  -1 },    //  OT_DBGRANT_QRYCON_USER,
    {   _T("sequence"),    TRUE,  -1 },      //  OT_DBGRANT_SEQCRY_USER,
    {   _T("no sequence"),    TRUE,  -1 }    //  OT_DBGRANT_SEQCRN_USER,
  };
  lstrcpy(aColumns[0].szCaption, VDBA_MfcResourceString(IDS_TC_NAME));// _T("Name")
  InitializeColumns(m_cListCtrl, aColumns, GetOIVers()>=OIVERS_30? LAYOUT_NUMBER: LAYOUT_NUMBER-2);

  return TRUE;  // return TRUE unless you set the focus to a control
                // EXCEPTION: OCX Property Pages should return FALSE
}
コード例 #19
0
void CxDlgPreferencesBackgroundRefresh::SaveAsDefaults ()
{
	TCHAR freq [10];
	TCHAR unit [10];
	TCHAR load_opt    [3];
	TCHAR parent_opt  [3];
	TCHAR privateString [30];
	CString strFile;
	FREQUENCY* pCur = NULL;
	int   i, nCount = m_cComboObjectType.GetCount();

	ASSERT (nCount == (GetMaxRefreshObjecttypes() +1));
	if (strFile.LoadString (IDS_INIFILENAME) == 0)
		strFile = _T("vdba.ini");
	for (i = 1; i < nCount; i++)
	{
		pCur = (FREQUENCY*)m_cComboObjectType.GetItemData (i);
		if (!pCur)
		{
			CString strMsg = VDBA_MfcResourceString(IDS_E_SETTING_DEFAULT);//_T("Cannot Save Setting as Defaults.");
			AfxMessageBox (strMsg);
			return;
		}
		wsprintf (freq,         _T("%d"), pCur->count); 
		wsprintf (unit,         _T("%d"), pCur->unit );
		wsprintf (load_opt    , _T("%d"), pCur->bOnLoad);
		wsprintf (parent_opt  , _T("%d"), pCur->bSyncOnParent);
		
		wsprintf (privateString, "%s %s %s %s", freq, unit, load_opt, parent_opt);
		
		WritePrivateProfileString (
			"BACKGROUND REFRESH SETTINGS",
			RefreshSettingsObjectTypeString [RefObjTypePosInArray(i-1)].szString,
			privateString,
			strFile);
	}

	int nMessage = REFRESH_NONE;
	int nID = GetCheckedRadioButton (IDC_MFC_RADIO1, IDC_MFC_RADIO3);
	switch (nID)
	{
	case IDC_MFC_RADIO1:
		nMessage = REFRESH_WINDOW_POPUP;
		break;
	case IDC_MFC_RADIO2:
		nMessage = REFRESH_STATUSBAR;
		break;
	case IDC_MFC_RADIO3:
		nMessage = REFRESH_NONE;
		break;
	}
	SettingSaveFlagSaveAsDefault(m_bSaveAsDefault);
	SettingSaveFlagRefreshSyncAmongObject(m_bSynchronizeAmongObjects);
	SettingSaveFlagRefreshMessageOption(nMessage);
}
コード例 #20
0
LONG CuDlgDomPropTableStatistic::OnLoad (WPARAM wParam, LPARAM lParam)
{
	int nCount = 0;
	try
	{
		LPCTSTR pClass = (LPCTSTR)wParam;
		ASSERT (lstrcmp (pClass, "CuDomPropDataTableStatistic") == 0);
		CuDomPropDataTableStatistic* pData = (CuDomPropDataTableStatistic*)lParam;
		m_nOT = pData->m_statisticData.m_nOT;
		m_statisticData = pData->m_statisticData;
		InitializeStatisticHeader(m_statisticData.m_nOT);

		//
		// List of statistic columns;
		CaTableStatisticColumn* pColumn = NULL;
		while (!m_statisticData.m_listColumn.IsEmpty())
		{
			pColumn = m_statisticData.m_listColumn.RemoveHead();
			if (m_cListColumn.InsertItem (nCount, "") != -1)
			{
				m_cListColumn.SetItemData (nCount, (DWORD)pColumn);
				nCount++;
			}
		}
		UpdateDisplayList1();
		m_bLoad = TRUE; // Prevent from calling OnItemchangedList1()
		m_cListColumn.SetItemState (pData->m_nSelectColumn, LVIS_SELECTED, LVIS_SELECTED);
		m_bLoad = FALSE;
		//
		// Draw statistic Items:
		DrawStatistic ();
		//
		// Extra information:
		m_bUniqueFlag          = m_statisticData.m_bUniqueFlag;
		m_bCompleteFlag        = m_statisticData.m_bCompleteFlag;
		m_strUniqueValues.Format (_T("%ld"), m_statisticData.m_lUniqueValue);
		m_strRepetitionFactors.Format (_T("%ld"), m_statisticData.m_lRepetitionFlag);
		UpdateData (FALSE);
		m_bExecuted = TRUE;
	}
	catch (CMemoryException* e)
	{
		VDBA_OutOfMemoryMessage();
		e->Delete();
	}
	catch (...)
	{
		//CString strMsg = _T("Internal error: cannot display the statistic of the table.");
		AfxMessageBox (VDBA_MfcResourceString(IDS_E_STAT_TABLE));
	}
	EnableButtons();
	return 0L;
}
コード例 #21
0
void CxDlgCheckPointLst::InitializeListCtrl()
{
	//
	// subclass columns list control and connect image list
	//
	VERIFY (m_cListCtrl.SubclassDlgItem (IDC_LIST_CHECKPOINT, this));
	m_ImageList.Create(1, 18, TRUE, 1, 0);
	m_cListCtrl.SetImageList (&m_ImageList, LVSIL_SMALL);
	m_ImageCheck.Create (IDB_CHECK_NOFRAME, 16, 1, RGB (255, 0, 0));
	m_cListCtrl.SetCheckImageList(&m_ImageCheck);

	#define LAYOUT_NUMBER  (6)
	CHECKMARK_COL_DESCRIBE  aColumns[LAYOUT_NUMBER] =
	{
		{ _T(""), FALSE, 200},
		{ _T(""), FALSE, -1 },
		{ _T(""), FALSE, -1 },
		{ _T(""), FALSE, -1 },
		{ _T(""), TRUE,  -1 },
		{ _T(""), FALSE, 210}
	};

	lstrcpy(aColumns[0].szCaption, VDBA_MfcResourceString(IDS_TC_DATE       ));
	lstrcpy(aColumns[1].szCaption, VDBA_MfcResourceString(IDS_TC_CKPSEQUENCE));
	lstrcpy(aColumns[2].szCaption, VDBA_MfcResourceString(IDS_TC_FIRSTJNL   ));
	lstrcpy(aColumns[3].szCaption, VDBA_MfcResourceString(IDS_TC_LASTJNL    ));
	lstrcpy(aColumns[4].szCaption, VDBA_MfcResourceString(IDS_TC_VALID      ));
	lstrcpy(aColumns[5].szCaption, VDBA_MfcResourceString(IDS_TC_MODE       ));
	InitializeColumns(m_cListCtrl, aColumns, LAYOUT_NUMBER);
}
コード例 #22
0
BOOL CuDlgDomPropView::OnInitDialog() 
{
  CDialog::OnInitDialog();

  m_ImageList.Create(16, 16, TRUE, 1, 1);
  m_ImageList.AddIcon(IDI_TREE_STATIC_VIEWTABLE);
  m_ImageList.AddIcon(IDI_TREE_STATIC_TABLE);
  m_ImageList.AddIcon(IDI_TREE_STATIC_VIEW);
  m_clistCtrl.SetImageList (&m_ImageList, LVSIL_SMALL);

  #define VIEWCOMP_NUMBER  2
  CHECKMARK_COL_DESCRIBE  aViewComps[VIEWCOMP_NUMBER] = {
    { _T(""), FALSE, 125 + 16 },      // + 16 for image
    { _T(""), FALSE, 125 },
  };
  lstrcpy(aViewComps[0].szCaption, VDBA_MfcResourceString(IDS_TC_NAME)); // _T("Name")
  lstrcpy(aViewComps[1].szCaption, VDBA_MfcResourceString(IDS_TC_OWNER));

  InitializeColumns(m_clistCtrl, aViewComps, VIEWCOMP_NUMBER);

  return TRUE;  // return TRUE unless you set the focus to a control
                // EXCEPTION: OCX Property Pages should return FALSE
}
コード例 #23
0
void CuEditableListCtrlDuplicateDbSelectLocation::InitSortComboBox()
{
	int TypeLocation,i,iIndex,err;
	char szObject[MAXOBJECTNAME];
	char szFilter[MAXOBJECTNAME];
	BOOL bOnlyOneLocName;

	CComboBox* pCombo = COMBO_GetComboBox();
	pCombo->ResetContent();
	err = DOMGetFirstObject(GetCurMdiNodeHandle(),
							OT_LOCATION,
							0,
							NULL,
							TRUE,
							NULL,
							(LPUCHAR)szObject,
							NULL,
							NULL);
	while (err == RES_SUCCESS)
	{
		BOOL bOK;
		for (i = 0, TypeLocation = 0,bOnlyOneLocName = TRUE;i <= LOCATIONDUMP;i++,TypeLocation=i)
		{
			if (DOMLocationUsageAccepted(GetCurMdiNodeHandle(),(LPUCHAR)szObject,TypeLocation,&bOK) == RES_SUCCESS && bOK)
			{
				switch (TypeLocation)
				{
					case LOCATIONDATABASE:
					case LOCATIONWORK:
					{
						if ( bOnlyOneLocName )
						{
							iIndex = pCombo->AddString (szObject);
							bOnlyOneLocName = FALSE;
						}
					}
						break;
				}
			}
		}
		err = DOMGetNextObject ((LPUCHAR)szObject,(LPUCHAR)szFilter, NULL);
	}
	if (err != RES_SUCCESS && err != RES_ENDOFDATA)
	{
		//"Error while getting Location list."
		CString csMsg = VDBA_MfcResourceString (IDS_E_DUPLICATEDB_FILL_COMBO_LOCATION);
		MessageWithHistoryButton(m_hWnd,csMsg);
	}

}
コード例 #24
0
LONG CuDlgDomPropTableStatistic::OnGetData (WPARAM wParam, LPARAM lParam)
{
	CuDomPropDataTableStatistic* pData = NULL;
	CaTableStatisticColumn* pColumn = NULL;
	CaTableStatisticColumn* pNewColumn = NULL;
	CaTableStatisticItem* pStatItem = NULL;
	CaTableStatisticItem* pNewStatItem = NULL;
	int i, nCount;
	try
	{
		nCount = m_cListColumn.GetItemCount();
		pData  = new CuDomPropDataTableStatistic();
		pData->m_statisticData = m_statisticData;
		pData->m_nSelectColumn = -1;
		for (i=0; i<nCount; i++)
		{
			pColumn = (CaTableStatisticColumn*)m_cListColumn.GetItemData(i);
			pNewColumn = new CaTableStatisticColumn();
			*pNewColumn= *pColumn;
			pData->m_statisticData.m_listColumn.AddTail(pNewColumn);
			if (m_cListColumn.GetItemState (i, LVIS_SELECTED) & LVIS_SELECTED)
				pData->m_nSelectColumn = i;
		}

		nCount = m_cListStatItem.GetItemCount();
		for (i=0; i<nCount; i++)
		{
			pStatItem = (CaTableStatisticItem*)m_cListStatItem.GetItemData(i);
			if (!pStatItem)
				continue;
			pNewStatItem = new CaTableStatisticItem();
			*pNewStatItem= *pStatItem;
			pData->m_statisticData.m_listItem.AddTail (pNewStatItem);
		}
	}
	catch (CMemoryException* e)
	{
		VDBA_OutOfMemoryMessage();
		e->Delete();
	}
	catch (...)
	{
		//CString strMsg = _T("Cannot allocate data for storing.");
		AfxMessageBox (VDBA_MfcResourceString(IDS_E_ALLOCATE_DATA));
		pData = NULL;
	}
	return (LRESULT)pData;
}
コード例 #25
0
void CuDlgDomPropTableStatistic::OnItemchangedList1(NMHDR* pNMHDR, LRESULT* pResult) 
{
	NM_LISTVIEW* pNMListView = (NM_LISTVIEW*)pNMHDR;
	*pResult = 0;
	if (m_bLoad)
		return;

	CaTableStatisticColumn* pColumn = NULL;
	if (pNMListView->iItem >= 0 && pNMListView->uNewState > 0 && (pNMListView->uNewState&LVIS_SELECTED))
	{
		CWaitCursor doWaitCursor;
		try
		{
			pColumn = (CaTableStatisticColumn*)m_cListColumn.GetItemData(pNMListView->iItem);
			CleanStatisticItem();
			if (!pColumn)
				return;
			if (!pColumn->m_bHasStatistic)
				return;
			//
			// Query the statistic for this column:
			//
			Table_GetStatistics (pColumn, m_statisticData);
			// Extra information:
			m_bUniqueFlag          = m_statisticData.m_bUniqueFlag;
			m_bCompleteFlag        = m_statisticData.m_bCompleteFlag;
			m_strUniqueValues.Format (_T("%ld"), m_statisticData.m_lUniqueValue);
			m_strRepetitionFactors.Format (_T("%ld"), m_statisticData.m_lRepetitionFlag);
			DrawStatistic ();
		}
		catch (CMemoryException* e)
		{
			VDBA_OutOfMemoryMessage();
			e->Delete();
		}
		catch (...)
		{
			//CString strMsg = _T("Internal error: cannot display the statistic of the table.");
			AfxMessageBox (VDBA_MfcResourceString(IDS_E_STAT_TABLE));
		}
	}
	UpdateData (FALSE);
	EnableButtons();

}
コード例 #26
0
LONG CuDlgIpmDetailLocation::OnUpdateData (WPARAM wParam, LPARAM lParam)
{
	int ires = RES_ERR, nNodeHandle = (int)wParam;
	LPIPMUPDATEPARAMS pUps = (LPIPMUPDATEPARAMS)lParam;

	ASSERT (pUps);
	switch (pUps->nIpmHint)
	{
	case 0:
	case FILTER_IPM_EXPRESS_REFRESH:
		break;
	default:
		return 0L;
	}
	try
	{
		ResetDisplay();
		if (pUps->nIpmHint != FILTER_IPM_EXPRESS_REFRESH)
		{
			memset (&m_locStruct, 0, sizeof (m_locStruct));
			m_locStruct = *(LPLOCATIONDATAMIN)pUps->pStruct;
		}

		CuStatisticPieDoc* pDoc   =  (CuStatisticPieDoc*)m_pDlgFrame->GetDoc();
		CuPieInfoData* pPieInfo = pDoc->GetPieInfo();
		if (Pie_Create(pPieInfo, nNodeHandle, (LPLOCATIONDATAMIN)&m_locStruct, TRUE))
		{
			m_pDlgFrame->DrawLegend (&m_cListLegend, TRUE);
		}
		else
		{
			//CString strMsg = _T("Location Space Statistic error");
			BfxMessageBox (VDBA_MfcResourceString(IDS_E_LOCATION_SPACE), MB_ICONEXCLAMATION|MB_OK);
			pPieInfo->Cleanup();
			m_cListLegend.ResetContent();
		}
		pDoc->UpdateAllViews (NULL);
	}
	catch (CMemoryException* e)
	{
		VDBA_OutOfMemoryMessage();
		e->Delete();
	}
	return 0L;
}
コード例 #27
0
void CuDlgDBEventPane02::UpdateControl()
{
    CView*  pView = (CView*)GetParent();
    ASSERT  (pView);
    CDbeventDoc* pDoc = (CDbeventDoc*)pView->GetDocument();
    ASSERT  (pDoc);
    CWnd*   pSplitter = pView->GetParent();
    ASSERT (pSplitter);
    CDbeventFrame* pFrame = (CDbeventFrame*)pSplitter->GetParent();
    ASSERT (pFrame);

    CString strNone;
    if (strNone.LoadString (IDS_DATABASE_NONE) == 0)
        strNone = "<None>";
    if (pDoc->m_strDBName == "" || pDoc->m_strDBName == strNone)
        return;
    
    // Load ...
    int nCount;
    CTypedPtrList<CObList, CuDataRaisedDBevent*>& listRaisedDBEvent = pDoc->m_listRaisedDBEvent;
    nCount = listRaisedDBEvent.GetCount();
    POSITION pos = listRaisedDBEvent.GetHeadPosition();
    while  (pos != NULL)
    {
        CuDataRaisedDBevent* dbe = listRaisedDBEvent.GetNext (pos);
        IncomingDBEvent (pDoc, dbe->m_strNum, dbe->m_strTime, dbe->m_strDBEvent, dbe->m_strDBEOwner, dbe->m_strDBEText);
    }
    if ((pDoc->m_nMaxLine+1) == nCount)
    {
        CTime   t = CTime::GetCurrentTime();
        CString st= t.Format ("%c");
        nCount = m_cListRaisedDBEvent.GetItemCount ();
        int index  = m_cListRaisedDBEvent.InsertItem (nCount, (LPTSTR)"", 0);
        m_cListRaisedDBEvent.SetItemText (index, 1, (LPTSTR)(LPCTSTR)st);
        m_cListRaisedDBEvent.SetItemText (index, 2, VDBA_MfcResourceString(IDS_INTERRUPTED));//"<Interrupted>"
    }     
    SetHeader (pDoc->m_strRaisedSince);
}
コード例 #28
0
LONG CuEditableListCtrlDuplicateDbSelectLocation::OnComboDlgOK (UINT wParam, LONG lParam)
{
	int iItem, iSubItem;
	CString s = COMBO_GetText();
	COMBO_GetEditItem(iItem, iSubItem);
	if (iItem < 0)
	{
		SetFocus();
		return 0L;
	}
	try
	{
		SetItemText (iItem, NEW_LOC,s);
		GetParent()->SendMessage (WM_LAYOUTCOMBODLG_OK, (WPARAM)(LPCTSTR)m_ComboDlgOriginalText, (LPARAM)(LPCTSTR)s);
	}
	catch (...)
	{
		//CString strMsg = _T("Cannot change combo text.");
		AfxMessageBox (VDBA_MfcResourceString(IDS_E_CHANGE_COMBO));
	}

	SetFocus();
	return 0L;
}
コード例 #29
0
LONG CuDlgDomPropStaticProfile::OnUpdateData (WPARAM wParam, LPARAM lParam)
{
  // cast received parameters
  int nNodeHandle = (int)wParam;
  LPIPMUPDATEPARAMS pUps = (LPIPMUPDATEPARAMS)lParam;
  ASSERT (nNodeHandle != -1);
  ASSERT (pUps);

  // ignore selected actions on filters
  switch (pUps->nIpmHint)
  {
    case 0:
      case FILTER_DOM_SYSTEMOBJECTS:    // eligible
      case FILTER_DOM_BASEOWNER:
      //case FILTER_DOM_OTHEROWNER:
      break;

    case FILTER_DOM_BKREFRESH:
      // eligible if UpdateType is compatible with DomGetFirst/Next object type,
      // or is ot_virtnode, which means refresh for all whatever the type is
      if (pUps->pSFilter->UpdateType != OT_VIRTNODE &&
          pUps->pSFilter->UpdateType != OT_PROFILE)
        return 0L;
      break;
    case FILTER_SETTING_CHANGE:
        VDBA_OnGeneralSettingChange(&m_cListCtrl);
        return 0L;
    default:
      return 0L;    // nothing to change on the display
  }

  // Get info on the current item
  LPTREERECORD  lpRecord = (LPTREERECORD)pUps->pStruct;
  ASSERT (lpRecord);
  ResetDisplay();
  //
  // Get list of Profiles
  //
  m_Data.m_uaStaticProfile.RemoveAll();

  int     iret;
  LPUCHAR aparentsTemp[MAXPLEVEL];

  UCHAR   buf[MAXOBJECTNAME];
  UCHAR   bufOwner[MAXOBJECTNAME];
  UCHAR   bufComplim[MAXOBJECTNAME];

  // parent preparation
  aparentsTemp[0] = aparentsTemp[1] = aparentsTemp[2] = NULL;

  memset (&bufComplim, '\0', sizeof(bufComplim));
  memset (&bufOwner, '\0', sizeof(bufOwner));
  iret =  DOMGetFirstObject(nNodeHandle,
                            OT_PROFILE,
                            0,                            // level,
                            aparentsTemp,                 // Temp mandatory!
                            pUps->pSFilter->bWithSystem,  // bwithsystem
                            NULL,                         // lpowner
                            buf,
                            bufOwner,
                            bufComplim);
  if (iret != RES_SUCCESS && iret != RES_ENDOFDATA) {
    // Erroneous case!
    CuNameOnly errItem(VDBA_MfcResourceString (IDS_DATA_UNAVAILABLE), TRUE);   // Special"<Data Unavailable>"
    m_Data.m_uaStaticProfile.Add(errItem);
  }
  else {
    while (iret == RES_SUCCESS) {
      CuNameOnly item((const char*)buf, FALSE);   // Not special, but regular
      m_Data.m_uaStaticProfile.Add(item);

      iret = DOMGetNextObject(buf, bufOwner, bufComplim);
    }
  }
  if (m_Data.m_uaStaticProfile.GetCount() == 0) {
    CuNameOnly noItem(VDBA_MfcResourceString (IDS_E_NO_PROFILE), TRUE);//"<No Profile>"
    m_Data.m_uaStaticProfile.Add(noItem);
  }

  // Refresh display
  RefreshDisplay();

  return 0L;
}
コード例 #30
0
LONG CuDlgDomPropTableColumns::OnUpdateData (WPARAM wParam, LPARAM lParam)
{
  // cast received parameters
  int nNodeHandle = (int)wParam;
  LPIPMUPDATEPARAMS pUps = (LPIPMUPDATEPARAMS)lParam;
  ASSERT (nNodeHandle != -1);
  ASSERT (pUps);

  // ignore selected actions on filters
  switch (pUps->nIpmHint)
  {
    case 0:
    //case FILTER_DOM_SYSTEMOBJECTS:
    //case FILTER_DOM_BASEOWNER:
    //case FILTER_DOM_OTHEROWNER:
      break;

    case FILTER_DOM_BKREFRESH_DETAIL:
      if (m_Data.m_refreshParams.MustRefresh(pUps->pSFilter->bOnLoad, pUps->pSFilter->refreshtime))
        break;    // need to update
      else
        return 0; // no need to update
      break;
    case FILTER_SETTING_CHANGE:
        VDBA_OnGeneralSettingChange(&m_cListColumns);
        return 0L;
    default:
      return 0L;    // nothing to change on the display
  }

  // Get info on the object
  TABLEPARAMS tableparams;
  memset (&tableparams, 0, sizeof (tableparams));

  LPTREERECORD  lpRecord = (LPTREERECORD)pUps->pStruct;
  ASSERT (lpRecord);
  ResetDisplay();
  x_strcpy ((char *)tableparams.DBName,     (const char *)lpRecord->extra);
  x_strcpy ((char *)tableparams.objectname, RemoveDisplayQuotesIfAny((LPCTSTR)StringWithoutOwner(lpRecord->objName)));
  x_strcpy ((char *)tableparams.szSchema,   (const char *)lpRecord->ownerName);
  tableparams.detailSubset = TABLE_SUBSET_COLUMNSONLY;  // minimize query duration

  int dummySesHndl;
  int iResult = GetDetailInfo ((LPUCHAR)GetVirtNodeName(nNodeHandle),
                               OT_TABLE,
                               &tableparams,
                               FALSE,
                               &dummySesHndl);
  if (iResult != RES_SUCCESS) {
    // Table may not exist if propagate too fast
    if (iResult != RES_ENDOFDATA)
      ASSERT (FALSE);

    // Reset m_Data
    CuDomPropDataTableColumns tempData;
    tempData.m_refreshParams = m_Data.m_refreshParams;
    m_Data = tempData;

    // Create error item and that's it!
    /* "<Data Unavailable>" */
    CuTblColumn tblColumn1(VDBA_MfcResourceString (IDS_DATA_UNAVAILABLE));
    m_Data.m_uaColumns.Add(tblColumn1);

    // Refresh display
    RefreshDisplay();

    return 0L;
  }

  // Update refresh info
  m_Data.m_refreshParams.UpdateRefreshParams();
  TCHAR *lpObjComment = NULL;
  int iret = RES_SUCCESS;
  LPOBJECTLIST ls ,lpColTemp,lpObjCol = NULL;
  LPCOMMENTCOLUMN lpCommentCol;
  ls = tableparams.lpColumns;
  while (ls)
  {
    lpColTemp = AddListObjectTail(&lpObjCol, sizeof(COMMENTCOLUMN));
    if (!lpColTemp)
    {
      // Need to free previously allocated objects.
      FreeObjectList(lpObjCol);
      lpObjCol = NULL;
      break;
    }
    LPCOLUMNPARAMS lstbl=(LPCOLUMNPARAMS)ls->lpObject;
    lpCommentCol = (LPCOMMENTCOLUMN)lpColTemp->lpObject;
    lstrcpy((LPTSTR)lpCommentCol->szColumnName,(LPCTSTR)(LPUCHAR)lstbl->szColumn);
    lpCommentCol->lpszComment = NULL;
    ls=(LPOBJECTLIST)ls->lpNext;
  }

  if (lpObjCol)
    iret = VDBAGetCommentInfo ( (LPTSTR)(LPUCHAR)GetVirtNodeName(nNodeHandle),
                                (LPTSTR)tableparams.DBName, (LPTSTR)tableparams.objectname,
                                (LPTSTR)tableparams.szSchema, &lpObjComment, lpObjCol);
  else
    ASSERT (FALSE);

  // update member variables, for display/load/save purpose

  // list of columns
  m_Data.m_uaColumns.RemoveAll();
  ls = tableparams.lpColumns;
  ASSERT (ls);    // No columns is unacceptable
  while (ls) {
    LPCOLUMNPARAMS lpCol = (LPCOLUMNPARAMS)ls->lpObject;
    ASSERT (lpCol);

    // Column name
    CString csName = lpCol->szColumn;

    // Format "column type"
    CString csType = "";
    if (lstrcmpi(lpCol->tchszInternalDataType, lpCol->tchszDataType) != 0)  {
      ASSERT (lpCol->tchszInternalDataType[0]);
      csType = lpCol->tchszInternalDataType;  // UDTs
      if (lstrcmpi(lpCol->tchszInternalDataType,VDBA_MfcResourceString(IDS_OBJECT_KEY)) == 0 ||
          lstrcmpi(lpCol->tchszInternalDataType,VDBA_MfcResourceString(IDS_TABLE_KEY) ) == 0) {
          if (lpCol->bSystemMaintained)
              csType += VDBA_MfcResourceString(IDS_SYSTEM_MAINTAINED);
          else
              csType += VDBA_MfcResourceString(IDS_NO_SYSTEM_MAINTAINED);
      }
    }
    else {
      LPUCHAR lpType;
      lpType = GetColTypeStr(lpCol);
      if (lpType) {
        csType = lpType;
        ESL_FreeMem(lpType);
      }
      else {
        // Unknown type: put type name "as is" - length will not be displayed
        csType = lpCol->tchszDataType;
	  }
    }

    // Format "default specification"
    CString csDefSpec = "";
    if (lpCol->lpszDefSpec)
      csDefSpec = lpCol->lpszDefSpec;

    // Format "Comment"
    CString csTblComment = "";
    LPOBJECTLIST LsObj = lpObjCol;
    LPCOMMENTCOLUMN lpCommentCol;

    while (LsObj)
    {
      lpCommentCol = (LPCOMMENTCOLUMN)LsObj->lpObject;
      if (strcmp((LPTSTR)lpCommentCol->szColumnName,(LPTSTR)lpCol->szColumn) == 0)
      {
        if (iret!=RES_SUCCESS && !lpCommentCol->lpszComment)
          csTblComment.LoadString(IDS_NOT_AVAILABLE);
        else
        {
            if (lpCommentCol->lpszComment)
              csTblComment = lpCommentCol->lpszComment;
        }
      }
      LsObj = (LPOBJECTLIST)LsObj->lpNext;
    }

    // item on the stack
    CuTblColumn tblColumn(csName,             // LPCTSTR name,
                          csType,             // LPCTSTR type, ??? Code complexe
                          lpCol->nKeySequence,// int primKeyRank,
                          lpCol->bNullable,   // BOOL bNullable,
                          lpCol->bDefault,    // BOOL bWithDefault,
                          csDefSpec,          // LPCTSTR defSpec
                          csTblComment );     // LPCTSTR comment on column
    CuMultFlag *pRefCol = m_Data.m_uaColumns.Find(&tblColumn);
    ASSERT (!pRefCol);
    m_Data.m_uaColumns.Add(tblColumn);

    // Loop on next column
    ls = (LPOBJECTLIST)ls->lpNext;
  }

  // liberate detail structure
  FreeAttachedPointers (&tableparams,  OT_TABLE);
  // liberate column comment
  ls = lpObjCol;
  while (ls)
  {
    lpCommentCol = (LPCOMMENTCOLUMN)ls->lpObject;
    if (lpCommentCol->lpszComment)
      ESL_FreeMem (lpCommentCol->lpszComment);
    ls = (LPOBJECTLIST)ls->lpNext;
  }
  FreeObjectList(lpObjCol);
  if (lpObjComment)
    ESL_FreeMem (lpObjComment);
  // Refresh display
  RefreshDisplay();

  return 0L;
}