|
Сервер поддерживается
кафедрой информатики и вычислительной техники ГрГУ
тел. +375-(0)152-445-101
E-mail : kadan@grsu.grodno.by |
Объект Container и набор Containers
Объект Container представляет
конкретный набор объектов в базе
данных, для которых Вы можете
назначить права доступа в
защищенной рабочей группе. Набор
Containers включает
все объекты Container в базе данных.
Взаимосвязь между объектом
Container, набором
Containers и другими
объектами и наборами в рабочем
пространстве Microsoft Jet показана в
таблице:
Объект
или набор |
Содержится
в: |
Содержит: |
Объект
Container |
наборе
Containers |
набор
Documents
набор
Properties |
Набор
Containers |
объекте
Database |
объекты
Container |
DAO предоставляет 3
типа объектов Container, и каждая база данных
содержит, как минимум, эти три
объекта Container:
Объекты
Container |
Описание |
Databases |
Содержит
информацию о сохраненных базах
данных. |
Tables |
Содержит
информацию о сохраненных
таблицах. |
Relationships |
Содержит
информацию о сохраненных
связях. |
Каждый объект
Container может
содержать набор Documents. Последний включает
индивидуальные объекты Document, каждый из которых
представляет документ в базе
данных. Подробнее об объектах
Document см.
следующий раздел ?Объект Document и
набор Documents?.
В дополнение к
объектам Container, предоставляемым DAO,
приложение может определить свои
объекты Container. Например, в Microsoft Access
определены и такие объекты
Container:
Объекты
Container |
Описание |
Forms |
Содержит
информацию о сохраненных
формах. |
Modules |
Содержит
информацию о сохраненных
модулях. |
Reports |
Содержит
информацию о сохраненных
отчетах. |
Scripts |
Содержит
информацию о сохраненных
макросах. |
Объекты
Container позволяют
устанавливать права доступа к
набору объектов для пользователя
или группы. В следующем примере
устанавливаются права доступа к
контейнеру Tables для группы и всех
пользователей, которые к ней
относятся. Для этого функция
сначала заносит в свойство User-Name контейнера Tables имя
группы, а в свойство Permissions ? соответствующие
права.
Function
Set6roupPermissions(strGroupName As String) As Boolean
═════Dim dbs As Database, ctr As Container
═════Const conPath
As String = _
══════════"C:\Program Files\Microsott
Oftice\Ottice\Samples\Northwind, mdb"
═════On Error GoTo
Err_SetGroupPermissions
═════Set dbs = DBEngine(0).OpenDatabase(conPath)
═════? получаем
ссылку на контейнер Databases
═════Set ctr =
dbs.Containers("Databases")
═════? заносим
в свойство UserName имя группы
═════ctr.UserName = strGroupName
═════?
указываем права доступа к
контейнеру Databases для группы
═════ctr. Permissions = dbSecDBOpen
═════? получаем ссылку
на контейнер Tables
═════Set ctr = dbs.Containers("Tables")
═════? заносим
в свойство UserName имя группы
═════ctr.UserName = strGroupName
═════? указываем
права доступа к контейнеру Tables
для группы
═════ctr. Permissions = dbSecRetrieveData or
dbSecInsertData or _
══════════dbSecReplaceData or dbSecDeleteData
═════SetGroupPermissions = True
Exit_SetGroupPermissions:
═════Exit Function
Err_SetGroupPermissions:
═════MsgBox "Error " & Err & ":
" & Err. Description
═════SetGroupPermissions = False
═════Resume Exit_SetGroupPermissions
End Function
Чтобы установить
права доступа к контейнеру Tables для
группы Managers, вызовите функцию
SetGroupPermissions так:
Sub
SetManagerPermissions()
═════If SetGroupPermissions("Managers") = True
Then
══════════MsgBox "Permissions for Managers
group set successfully."
═════Else
══════════MsgBox "Permissions for Managers
group not set."
═════End If
End Sub
Текст пособия подготовлен на основе материалов книги
Microsoft Corporation. Руководство программиста по Visual Basic для Microsoft Office 97 / Пер. с англ. - М.: Издательский отдел "Русская Редакция" ТОО "Channel Trading Ltd.", 1997. - 544 с.: илл.
c Оригинальное издание на английском языке, Microsoft Corporation, 1997
c Русский перевод, Microsoft Corporation, 1997
|