Exemple #1
0
static void FillGrantedUsers (HWND hwndCtl, LPREVOKEPARAMS lprevoke, int objectToFind)
{
   int     hdl, ires, gtype;
   BOOL    bwsystem;
   char    buf [MAXOBJECTNAME];
   char    buffilter [MAXOBJECTNAME];
   char    bufwithparent [MAXOBJECTNAME];
   LPUCHAR parentstrings [MAXPLEVEL];
   LPDOMDATA lpDomData =GetCurLpDomData ();

   ZEROINIT (buf);
   ZEROINIT (buffilter);
   hdl      = GetCurMdiNodeHandle ();
   bwsystem = GetSystemFlag ();
   
   if (!lpDomData)
       return;

   parentstrings [0] = lprevoke->DBName;   // Database name
   if (lprevoke->ObjectType != OT_VIEW)
       parentstrings [1] = StringWithOwner ((LPTSTR)Quote4DisplayIfNeeded(lprevoke->PreselectObject),
                                            lprevoke->PreselectObjectOwner, bufwithparent);
   else
       parentstrings [1] = StringWithOwner ((LPTSTR)Quote4DisplayIfNeeded(lprevoke->PreselectObject),
                                            lprevoke->PreselectObjectOwner, bufwithparent);

   ires = DOMGetFirstObject (hdl, objectToFind, 2, parentstrings, bwsystem, NULL, buf, NULL, NULL);
   while (ires == RES_SUCCESS)
   {
       gtype = DBA_GetObjectType  (buf, lpDomData);
       if (gtype == lprevoke->GranteeType)
       {
           CAListBox_AddString (hwndCtl, buf);
       }
       ires  = DOMGetNextObject (buf, buffilter, NULL);
   }
}
Exemple #2
0
BOOL CxDlgObjectComment::InitializeObjectColumns()
{
	TCHAR tblNameWithOwner[MAXOBJECTNAME];
	int ires, nLevel = 2;
	LPUCHAR aparents [MAXPLEVEL];
	TCHAR   tchszBuf       [MAXOBJECTNAME];
	TCHAR   tchszOwner   [MAXOBJECTNAME];
	TCHAR   tchszBufComplim[MAXOBJECTNAME];
	LPTSTR  lpszOwner = NULL;
	BOOL    bSystem = FALSE;

	if (m_iCurObjType != OT_TABLE && m_iCurObjType != OT_VIEW)
		return FALSE;

	StringWithOwner((LPUCHAR)Quote4DisplayIfNeeded((LPTSTR)(LPCTSTR)m_csObjectName),
	                (LPUCHAR)(LPTSTR)(LPCTSTR) m_csObjectOwner, (LPUCHAR)tblNameWithOwner);

	aparents[0] = (LPUCHAR)(LPCTSTR)m_csDBName;
	aparents[1] = (LPUCHAR)tblNameWithOwner;
	aparents[2] = NULL;
	nLevel = 2;
	tchszBuf[0] = 0;
	tchszOwner[0] = 0;
	tchszBufComplim[0] = 0;
	LPOBJECTLIST lpColTemp;
	LPCOMMENTCOLUMN lpCommentCol;

	ires =  DOMGetFirstObject( m_nNodeHandle,
	                          (m_iCurObjType == OT_TABLE)? OT_COLUMN: OT_VIEWCOLUMN,
	                           nLevel,
	                           aparents,
	                           bSystem,
	                           NULL,
	                          (LPUCHAR)tchszBuf,
	                          (LPUCHAR)tchszOwner,
	                          (LPUCHAR)tchszBufComplim);
	if (ires != RES_SUCCESS && ires != RES_ENDOFDATA)
	{
		CString csMsg;
		csMsg.LoadString(IDS_E_COMMENTS_FAILED);
		MessageWithHistoryButton(m_hWnd,csMsg);
		return FALSE;
	}

	while (ires == RES_SUCCESS)
	{
		lpColTemp = AddListObjectTail(&m_ListColumn, sizeof(COMMENTCOLUMN));
		if (!lpColTemp)
		{
			// Need to free previously allocated objects.
			ErrorMessage ( (UINT)IDS_E_CANNOT_ALLOCATE_MEMORY, RES_ERR);
			FreeObjectList(m_ListColumn);
			m_ListColumn = NULL;
			return FALSE;
		}
		lpCommentCol = (LPCOMMENTCOLUMN)lpColTemp->lpObject;
		lstrcpy((LPTSTR)lpCommentCol->szColumnName,tchszBuf);
		lpCommentCol->lpszComment = NULL;
		tchszBuf[0] = 0;
		tchszOwner[0] = 0;
		tchszBufComplim[0] = 0;
		ires = DOMGetNextObject ((LPUCHAR)tchszBuf, (LPUCHAR)tchszOwner, (LPUCHAR)tchszBufComplim);
	}
	return TRUE;
}