uUtils.pas
Return to Introduction  Previous page  Next page
This file wraps the functions exported from the core DLL of the server. They are basic functions that allow you to manipulate certain information stored in the repository from within your triggers. These functions should be used with care and should always be called in the context of the calling thread:

// User/Group functions  
function GetUserInfo( UID: Cardinal; var Name, FullName, EMail, Location, Extra: String ): Boolean;  
function GetUserCount( GroupID: Cardinal ): Integer;  
function GetUserInfoByIndex( GroupID: Cardinal; Index: Integer; var UID: Cardinal; var Name, FullName, EMail, Location, Extra: String ): Boolean;  
function IsSuperuser( UID: Cardinal ): Boolean;  
function IsAdminUser( UID: Cardinal ): Boolean;  
function GetGroupInfo( GID: Cardinal; var Name, Description, Extra: String ): Boolean;  
function GetGroupCount( GroupID: Cardinal ): Integer;  
function GetGroupInfoByIndex( GroupID: Cardinal; Index: Integer; var GID: Cardinal; var Name, Description, Extra: String ): Boolean;  
 
// Security related functions  
// Access Level Rights  
function GetCanAccessIDs( ObjectID: Cardinal; var IDs: TIDArray ): Boolean;  
function GetCanAccessNames( ObjectID: Cardinal; const Names: TStrings ): Boolean;  
function SetCanAccessIDs( ObjectID: Cardinal; IDs: TIDArray ): Boolean;  
function SetCanAccessNames( ObjectID: Cardinal; Names: TStrings ): Boolean;  
// Modify Level Rights  
function GetCanModifyIDs( ObjectID: Cardinal; var IDs: TIDArray ): Boolean;  
function GetCanModifyNames( ObjectID: Cardinal; const Names: TStrings ): Boolean;  
function SetCanModifyIDs( ObjectID: Cardinal; IDs: TIDArray ): Boolean;  
function SetCanModifyNames( ObjectID: Cardinal; Names: TStrings ): Boolean;  
// CheckInOut Level Rights  
function GetCanCheckInOutIDs( ObjectID: Cardinal; var IDs: TIDArray ): Boolean;  
function GetCanCheckInOutNames( ObjectID: Cardinal; const Names: TStrings ): Boolean;  
function SetCanCheckInOutIDs( ObjectID: Cardinal; IDs: TIDArray ): Boolean;  
function SetCanCheckInOutNames( ObjectID: Cardinal; Names: TStrings ): Boolean;  
// View Level Rights  
function GetCanViewIDs( ObjectID: Cardinal; var IDs: TIDArray ): Boolean;  
function GetCanViewNames( ObjectID: Cardinal; const Names: TStrings ): Boolean;  
function SetCanViewIDs( ObjectID: Cardinal; IDs: TIDArray ): Boolean;  
function SetCanViewNames( ObjectID: Cardinal; Names: TStrings ): Boolean;  
 
// Project, Folder, File functions  
function GetFileInfo( FileID: Cardinal; var Name, LockedBy, Extra: String; var TimeStamp, FileDate: Integer; var Virtual, Frozen, Removed: Boolean ): Boolean;  
procedure EnumerateProjects( EnumProc: TEnumProjects; pData: Pointer );  
procedure EnumerateFolders( RootID: Cardinal; EnumProc: TEnumFolders; pData: Pointer; Recursive: Boolean );  
procedure EnumerateFiles( RootID: Cardinal; EnumProc: TEnumFiles; pData: Pointer; Recursive: Boolean );  
 
// General  
procedure ReleaseUtils;  
 
These functions are documented in the file uUtils.pas.

 


© 1995-2018 MCN Software